edition W3C.de

Verknüpfen von Style Sheets mit XML-Dokumenten Version 1.0

Deutsche Übersetzung

April 2000

Diese Version:
http://www.edition-w3c.de/TR/1999/06/REC-xml-stylesheet-19990629
Aktuelle Version:
http://www.edition-w3c.de/TR/xml-stylesheet
Übersetzer:
Stefan Mintert, Mintert Consulting <stefan@mintert.com>

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 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

Verknüpfen von Style Sheets mit XML-Dokumenten Version 1.0

W3C-Empfehlung 29. Juni 1999

Diese Version:
http://www.w3.org/TR/1999/06/REC-xml-stylesheet-19990629
Aktuelle Version:
http://www.w3.org/TR/xml-stylesheet
Vorherige Version:
http://www.w3.org/TR/1999/xml-stylesheet-19990428
Herausgeber:
James Clark <jjc@jclark.com>

Zusammenfassung

Dieses Dokument erlaubt einem Stylesheet, mit einem XML-Dokument, durch Aufnahme von einer oder mehreren Verarbeitungsanweisungen in den Prolog des Dokuments verknüpft zu werden. Diese haben das Ziel xml-stylesheet.

Status dieses Dokuments

Dieses Dokument wurde von Mitgliedern des W3C und anderen Interessierten geprüft und vom Direktor als W3C-Empfehlung gebilligt. Es ist ein stabiles Dokument und darf als Referenzmaterial verwendet oder als normative Referenz von einem anderen Dokument zitiert werden. Die Rolle des W3C bei der Erstellung dieser Empfehlung ist es, die Spezifikation bekanntzumachen und ihre breite Anwendung zu fördern. Dies erhöht die Funktionsfähigkeit und Interoperabilität des Web.

Die Liste der bekannten Fehler in dieser Spezifikation ist unter http://www.w3.org/1999/06/REC-xml-stylesheet-19990629/errata verfügbar.

Kommentare zu dieser Spezifikation können an www-xml-stylesheet-comments@w3.org gesendet werden. Das Archiv von öffentlichen Kommentaren ist unter http://www.w3.org/Archives/Public/www-xml-stylesheet-comments verfügbar.

Eine Liste von aktuellen W3C-Empfehlungen und anderen technischen Dokumenten sind unter http://www.w3.org/TR zu finden.

Die Arbeitsgruppe erwartet, daß zusätzliche Verfahren, um Style Sheets mit XML-Dokumenten zu verbinden, in einer zukünftigen Spezifikation definiert werden.

Die Verwendung von XML-Verarbeitungsanweisungen in dieser Spezifikation sollte nicht als Präzedenzfall genommen werden. Das W3C beteiligt sich nicht daran, die Verwendung von Verarbeitungsanweisungen in irgendeiner zukünftigen Spezifikation zu empfehlen. Die Begründung B Begründung erklärt, weshalb sie in dieser Spezifikation verwendet wurden. Dieses Dokument wurde als Teil der W3C XML Activity erzeugt.

Inhaltsverzeichnis

1 Die xml-stylesheet-Verarbeitungsanweisung

Anhänge

A Referenzen
B Begründung


1 Die xml-stylesheet-Verarbeitungsanweisung

Stylesheets können durch Verwendung einer Verarbeitungsanweisung, deren Ziel xml-stylesheet ist, mit einem XML-Dokument [XML10] verknüpft werden. Diese Verarbeitungsanweisung folgt dem Verhalten von <LINK REL="stylesheet>" in HTML 4.0 [HTML40].

Die xml-stylesheet-Verarbeitungsanweisung wird in der gleichen Weise analysiert (parsed) wie ein Start-Tag, mit der Ausnahme, daß Entities, abgesehen von den vordefinierten Entities, nicht referenziert werden dürfen.

Die folgende Grammatik wird unter Verwendung der gleichen Notation, wie für die Grammatik in der XML-Empfehlung [XML10], angegeben. Symbole in der Grammatik, die hier nicht definiert sind, sind in der XML-Empfehlung definiert.

