XmlEntity.BaseURI プロパティ

定義

現在のノードのベース URI (Uniform Resource Identifier) を取得します。

public:
 virtual property System::String ^ BaseURI { System::String ^ get(); };
public override string BaseURI { get; }
member this.BaseURI : string
Public Overrides ReadOnly Property BaseURI As String

プロパティ値

String

読み込まれたノードの読み込み元の場所。

注釈

ネットワーク XML ドキュメントは、さまざまな World Wide Web Consortium (W3C) 標準包含メカニズムを使用して集計されたデータのチャンクで構成されるため、異なる場所からのノードが含まれます。 これらの BaseURI ノードがどこから来たかがわかります。

このプロパティの値は、ノードの種類によって異なります。 外部 EntityReference ノードの子であるノードは、エンティティ自体の場所を返します。 たとえば、次の XML ドキュメントについて考えてみます。

<!DOCTYPE item [  
<!ENTITY xyz SYSTEM "a/b.xml">  
]>  
<item num='123'>&xyz;</item>  

ここで、外部エンティティ a/b.xml には XML テキスト <test>123</test>が含まれています。

ドキュメントが読み込まれた http://server/mydata.xml場合は、 BaseURI 次の値が返されます。

NodeType 名前 Baseuri
属性 num http://server/mydata.xml
ドキュメント #document http://server/mydata.xml
DocumentType item http://server/mydata.xml
エンティティ xyz http://server/mydata.xml
要素 item http://server/mydata.xml
EntityReference xyz http://server/mydata.xml
要素 テスト http://server/a/b.xml
Text #text http://server/a/b.xml

BaseURI はエンティティ参照境界を検索するため、エンティティが展開された場合、この情報は保持されず、このプロパティはすべてのケースでオブジェクトの場所を XmlDocument 返します。

2 番目の例として、次の XML ドキュメントを指定します。

<!DOCTYPE Mydata SYSTEM "http://localhost/doctype.dtd">  
<baa>&xyz;</baa>  

ここで、ドキュメント型定義 (DTD) ファイルには次のものが含まれます。

<!ENTITY xyz "<E1>My Data</E1>">  
<!ELEMENT baa #PCDATA>  
<!ATTLIST baa attr1 "woof">  

XML ドキュメントが読み込まれた http://localhost/mydata.xml場合は、 BaseURI 各ノードに対して次のものが返されます。

NodeType 名前 Baseuri
ドキュメント #document http://localhost/mydata.xml
DocumentType Mydata http://localhost/doctype.dtd
要素 バア http://localhost/mydata.xml
エンティティ xyz http://localhost/doctype.dtd
EntityReference xyz http://localhost/mydata.xml
属性 横糸 http://localhost/mydata.xml

注意

既定の属性のベース URI は、それらが属する要素のベース URI と同じです。

このプロパティは、ドキュメント オブジェクト モデル (DOM) の Microsoft 拡張機能です。

適用対象