Jens Oliver Meiert

XPointer-xmlns()-Schema (W3C)

Originalversion:
https://www.w3.org/­TR/xptr-xmlns/
Übersetzer:
Jens Oliver Meiert, meiert.com
Datum der Übersetzung:
17. Juli 2004 (↻ 7. Februar 2007)

Bei diesem Dokument handelt es sich um die deutsche Übersetzung eines W3C-Textes (nebenbei: die 500. insgesamt, laut Ivan Herman). Dieser Text ist urheberrechtlich geschützt; bitte beachten Sie die Hinweise des Originaldokuments sowie die Anmerkungen der W3C-Dokumentlizenz. Die Übersetzung hat keine durch das W3C legitimierte, normative Wirkung. Das einzige maßgebliche Dokument ist das englische Original.

Bitte senden Sie Fehler und Korrekturen zur deutschen Fassung an den Übersetzer. Kommentare des Übersetzers, die als solche gekennzeichnet sind, unterliegen dem Urheberrecht des Übersetzers. Sie sind kein Bestandteil des Ursprungsdokuments.

W3C.

XPointer-xmlns()-Schema

W3C-Empfehlung vom 25. März 2003

Diese Version:
https://www.w3.org/TR/2003/REC-xptr-xmlns-20030325/
Aktuelle Version:
https://www.w3.org/TR/xptr-xmlns/
Vorherige Version:
https://www.w3.org/TR/2002/PR-xptr-xmlns-20021113/
Herausgeber:
Steven J. DeRose <[email protected]>
Ron Daniel Jr. <[email protected]>
Eve Maler, Sun Microsystems <[email protected]>
Jonathan Marsh, Microsoft <[email protected]>

Bitte beachten Sie auch die Errata dieses Dokuments, die normative Berichtigungen beinhalten können.

Dieses Dokument ist auch in den folgenden non-normativen Formaten verfügbar: XML.

Die englische Version dieser Spezifikation ist die einzige normative Version; non-normative Übersetzungen sind möglicherweise ebenfalls verfügbar.


Kurzfassung

Das XPointer-xmlns()-Schema sollte zusammen mit dem XPointer-Framework [XPtrFrame] gebraucht werden, um die korrekte Interpretation von Namensraumpräfixes in Zeigern, wie zum Beispiel namensraumqualifizierten Schemanamen, Element- oder Attributsnamen, die in Schemadaten erscheinen, zu ermöglichen.

Status dieses Dokuments

Dieser Abschnitt beschreibt den Status dieses Dokuments zur Zeit seiner Veröffentlichung. Andere Dokumente können an seine Stelle treten. Der letzte Stand dieser Reihe von Dokumenten wird vom W3C betreut.

Dieses Dokument ist eine Empfehlung des W3C. Es wurde von Mitgliedern des W3C und anderen interessierten Parteien geprüft und vom Direktor als W3C-Empfehlung bestätigt. Es ist ein stabiles Dokument und kann als Referenzmaterial verwendet oder als normative Referenz von einem anderen Dokument zitiert werden. Die Rolle des W3C bei der Erstellung dieser Empfehlung ist, die Spezifikation bekannt zu machen und ihre breite Anwendung zu fördern. Dies erhöht die Funktionsfähigkeit und Interoperabilität des Internets.

Dieses Dokument wurde von der XML-Linking-Arbeitsgruppe des W3C im Zusammenhang mit den XML-Aktivitäten erstellt. Es ist beabsichtigt, dass es sich mit einer Untermenge der ursprünglichen XPointer-Anforderungen befasst und als Teil der Fragment-Identifikator-Syntax für XML-Medientypen fungiert; es geht mit dem XPointer-Framework sowie dem XPointer-element()-Schema einher.

Kommentare zu dieser Spezifikation werden erbeten. Bitte senden Sie diese an die öffentliche Mailingliste [email protected] (Archiv).

Informationen über für diese Spezifikation relevante Implementierungen und die damit einhergehenden XPointer-element()- und XPointer-xmlns()-Schemata können im Implementierungsbericht gefunden werden.

Es gibt mit dieser Empfehlung verbundene Patente und Lizenzverpflichtungen, die auf der Seite XPointer-IPR-Statement eingesehen werden können und die in Übereinstimmung mit den W3C-Grundsätzen stehen.

Eine Liste aktueller W3C-Empfehlungen und anderer technischer Dokumente befindet sich unter https://www.w3.org/TR/. W3C-Veröffentlichungen können zu jeder Zeit aktualisiert, ersetzt oder für veraltet erklärt werden.


Inhaltsverzeichnis


1. Einführung

Das XPointer-xmlns()-Schema sollte zusammen mit dem XPointer-Framework [XPtrFrame] gebraucht werden, um die korrekte Interpretation von Namensraumpräfixes in Zeigern, wie zum Beispiel namensraumqualifizierten Schemanamen, Element- oder Attributsnamen, die in Schemadaten erscheinen, zu ermöglichen.

Definition: In dieser Spezifikation sind die Schlüsselwörter muss, darf nicht, notwendig, soll, soll nicht, sollte, sollte nicht, empfohlen, darf und optional zu verstehen wie in [RFC 2119] beschrieben.

Die Begriffe Zeigerteil, XPointer-Prozessor und Namensraumbindungskontext werden in dieser Spezifikation wie in der XPointer-Framework-Spezifikation definiert verwendet.

