| 譯文 | XPointer xmlns() 模式 | |
|---|---|---|
| ( http://www.opendl.com/openxml/w3/TR/xptr-xmlns/xptr-xmlns-big5.html ) | ||
| 英文 | XPointer xmlns() Scheme | |
| (http://www.w3.org/TR/xptr-xmlns/) | ||
| 注意 |
| |
| 譯者 |
| |
| 時間 | 初次定稿﹕2003 年 8 月 6 日 (NZT) | 最後修改: 2003 年 8 月 13 日 (UTC) |
Copyright © 2003 年 W3C® (MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use, and software licensing rules apply.
XPointer xmlns() 模式計劃與 XPointer 架構〔XPtrFrame〕一起用來正確地解釋指針中命名空間前綴﹐比如﹐出現在模式數據裡合法的命名空間模式名稱及合法的命名空間元素或屬性名稱。
本節描述本文檔在出版時的地位。其它的文檔可能代替本文檔。本文檔系列的最新狀態由 W3C 維護。
本文檔為萬維網協會(W3C)建議(REC)。本文檔已由萬維網協會(W3C)組織成員和其他感興趣的各方審閱﹐並已被組織理事批准為萬維網協會(W3C)建議。這是一個穩定的文檔﹐可以用作參考材料﹐也可以作為其它文檔的標準參考文獻。W3C 在建議制定過程中的作用是吸引對本規範的注意並促進它的廣泛使用。這能增強 Web 的功能性和互操作性。
本文檔是是作為 W3C XML 制定工作(W3C XML Activity)的一部份的 XML 鏈接工作組的工作成果。它計劃與附隨的 XPointer 架構和 XPointer element() 模式規格說明一起﹐陳述最初的 XPointer 需求的核心子集﹐作為關於 XML 媒體類型的整個或基礎部份的片段標識符語法。
歡迎對本說明提建議。請電郵到公共郵件列表 www-xml-linking-comments@w3.org(存檔)。
有關本規格說明及附隨的 XPointer element() 模式 和 XPointer xmlns() 模式實現的資訊可參看實現報告。
與本推薦相關的應行公告的專利的事項和許可義務﹐依照 W3C 政策可在 XPointer 知識產權聲明頁上查到。
現有 W3C 建議和其它技術文檔的列表在 http://www.w3.org/TR。W3C 出版物可能隨時被其它的文檔更新、代替、或廢除。
XPointer xmlns() 模式計劃與 XPointer 架構〔XPtrFrame〕一起用來正確地解釋指針中命名空間前綴﹐比如﹐出現在模式數據裡合法的命名空間模式名稱及合法的命名空間元素或屬性名稱。
〔定義﹕本規格說明中的關鍵字必須(must)、不能(must not)、必需的(required)、將(shall)、將不(shall not)、應該(should)、不應該(should not)、建議(recommended)、可能(may)、和可選的(optional)依照〔RFC 2119〕所描述的進行解釋。〕
本規格說明中使用的術語指針元件、模式、XPointer 處理器、錯誤和命名空間與上下文的綁定與 XPointer 架構規格說明中所定義的一樣。
用于 xmlns() 模式 的正式文法是在 XML 建議〔XML〕中所描述的、簡單的擴展貝克諾爾格式 (EBNF) 記號。
本規格說明標準化依賴于 XPointer 架構〔XPtrFrame〕規格說明。
宣稱支持 xmlns() 模式的、遵從 XPointer 的處理器必須遵照在本規格說明中所定義的行為並可能遵照其它的 XPointer 模式規格說明。
本節描述 xmlns() 模式的語法和語義﹐以及相對本模式來說的 XPointer 處理器的行為。
本模式的名稱為“xmlns”。本模式的語法如下﹔
如果帶有 xmlns() 模式的指針元件中的模式數據不遵從在本節中定義的指針元件語法﹐則沒有提供條目給命名空間與上下文的綁定。
xmlns() 模式語法| [1] | XmlnsSchemeData | ::= |
NCName
S? '=' S? EscapedNamespaceName
|
| [2] | EscapedNamespaceName | ::= |
EscapedData* |
符號 S 在〔XML〕中定義﹐而 EscapedData 在 XPointer 架構〔XPtrFrame〕中定義。
帶有 xmlns() 模式的指針元件聲明一個將和 XML 命名空間名稱(沒有轉義任何的音調符號的 EscapedNamespaceName)聯合的命名空間前綴(NCName)。每個使用模式的指針元件都提供一個新的條目給命名空間與上下文的綁定。如果指針元件為命名空間前綴定義了綁定﹐而命名空間與上下文的綁定中已經有了該條目﹐則新的條目會覆蓋舊的條目。
例如﹐下面的指針元件將 abc 前綴綁定到 http://example.com/ns/abc 命名空間名稱﹕
xmlns(abc=http://example.com/ns/abc) |
帶有 xmlns() 模式的指針元件從不標識子資源﹐並且因此 XPointer 處理器求值時總是繼續下一個指針元件。然而﹐xmlns 指針元件對它右邊指針元件的求值有潛在的影響。
本規格說明所基於的 XPointer 架構規定在第一個指針元件的求值之前的初始命名空間與上下文的綁定由單個條目組成﹕xml 前綴綁定于 URI http:/www.w3.org/XML/1998/namespace。遵循由該架構指定的規則﹐任何使用 xmlns() 模式的指針元件嘗試重新定義 xml 前綴都不會造成命名空間與上下文的綁定變化。任何定義 xmlns 前綴的嘗試都不會造成命名空間與上下文的綁定變化。任何將前綴綁定于命名空間名稱 http://www.w3.org/2000/xmlns/ 的嘗試都不會造成命名空間與上下文的綁定變化。
用于指針元件的前綴不需要與在指針元件所定址的 XML 資源中實際使用的前綴(或所缺少的前綴)相匹配。例如﹐假設有以下目標 XML 資源﹕
<customer xmlns="http://example.org/customer"> <name xmlns="http://example.org/personal-info">John Doe</name> </customer> |
如果命名空間與上下文的綁定沒有包含前綴綁定到命名空間名稱 http://example.org/customer 的條目﹐引用元素 customer 的指針元件的求值將不表識任何的子資源。以下兩個指針元件允許 xpointer()〔XPointer〕元件引用 customer 元素(如﹕c:customer)和名稱元素﹕(如﹕p:name)﹕
xmlns(c=http://example.org/customer) xmlns(p=http://example.org/personal-info) xpointer(/c:customer/p:name) |