IEntityResolver2.ResolveEntity(String, String, String, String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Permet aux applications de mapper des références à des entités externes dans des sources d’entrée ou d’indiquer à l’analyseur qu’elle doit utiliser la résolution d’URI conventionnelle.
[Android.Runtime.Register("resolveEntity", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xml/sax/InputSource;", "GetResolveEntity_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Org.Xml.Sax.Ext.IEntityResolver2Invoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Org.Xml.Sax.InputSource? ResolveEntity (string? name, string? publicId, string? baseURI, string? systemId);
[<Android.Runtime.Register("resolveEntity", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xml/sax/InputSource;", "GetResolveEntity_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Org.Xml.Sax.Ext.IEntityResolver2Invoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member ResolveEntity : string * string * string * string -> Org.Xml.Sax.InputSource
Paramètres
- name
- String
Identifie l’entité externe en cours de résolution. Soit « [dtd] » pour le sous-ensemble externe, soit un nom commençant par « % » pour indiquer une entité de paramètre, ou bien le nom d’une entité générale. Cela n’est jamais null lorsqu’il est appelé par un analyseur SAX2.
- publicId
- String
Identificateur public de l’entité externe référencée (normalisé comme requis par la spécification XML) ou null si aucun n’a été fourni.
- baseURI
- String
URI en ce qui concerne les systemID relatifs qui sont interprétés. Il s’agit toujours d’un URI absolu, sauf s’il s’agit de null (probablement parce que XMLReader a reçu une InputSource sans un). Cet URI est défini par la spécification XML pour être celle associée à la déclaration « < » à partir de la déclaration appropriée.
- systemId
- String
Identificateur système de l’entité externe référencée ; URI relatif ou absolu. Cela n’est jamais null lorsqu’il est appelé par un analyseur SAX2 ; seules les entités déclarées et tout sous-ensemble externe sont résolues par ces analyseurs.
Retours
Objet InputSource décrivant la nouvelle source d’entrée à utiliser par l’analyseur. Le renvoi de la valeur Null dirige l’analyseur pour résoudre l’ID système par rapport à l’URI de base et ouvrir une connexion à l’URI résultant.
- Attributs
Exceptions
Toute exception SAX, éventuellement encapsuler une autre exception.
Probablement indiquant un échec de création d’un InputStream ou d’un lecteur, ou d’une URL non conforme.
Remarques
Permet aux applications de mapper des références à des entités externes dans des sources d’entrée ou d’indiquer à l’analyseur qu’elle doit utiliser la résolution d’URI conventionnelle. Cette méthode est appelée uniquement pour les entités externes qui ont été correctement déclarées. Cette méthode offre plus de flexibilité que l’interface EntityResolver
, prenant en charge les implémentations de schémas de catalogue plus complexes tels que celui défini par la spécification des catalogues XML OASIS.</p>
Les analyseurs configurés pour utiliser cette méthode de programme de résolution l’appellent pour déterminer la source d’entrée à utiliser pour toute entité externe incluse en raison d’une référence dans le texte XML. Cela exclut l’entité de document et toute entité externe retournée par #getExternalSubset getExternalSubset()
. Lorsqu’un processeur (non validé) n’est pas configuré pour inclure une classe d’entités (paramètre ou général) à l’aide d’indicateurs de fonctionnalité, cette méthode n’est pas appelée pour ces entités.
Notez que le schéma d’affectation de noms d’entité utilisé ici est le même que celui utilisé dans le LexicalHandler
ou dans la org.xml.sax.ContentHandler#skippedEntity ContentHandler.skippedEntity()
méthode.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.