Die formale Grammatik für das xmlns()-Schema wird über den Gebrauch der erweiterten Backus-Naur-Form (EBNF) vorgegeben, wie in der XML-Spezifikation [XML] beschrieben.

2. Konformität

Diese Spezifikation hängt aus normativer Sicht vom XPointer-Framework [XPtrFrame] ab.

Konforme XPointer-Prozessoren, die vorgeben, das xmlns()-Schema zu unterstützen, müssen dem in dieser Spezifikation definierten Verhalten entsprechen; des weiteren dürfen sie konform zu zusätzlichen XPointer-Schema-Spezifikationen sein.

3. Sprache und Prozessierung

Dieser Abschnitt beschreibt die Syntax und Semantik des xmlns()-Schemas und das Verhalten von XPointer-Prozessoren in Bezug auf dieses Schema.

Der Schemaname lautet »xmlns«. Die Syntax der Schemadaten lautet wie folgt: Wenn Schemadaten in einem Zeigerteil mit xmlns()-Schema nicht konform zu der in diesem Abschnitt definierten Syntax sind, liefert der entsprechende Zeigerteil keinen Eintrag für den Namensraumbindungskontext.

xmlns()-Schema-Syntax

[1]    XmlnsSchemeData    ::=    NCName S? '=' S? EscapedNamespaceName
[2]    EscapedNamespaceName    ::=    EscapedData*

S ist wie in der XML-Spezifikation [XML], NCName wie in der XML-Namensraum-Spezifikation [XML-Names] und EscapedData wie in der XPointer-Framework-Spezifikation [XPtrFrame] anzusehen und dort entsprechend definiert.

Ein Zeigerteil bzw. -abschnitt mit xmlns()-Schema deklariert die Verküpfung eines Namensraumpräfix (NCName) mit dem Namen eines XML-Namensraums (EscapedNamespaceName, »circumflex-escaping undone«). Jeder Zeigerteil, der das xmlns()-Schema verwendet, setzt einen neuen Eintrag im Namensraumbindungskontext. Wenn ein Zeigerteil eine Bindung zu einem Namensraumpräfix definiert, das schon einen Eintrag im Namensraumbindungskontext hat, wird der alte Eintrag durch den neuen überschrieben.

Beispiel: Der folgende Zeigerteil verbindet das abc-Präfix mit dem https://example.com/ns/abc-Namensraum:

xmlns(abc=https://example.com/ns/abc)

Ein Zeigerteil, der das xmlns()-Schema verwendet, identifiziert nie Unterressourcen, und dadurch wird die Evaluierung des XPointer-Prozessors immer mit dem nächsten Zeigerabschnitt fortgeführt. Trotzdem kann die Evaluierung des xmlns-Zeigerteils möglicherweise Einfluss auf andere Zeigerteile haben.

Das XPointer-Framework, auf dem diese Spezifikation basiert, bestimmt, dass der initiale Namensraumbindungskontext vor der Evaluierung des ersten Zeigerteils aus nur einem einzigen Eintrag besteht, und zwar dem xml-Präfix, gebunden an den URI http:/www.w3.org/XML/1998/namespace. Gemäß den durch das Framework spezifizierten Regeln wird kein Versuch eines Zeigerteils (der xmlns() verwendet), das xml-Präfix neu zu definieren, eine Änderung im Namensraumbindungskontext zur Folge haben. Des weiteren wird auch weder der Versuch, ein Präfix mit den Namensraum http://www.w3.org/XML/1998/namespace oder http://www.w3.org/2000/xmlns/ zu verknüpfen, noch, das xmlns-Präfix zu definieren, in einer Änderung dieses Kontextes resultieren.

Ein Präfix, das in Zeigerteilen gebraucht wird, muss nicht mit dem Präfix übereinstimmen, welches tatsächlich in der XML-Ressource, die der Zeigerteil adressiert, verwendet wird. Setzt man zum Beispiel die folgende XML-Zielressource voraus:

<customer xmlns="http://example.org/customer">
  <name xmlns="http://example.org/personal-info">John Doe</name>
</customer>

Die Evaluierung eines Zeigerteils, der sich auf ein Element »customer« bezieht, wird keine Unterressourcen identifizieren, wenn der Namensraumbindungskontext keinen Eintrag beinhaltet, der ein Präfix an den Namensraum http://example.org/customer bindet. Die folgenden zwei Zeigerteile erlauben es dem xpointer() [XPointer] zur rechten, sich auf das customer- (als c:customer) und das name-Element (als p:name) zu beziehen:

xmlns(c=http://example.org/customer) xmlns(p=http://example.org/personal-info)
xpointer(/c:customer/p:name)

A. Normative Referenzen

RFC 2119
Scott Bradner, RFC 2119: Key Words for Use in RFCs to Indicate Requirement Levels. IETF, 1997.
XML
Tim Bray, Jean Paoli, C.M. Sperberg-McQueen und Eve Maler, Herausgeber. Extensible Markup Language (XML) 1.0 (Second Edition). W3C, 2000.
XPtrFrame
Paul Grosso, Eve Maler, Jonathan Marsh und Norman Walsh, Herausgeber. XPointer Framework. W3C, 2002.
XML-Names
Tim Bray, Dave Hollander und Andrew Layman, Herausgeber. Namespaces in XML. W3C, 1999.

B. Informelle Referenzen

XPointer
Steve DeRose, Eve Maler und Ron Daniels, Herausgeber. XPointer xpointer() Scheme. W3C, 2002. In Arbeit.