XmlNode.BaseURI Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el identificador URI base del nodo actual.
public:
virtual property System::String ^ BaseURI { System::String ^ get(); };
public virtual string BaseURI { get; }
member this.BaseURI : string
Public Overridable ReadOnly Property BaseURI As String
Valor de propiedad
Ubicación desde la que se cargó el nodo o String.Empty si el nodo no tiene un identificador URI base.
Comentarios
Un documento XML en red se compone de fragmentos de datos agregados mediante diversos mecanismos de inclusión estándar W3C y, por lo tanto, contiene nodos que proceden de diferentes lugares.
BaseURI
indica de dónde proceden estos nodos.
El valor de esta propiedad varía en función del tipo de nodo. Por ejemplo, los nodos de documento devuelven la ubicación del XmlDocument objeto . Los nodos que son nodos secundarios de nodos entityReference externos devuelven la ubicación de la propia entidad. Por ejemplo, considere el siguiente documento XML:
<!DOCTYPE item [
<!ENTITY xyz SYSTEM "a/b.xml">
]>
<item num='123'>&xyz;</item>
donde la entidad a/b.xml
externa contiene el texto XML: <test>123</test>
.
Si el documento se carga desde http://server/mydata.xml
, BaseURI
devuelve lo siguiente:
NodeType | Nombre | Baseuri |
---|---|---|
Atributo | num | http://server/mydata.xml |
Documento | #document | http://server/mydata.xml |
DocumentType | item | http://server/mydata.xml |
Entidad | xyz | http://server/mydata.xml |
Elemento | item | http://server/mydata.xml |
EntityReference | xyz | http://server/mydata.xml |
Elemento | test | http://server/a/b.xml |
Texto | #text | http://server/a/b.xml |
BaseURI
busca límites de referencia de entidad, por lo que si las entidades se expanden esta información no se conservan y esta propiedad devuelve la ubicación del XmlDocument
objeto en todos los casos.
Como segundo ejemplo, dado el siguiente documento XML:
<!DOCTYPE Mydata SYSTEM "http://localhost/doctype.dtd">
<baa>&xyz;</baa>
donde el archivo DTD contiene lo siguiente:
<!ENTITY xyz <E1>My Data</E1>
<!ELEMENT baa #PCDATA>
<!ATTLIST baa attr1 "woof">
Si el documento XML se carga desde http://localhost/mydata.xml
, BaseURI
devuelve lo siguiente para cada uno de los nodos:
NodeType | Nombre | Baseuri |
---|---|---|
Documento | #document | http://localhost/mydata.xml |
DocumentType | Mydata | http://localhost/mydata.xml Las XmlDocumentType.SystemId propiedades o XmlDocumentType.PublicId se pueden usar para identificar dónde se cargó el archivo DTD. |
Elemento | Baa | http://localhost/mydata.xml |
Entidad | xyz | http://localhost/doctype.dtd |
EntityReference | xyz | http://localhost/mydata.xml |
Atributo | Trama | http://localhost/mydata.xml |
Nota
El URI base de un atributo predeterminado es el mismo que el URI base del elemento al que pertenecen.
Esta propiedad es una extensión de Microsoft para Document Object Model (DOM).