edition W3C.de

XML Base

Deutsche Übersetzung

30. Juni 2001

Diese Version:
http://www.schumacher-netz.de/TR/2001/REC-xmlbase-20010627-de.html
Übersetzer:
Stefan Schumacher, schumacher-netz.de <sts@schumacher-netz.de>

Bei diesem Dokument handelt es sich um eine Übersetzung eines W3C-Textes. Dieser Text ist urheberrechtlich geschützt; bitte beachten Sie die nachfolgenden Hinweise des Originaldokuments. Die Rechte an der Übersetzung liegen bei den Übersetzern. Die Übersetzung hat keine durch das W3C legitimierte, normative Wirkung. Das einzige maßgebliche Dokument ist das englische Original.

Bitte senden Sie Berichte über Fehler und Korrekturen zur deutschen Fassung an die Übersetzer.

Kommentare der Übersetzer, die als solche gekennzeichnet sind, unterliegen dem Urheberrecht der Übersetzer. Sie sind nicht Bestandteil des Ursprungsdokuments.


W3C

XML Base

W3C-Empfehlung 27. Juni 2001

Diese Version:
http://www.w3.org/TR/2001/REC-xmlbase-20010627/ (verfügbar in HTML, XML)
Aktuelle Version:
http://www.w3.org/TR/xmlbase/
Vorherige Version:
http://www.w3.org/TR/2000/PR-xmlbase-20001220/
Editor:
Jonathan Marsh, Microsoft <jmarsh@microsoft.com>

Zusammenfassung

Dieses Dokument schlägt ein an das HTML-Element BASE angelehntes Verfahren vor, um Base-URIs für Teile eines XML-Dokuments zu definieren.

Status dieses Dokuments

Dieses Dokument wurde von Mitgliedern des W3C und anderen interessierten Gruppen überprüft und vom Direktor als eine W3C-Empfehlung anerkannt. Es ist ein stabiles Dokument und kann als Referenzmaterial verwendet oder als normative Referenz von einem anderen Dokument zitiert werden. Die Aufgabe des W3C bei der Erstellung dieser Empfehlung ist es, die Aufmerksamkeit auf diese Spezifikation zu lenken und deren weitläufige Verbreitung zu fördern. Dies erhöht die Funktionalität und die Interoperabilität des Webs.

Dieses Dokument wurde von der W3C XML Linking Working Group als Teil der XML Activity in der W3C Architecture Domain erstellt. Für Hintergrundinformationen zu dieser Arbeit lesen Sie bitte das XML Activity Statement.