xml-stylesheet-Verarbeitungsanweisung
[1]    StyleSheetPI    ::=    '<?xml-stylesheet' (S PseudoAtt)* S? '?>'
[2]    PseudoAtt    ::=    Name S? '=' S? PseudoAttValue
[3]    PseudoAttValue    ::=    ('"' ([^"<&] | CharRef | PredefEntityRef)* '"' | "'" ([^'<&] | CharRef | PredefEntityRef)* "'") - (Char* '?>' Char*)
[4]    PredefEntityRef    ::=    '&amp,' | '&lt;' | '&gt;' | '&quot;' | '&apos;'

In PseudoAttValue wird eine CharRef oder eine PredefEntityRef in der gleichen Weise interpretiert, wie in einem normalen XML-Attributwert. Der tatsächliche Wert des Pseudoattributs ist der Wert, der sich ergibt, nachdem jede Referenz durch das Zeichen, das es referenziert, ersetzt wurde. Diese Ersetzung wird nicht automatisch durch einen XML-Prozessor durchgeführt.

Die xml-stylesheet-Verarbeitungsanweisung ist ausschließlich im Prolog eines XML-Dokuments zulässig. Die Syntax von XML beschränkt, wo Verarbeitungsanweisungen im Prolog erlaubt sind; die xml-stylesheet-Verarbeitungsanweisung ist an jeder Stelle im Prolog erlaubt, die diese Beschränkungen erfüllt.

Anmerkung:

Wenn die xml-stylesheet-Verarbeitungsanweisung im externen Teil der DTD oder in einem Parameter Entity erscheint, so ist es möglich, daß sie von einem nicht validierenden XML-Prozessor nicht verarbeitet wird (siehe [XML10]).

Die folgenden Pseudoattribute sind definiert:

href CDATA #REQUIRED

type CDATA #REQUIRED

title CDATA #IMPLIED

media CDATA #IMPLIED

charset CDATA #IMPLIED

alternate (yes|no) "no"

Die Bedeutung der Pseudoattribute ist exakt die von <LINK REL="stylesheet"> in HTML 4.0, mit der Ausnahme desalternate-Pseudoattributs. Falls alternate="yes" angegeben ist, hat die Verarbeitungsanweisung die Bedeutung von <LINK REL="alternate stylesheet"> anstatt von <LINK REL="stylesheet">.

Anmerkung:

Da der Wert des »href«-Attributs eine URI-Referenz ist, kann es ein relativer URI sein, und es kann einen fragmentarischen Bezeichner (identifier) enthalten. Insbesondere kann die URI-Referenz ausschließlich einen fragmentarischen Bezeichner enthalten. Solch eine URI-Referenz ist eine Referenz auf ein Teil des Dokuments, das die xml-stylesheet-Verarbeitungsanweisung enthält (siehe [RFC2396]). Die Konsequenz ist, daß es die xml-stylesheet-Verarbeitungsanweisung erlaubt, Stylesheets in das selbe Dokument einzubinden, wie die xml-stylesheet-Verarbeitungsanweisung.

In einigen Fällen können Stylesheets extern mit einem XML-Dokument verbunden werden, extern in Bezug auf das Dokument. Zum Beispiel erlaubten frühere Versionen von HTTP [RFC2068] (Abschnitt 19.6.2.4), Stylesheets mit einem XML-Dokument im Sinne des Link-Headers zu verknüpfen. Es wird angenommen, daß alle Verbindungen zu Stylesheets, die extern zum Dokument sind, auftreten, bevor Verbindungen durch die xml-stylesheet-Verarbeitungsanweisungen spezifiziert werden. Dies ist das gleiche wie in HTML 4.0 (siehe Abschnitt 14.6). Hier sind einige Beispiele von HTML 4.0 mit der korrespondierenden Verarbeitungsanweisung:

<LINK href="mystyle.css" rel="style sheet" type="text/css">
<?xml-stylesheet href="mystyle.css" type="text/css"?>

<LINK href="mystyle.css" title="Compact" rel="stylesheet" type="text/css">
<?xml-stylesheet href="mystyle.css" title="Compact" type="text/css"?>

<LINK href="mystyle.css" title="Medium" rel="alternate stylesheet" type="text/css">
<?xml-stylesheet alternate="yes" href="mystyle.css" title="Medium" type="text/css"?>

Mehrere xml-stylesheet-Verarbeitungsanweisungen sind ebenfalls mit exakt der gleichen Bedeutung wie LINK REL="stylesheet" erlaubt. Zum Beispiel wäre

<LINK rel="alternate stylesheet" title="compact" href="small-base.css" type="text/css">
<LINK rel="alternate stylesheet" title="compact" href="small-extras.css" type="text/css">
<LINK rel="alternate stylesheet" title="big print" href="bigprint.css" type="text/css">
<LINK rel="stylesheet" href="common.css" type="text/css">

äquivalent zu

<?xml-stylesheet alternate="yes" title="compact" href="small-base.css" type="text/css"?>
<?xml-stylesheet alternate="yes" title="compact" href="small-extras.css" type="text/css"?>
<?xml-stylesheet alternate="yes" title="big print" href="bigprint.css" type="text/css"?>

A Referenzen

HTML40
World Wide Web Consortium. HTML 4.0 Specification. W3C Recommendation. Siehe http://www.edition-w3c.de/TR/REC-html40.
RFC2068
R. Fielding, J. Gettys, J. Mogul, H. Frystyk Nielsen und T. Berners-Lee. Hypertext Transfer Protocol - HTTP/1.1. IETF RFC 2068. Siehe http://www.ietf.org/rfc/rfc2068.txt.
RFC2396
T. Berners-Lee, R. Fielding und L. Masinter. Uniform Resource Identifiers (URI): Generic Syntax. IETF RFC 2396. Siehe http://www.ietf.org/rfc/rfc2396.txt.
XML10
World Wide Web Consortium. Extensible Markup Language (XML) 1.0. W3C Recommendation. Siehe http://www.edition-w3c.de/TR/1998/REC-xml-19980210.

B Begründung

Es gab eine dringende Notwendigkeit für eine Spezifikation für die Verbindung zu Stylesheets, die rechtzeitig vor der nächsten Veröffentlichung von großen Browserherstellern vollendet werden sollte. Nur durch die Wahl eines einfachen Verfahrens, das wesentlich auf einem erprobten, bestehenden Verfahren basierte, konnte die Spezifikation rechtzeitig vollendet werden, um diese Anforderungen zu erfüllen.

Die Verwendung einer Verarbeitungsanweisung vermeidet die Verschmutzung der Struktur des Hauptdokuments mit anwendungsspezifischen Informationen zur Verarbeitung.

Das Verfahren, das für diese Version der Spezifikation gewählt wurde, ist keine Einschränkung von weiteren Verfahren, die für zukünftige Versionen geplant sind. Es wird nicht erwartet, daß diese zukünftigen Versionen Verarbeitungsanweisungen verwenden werden; tatsächlich kann es sein, daß sie die Verbindungsinformation nicht im Quelldokument enthalten.