XmlEntity.BaseURI 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得目前節點的基本統一資源識別碼(URI)。
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
屬性值
節點載入的位置。
備註
網路化的 XML 文件由各種萬維網聯盟(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 則回傳以下內容:
| 節點類型 | Name | BaseURI |
|---|---|---|
| Attribute | 數字 | http://server/mydata.xml |
| 文件 | #document | http://server/mydata.xml |
| 文件類型 | 項目 | http://server/mydata.xml |
| 實體 | xyz | http://server/mydata.xml |
| 元素 | 項目 | http://server/mydata.xml |
| EntityReference | xyz | http://server/mydata.xml |
| 元素 | 測試 | http://server/a/b.xml |
| 文字 | #text | http://server/a/b.xml |
BaseURI 尋找實體參考邊界,因此若實體展開,此資訊不會被保留,且此屬性在所有情況下都會回傳物件的位置 XmlDocument 。
第二個例子,給定以下 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.xmlBaseURI 載入,則會對每個節點回傳以下內容:
| 節點類型 | Name | BaseURI |
|---|---|---|
| 文件 | #document | http://localhost/mydata.xml |
| 文件類型 | 我的資料 | http://localhost/doctype.dtd |
| 元素 | 咩 | http://localhost/mydata.xml |
| 實體 | xyz | http://localhost/doctype.dtd |
| EntityReference | xyz | http://localhost/mydata.xml |
| Attribute | 汪 | http://localhost/mydata.xml |
Note
預設屬性的基礎 URI 與其所屬元素的基礎 URI 相同。
此屬性是 Microsoft 對文件物件模型(DOM)的擴充。