Bitte senden Sie Berichte über mögliche Fehler in diesem Dokument an die öffentliche Mailing-Liste www-xml-linking-comments@w3.org (Archiv unter http://lists.w3.org/Archives/Public/www-xml-linking-comments/). Jeder bestätigte Fehler wird in einer Fehlerliste dokumentiert, die abgerufen werden kann unter http://www.w3.org/2001/06/xmlbase-errata.

Die englische Version dieser Spezifikation ist die einzige normative Version. Übersetzungen dieses Dokuments sind abzurufen unter http://www.w3.org/2001/06/xmlbase-translations.

Eine Liste der aktuellen W3C-Empfehlungen und anderer Dokumente kann unter http://www.w3.org/TR/ abgerufen werden.

Inhaltsverzeichnis

1 Einleitung
2 Terminologie
3 xml:base-Attribut
    3.1 Codieren und Ersetzen in URI-Verweisen
4 Auflösen relativer URIs
    4.1 Beziehung zu RFC 2396
    4.2 Feinheit von Base-URI-Information
    4.3 Vervollständigen von URIs mit Hilfe von Base-URIs
5 Konformität

Anhänge

A Quellenangaben
B Quellenangaben (nicht normativ)
C Berührungspunkte mit anderen Standards (nicht normativ)


1 Einleitung

Die XML Linking Language [XLink] definiert Konstrukte, die der Extensible Markup Language (XML) 1.0 [XML] unterliegen, um Verweise zwischen Quellen zu beschreiben. Eine der ausgesprochenen Anforderungen von XLink ist es, HTML-Verweiskonstrukte [HTML 4.01] generisch zu unterstützen. Das HTML-Element BASE ist ein solches Konstrukt, das die XLink Working Group in Betracht gezogen hat. BASE erlaubt Autoren ausdrücklich, einen Base-URI für ein Dokument anzugeben, um relative URIs zu externen Grafiken, Applets, Formular verarbeitenden Programmen, Style Sheets usw. aufzulösen.

Dieses Dokument beschreibt einen Mechanismus, um die Vorteile eines Base-URIs für XLink zu verwenden, aber als eine modulare Spezifikation, so dass andere XML-Anwendungen, die von der zusätzlichen Kontrolle über relative URIs profitieren können, aber nicht auf XLink aufbauen, ebenso Gebrauch davon machen können. Die Syntax besteht aus einem einzigen XML-Attribut namens xml:base.

Der Aufbau von XML Base beruht auf dem normativen Bezug zu neuen Spezifikationen, zum Beispiel XLink und XML Infoset. Anwendungen und Spezifikationen, die auf diesen neuen Technologien aufbauen, werden XML Base von Haus aus unterstützen. Das Verhalten von xml:base-Attributen in Anwendungen, die keinen direkten oder indirekten Bezug zu XML Base haben, ist nicht definiert.

2 Terminologie

[Definition: Die Schlüsselworte muss, darf nicht, erforderlich, kann, sollte, empfohlen und optional in dieser Spezifikation sind zu interpretieren, wie in [IETF RFC 2119] beschrieben.]

Die Begriffe Base-URI und relativer URI werden in dieser Spezifikation verwendet, wie in [IETF RFC 2396] definiert.

3 xml:base-Attribut

Das Attribut xml:base kann in XML-Dokumente eingefügt werden, um einen Base-URI anzugeben, der sich vom Base-URI des Dokuments oder des externen Entities unterscheidet. Der Wert dieses Attributs wird als URI-Verweis interpretiert, wie in RFC 2396 [IETF RFC 2396] definiert, nachdem er laut Abschnitt 3.1 verarbeitet wurde.

In einem XML-Prozessor, der Namensräume berücksichtigt, ist das xml-Präfix an den Namensraumnamen http://www.w3.org/XML/1998/namespace gebunden wie in "Namensräume in XML" [XML Names] beschrieben ist. Beachten Sie, dass xml:base aber noch von Prozessoren verarbeitet werden kann, die Namensräume nicht berücksichtigen.

Es folgt ein Beispiel mit xml:base in einem einfachen Dokument, das XLinks enthält. XLink bezieht sich normativ auf XML Base zur Interpretation relativer URI-Verweise in xlink:href-Attributen.

<?xml version="1.0"?>
<doc xml:base="http://example.org/today/"
     xmlns:xlink="http://www.w3.org/1999/xlink">
  <head>
    <title>Virtual Library</title>
  </head>
  <body>
    <paragraph>See <link xlink:type="simple" xlink:href="new.xml">what's
      new</link>!</paragraph>
    <paragraph>Check out the hot picks of the day!</paragraph>
    <olist xml:base="/hotpicks/">
      <item>
        <link xlink:type="simple" xlink:href="pick1.xml">Hot Pick #1</link>
      </item>
      <item>
        <link xlink:type="simple" xlink:href="pick2.xml">Hot Pick #2</link>
      </item>
      <item>
        <link xlink:type="simple" xlink:href="pick3.xml">Hot Pick #3</link>
      </item>
    </olist>
  </body>
</doc>

Die URIs in diesem Beispiel werden wie folgt zu vollständigen URIs aufgelöst:

3.1 Codieren und Ersetzen in URI-Verweisen

Die erlaubten Zeichen in xml:base-Attributen sind die gleichen wie für XML, [Unicode]. Jedoch sind einige Unicode-Zeichen nicht für URI-Verweise zugelassen, deshalb müssen Prozessoren diese Zeichen codieren und ersetzen, um einen gültigen URI-Verweis vom Attributwert zu erhalten.

Diese nicht zugelassenen Zeichen beinhalten alle Nicht-ASCII-Zeichen und die in Abschnitt 2.4 von [IETF RFC 2396] ausgeschlossenen Zeichen mit Ausnahme des Zahlenzeichens (#) und des Prozentzeichens (%) und der eckigen Klammern, die laut [IETF RFC 2732] wieder erlaubt sind. Nicht zugelassene Zeichen müssen wie folgt ersetzt werden:

  1. Jedes nicht erlaubte Zeichen wird in UTF-8 [IETF RFC 2279] konvertiert als ein oder mehrere Bytes.

  2. Alle Bytes, die einem nicht zugelassenen Zeichen zuzuordnen sind, werden mit dem URI-Ersatzmechanismus ersetzt (das bedeutet, sie werden in %HH konvertiert, wobei HH der hexadezimale Wert des Byte-Werts ist).

  3. Das originale Zeichen wird von der erhaltenen Zeichenkette ersetzt.

4 Auflösen relativer URIs

4.1 Beziehung zu RFC 2396

RFC 2396 [IETF RFC 2396] sieht vor, Base-URI-Informationen in ein Dokument einzubetten. Die Regeln für die Ermittlung des Base-URI können wie folgt zusammengefasst werden (höchste Priorität zuerst):

  1. Der Base-URI ist im Inhalt des Dokuments eingebettet.

  2. Der Base-URI ist der des einschließenden Entity (z.B. message, document, oder none).

  3. Der Base-URI ist der URI, mit dem das Entity empfangen wurde.

  4. Der Base-URI wird durch den Kontext der Anwendung definiert.

Anmerkung:

Der Begriff "Entity" in den Punkten #2 und #3 verwendet die Bedeutung laut RFC 2396. In allen anderen Bereichen dieses Dokuments wird der Begriff "Entity" in seiner XML-Bedeutung verwendet.

Dieses Dokument gibt die Details zu Punkt #1 an, für die Einbindung von Base-URI-Informationen im speziellen Fall von XML-Dokumenten.

4.2 Feinheit von Base-URI-Information

Relative URIs in einem XML-Dokument werden immer nach einem Element, einem Dokument-Entity oder einem externen Entity aufgelöst. Es gibt keinen Mechanismus für eine feinere Auswahl, wie z.B. nach Attribut, nach Zeichen oder nach Entity Base Informationen. Weder von internen Entities, ob in einem internen Subset oder einer externen DTD deklariert, noch von freistehendem Text (Text, der nicht von einem Element umschlossen wird) in einem externen Entity wird erwartet, einen Base-URI zu setzen, der von dem Base-URI im Bereich des Entity-Verweises abweicht.

Der Base-URI eines Dokument-Entities oder eines externen Entities wird von den Regeln in RFC 2396 bestimmt. Das bedeutet, dass der Base-URI jener URI ist, mit dessen Hilfe das Dokument-Entity oder das externe Entity empfangen wurde.

Der Base-URI eines Elements ist:

  1. der Base-URI, der durch das xml:base-Attribut des Elements bestimmt wird, sofern eines existiert, sonst

  2. der Base-URI des Elternelements innerhalb des Dokument-Entities oder des externen Entities, sofern eines existiert, sonst

  3. der Base-URI des Dokument-Entity oder des externen Entities, das dieses Element enthält.

4.3 Vervollständigen von URIs mit Hilfe von Base-URIs

Der Base-URI, der zu einem gegebenen relativen URI in einem XML-Dokument gehört, wird wie folgt bestimmt:

  • Der Base-URI für einen URI-Verweis, der in einem Textinhalt erscheint, ist der Base-URI des Elements, das den Text enthält.

  • Der Base-URI für einen URI-Verweis, der in einem xml:base-Attribut erscheint, ist der Base-URI des Elternelements jenes Elements, welches das xml:base-Attribut enthält, sofern eines innerhalb des Dokument-Entities oder des externen Entities existiert, ansonsten der Base-URI des Dokument-Entities oder des externen Entities, welches das Element enthält.

  • Der Base-URI für einen URI-Verweis, der in irgendeinem anderen Attributwert erscheint, eingeschlossen voreingestellte Attributwerte, ist der Base-URI des Elements, welches das Attribut enthält.

  • Der Base-URI für einen URI-Verweis, der im Inhalt einer Verarbeitungsanweisung steht, ist der Base-URI des Elternelements der Verarbeitungsanweisung, sofern eines innerhalb des Dokument-Entities oder des externen Entities existiert, ansonsten ist es der Base-URI des Dokument-Entities oder des externen Entities, das die Verarbeitungsanweisung enthält.

Anmerkung:

Die Gegenwart eines xml:base-Attributs kann in dem Fall zu unerwarteten Ergebnissen führen, in dem der Attributwert nicht direkt im XML-Dokument-Entity angegeben wird, sondern über einen voreingestellten Wert, der in einem externen Entity deklariert ist. Solche Deklarationen können eventuell nicht von einer Software gelesen werden, die auf einem nicht validierenden XML-Prozessor aufbaut. Viele XML-Anwendungen versäumen es, einen validierenden Prozessor zu fordern. Um eine korrekte Verarbeitung durch solche Prozessoren sicherzustellen, sollten xml:base-Werte entweder direkt oder über voreingestellte Attribute innerhalb des internen Subsets der DTD angegeben werden.

5 Konformität

Eine Anwedung ist konform zu XML Base, wenn sie Base-URIs in Übereinstimmung mit den Regeln bestimmt, die in dieser Spezifikation vorgeschrieben werden.

A Quellenangaben

IETF RFC 2119
Key words for use in RFCs to Indicate Requirement Levels. Internet Engineering Task Force, 1997. (Siehe http://www.ietf.org/rfc/rfc2119.txt)
IETF RFC 2279
UTF-8, a transformation format of ISO 10646. Internet Engineering Task Force, 1998. (Siehe http://www.ietf.org/rfc/rfc2279.txt)
IETF RFC 2396
Uniform Resource Identifiers. Internet Engineering Task Force, 1995. (Siehe http://www.ietf.org/rfc/rfc2396.txt)
IETF RFC 2732
Format for Literal IPv6 Addresses in URL's. Internet Engineering Task Force, 1999. (Siehe http://www.ietf.org/rfc/rfc2732.txt)
Unicode
The Unicode Standard. Das Unicode Consortium. (Siehe http://www.unicode.org/unicode/standard/standard.html)
XML
Tim Bray, Jean Paoli, C.M. Sperberg-McQueen und Eve Maler, Editoren. Extensible Markup Language (XML) 1.0 (Second Edition). World Wide Web Consortium, 2000. (Siehe http://www.edition-w3c.de/TR/2000/REC-xml-20001006)
XML Names
Tim Bray, Dave Hollander und Andrew Layman, Editoren. Namespaces in XML. Textuality, Hewlett-Packard und Microsoft. World Wide Web Consortium, 1999. (Siehe http://www.edition-w3c.de/TR/1999/REC-xml-names-19990114/)

B Quellenangaben (nicht normativ)

HTML 4.01
Dave Raggett, Arnaud Le Hors, Ian Jacobs, Editoren. HTML 4.01 Specification. World Wide Web Consortium, 1999. (Siehe http://www.edition-w3c.de/TR/1999/REC-html401-19991224/)
XLink
Steve DeRose, Eve Maler, David Orchard und Ben Trafford, Editoren. XML Linking Language (XLink). World Wide Web Consortium, 2000. (Siehe http://www.edition-w3c.de/TR/2001/REC-xlink-20010627/)
XML Datatypes
Paul V. Biron, Ashok Malhotra, Editoren. XML Schema Part 2: Datatypes. World Wide Web Consortium Working Draft. (Siehe http://www.edition-w3c.de/TR/2001/REC-xmlschema-2-20010502/)
XHTML
Steven Pemberton und andere. XHTML(TM) 1.0: The Extensible HyperText Markup Language. World Wide Web Consortium, 2000. (Siehe http://www.edition-w3c.de/TR/2000/REC-xhtml1-20000126/)
XML Infoset
John Cowan und Richard Tobin, Editoren. XML Information Set. World Wide Web Consortium, 1999. (Siehe http://www.edition-w3c.de/TR/2001/REC-xml-infoset-20011024/)
XPath
James Clark und Steven DeRose, Editoren. XML Path Language. World Wide Web Consortium, 1999. (Siehe http://www.edition-w3c.de/TR/1999/REC-xpath-19991116)
XSLT
James Clark, Editor. XSL Transformations. World Wide Web Consortium, 1999. (Siehe http://www.edition-w3c.de/TR/1999/REC-xslt-19991116)

C Berührungspunkte mit anderen Standards (nicht normativ)

XML Base definiert einen Mechanismus, um Base-URI-Informationen innerhalb eines Dokuments einzubetten. Es definiert keinen Mechanismus, der erkennt, welcher Inhalt oder welcher Attributwert URIs enthalten könnte. Das ist nur den Spezifikationen oder Anwendungen bekannt, die dem Vokabular die Semantik zuweisen.

Es ist die Intention von XML Base, dass zukünftige Spezifikationen und Revisionen von XML-Vokabular die Teile eines XML-Dokuments angeben, die als URIs erachtet werden sollen und einen normativen Verweis auf diese Spezifikation beinhalten, um sicherzustellen, dass relative URIs in allen XML-Dokumenten gleich behandelt werden.

Die Berührungspunkte von XML Base mit anderen Standards (zum Erscheinungszeitpunkt dieses Dokuments) sind im Folgenden beschrieben:

Stichwortverzeichnis

Stichwort Art des Vorkommens
Muss, Darf nicht usw. Definition