Dit document is een Nederlandse vertaling van een Engelstalig document (http://www.w3.org/TR/xml-stylesheet/).

Deze vertaling werd gemaakt door Andy Camps, vervolgens nagelezen door Ruud Steltenpool en gecorrigeerd door Andy Camps, maar kan nog enkele fouten bevatten. In geval van twijfel verwijzen wij naar de officiële Engelstalige versie.

Engelse versie:
http://www.w3.org/TR/xml-stylesheet/
Deze versie:
http://www.playgarden.com/w3c/TR/xml-stylesheet/xml-stylesheet.html
(zip archief van HTML)
Vertaler:
Andy Camps <andy.camps@playgarden.com>
Auteursrecht:
Copyright © 1999 W3C ( MIT, INRIA, Keio). Alle rechten voorbehouden. W3C-regels betreffende aansprakelijkheid, handelsmerk, documentgebruik en softwarelicentiëring zijn van toepassing.

W3C

Style Sheets associëren met XML documenten
Versie 1.0

W3C Aanbevelingen 29 Juni 1999

Deze versie:
http://www.w3.org/1999/06/REC-xml-stylesheet-19990629
Laatste versie:
http://www.w3.org/TR/xml-stylesheet
Vorige versie:
http://www.w3.org/TR/1999/xml-stylesheet-19990428
Editor:
James Clark <jjc@jclark.com>
Vertaling
Andy Camps, http://www.playgarden.com/w3c/TR/xml-stylesheet/xml-stylesheet.html

Samenvatting

Dit document laat toe dat een style sheet geassocieerd wordt met een XML document door één of meer verwerkingsinstructies in de documentkop op te nemen met een xml-stylesheet doel.

Status van dit document

Dit document is gereviewed door W3C Leden en andere geïnteresseerde partijen en is bekrachtigd door de Director als een W3C Aanbeveling. Het is een stabiel document en kan gebruikt worden als referentiemateriaal of geciteerd als een normatieve referentie van andere documenten. De rol van W3C in het maken van de Aanbeveling is er de aandacht op vestigen en de verspreiding ervan promoten. Dit verbetert de functionaliteit en interoperabiliteit van het Web.

De lijst met bekende fouten in de originele Engelstalige specificatie is beschikbaar op http://www.w3.org/TR/1999/xml-stylesheet-19990629/errata.

Opmerkingen over de originele specificatie kunnen naar < www-xml-stylesheet-comments@w3.org> gestuurd worden. Het archief van publieke opmerkingen is beschikbaar op http://w3.org/Archives/Public/www-xml-stylesheet-comments.

Een lijst van huidige W3C Aanbevelingen en andere technische documenten kan gevonden worden op http://www.w3.org/TR.

De Working Group verwacht aanvullende mechanismen voor het linken van style sheets aan nog te defniëren XML documenten in toekomstige specificaties.

Het gebruik van XML verwerkingsinstructies in deze specificatie zou niet gezien moeten worden als een precedent. Het W3C verwacht niet verwerkingsinstructies aan te moeten bevelen voor gebruik in een toekomstige specificatie. De Rationale verklaart waarom ze gebruikt werden in deze specificatie.

Dit document is gemaakt als deel van de W3C XML Activity.

Inhoud

1 De xml-stylesheet verwerkingsinstructie

Appendices

A Referenties
B Rationale

1 De xml-stylesheet verwerkingsinstructie

Style Sheets kunnen geassocieerd worden met een XML[XML10] document door een verwerkingsinstructie te gebruiken waarvan het doel xml-stylesheet is. Deze verwerkingsinstructie volgt het gedrag van de HTML 4.0 <LINK REL="stylesheet">[HTML40].

De xml-stylesheet verwerkingsinstructie wordt op dezelfde manier geparsed als een start-tag, met de uitzondering dat entiteiten die niet vooraf gedefinieerd zijn niet gerefereerd mogen worden.

De volgende grammatica wordt gegeven gebruik makend van dezelfde notatie als de grammatica in de XML Aanbeveling [XML10]. Symbolen in de grammatica die hier niet gedefinieerd zijn worden gedefinieerd in de XML Aanbeveling.

xml-stylesheet verwerkingsinstructie
[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 wordt een CharRef of een PredefEntityRef geïnterpreteerd op dezelfde manier als een normale XML attribuutwaarde. De eigenlijke waarde van het pseudo-attribuut is de waarde achter elke referentie, vervangen door het karakter waarnaar gerefereerd wordt. Deze vervanging wordt niet automatisch uitgevoerd door een XML processor.

De xml-stylesheet verwerkingsinstructie wordt enkel toegestaan in de kop van een XML document. De syntax van XML beperkingen waar verwerkingsinstructies toegestaan zijn in de kop; de xml-stylesheet verwerkingsinstructie is overal in de kop toegestaan zolang deze voldoet aan de volgende beperkingen .

NOTA: Als de xml-stylesheet verwerkingsinstructie in de externe DTD subset voorkomt of in een parameterentiteit is het mogelijk dat het niet verwerkt kan worden door een niet-validerende XML processor (zie [XML10]).

De volgende pseudo attributen zijn gedefinieerd

href CDATA #REQUIRED
type CDATA #REQUIRED
title CDATA #IMPLIED
media CDATA #IMPLIED
charset CDATA #IMPLIED
alternate (yes|no) "no"

De semantiek van de pseudo-attributen zijn exact zoals bij <LINK REL="stylesheet"> in HTML 4.0, met als uitzondering het alternate pseudo-attribuut. Als alternate="yes" gespecificeerd wordt, heeft de verwerkingsinstructie de semantiek <LINK REL="alternate stylesheet"> in plaats van <LINK REL="stylesheet">.

NOTA: Aangezien de waarde van het href attribuut een URI referentie is kan het een relatieve URI zijn en kan het een fragment identifier bevatten. De URI referentie kan in een speciaal geval enkel een fragment identifier bevatten. Zo een URI referentie is een referentie naar een deel van het document dat de xml-stylesheet verwerkingsinstructie bevat (zie [RFC2396]). De consequentie is dat de xml-stylesheet verwerkingsinstructie toelaat dat style sheets opgenomen worden in hetzelfde document als de xml-stylesheet verwerkingsinstructie.

In sommige gevallen kunnen style sheets gelinkt worden met een XML document met middelen externe aan het document. Vroegere versies van HTTP [RFC2068] (sectie 19.6.2.4) lieten bijvoorbeeld toe dat style sheets geassocieerd werden met XML documenten door middel van de Link header. De links naar style sheets die extern aan het document gespecificeerd zijn, worden beschouwd als gespecificeerd vóór de links die gespecificeerd worden door de xml-stylesheet verwerkingsinstructies. Dit is hetzelfde als in HTML 4.0 (zie section 14.6).

Hier volgen een aantal voorbeelden van HTML 4.0 met de overeenkomende verwerkingsinstructie:

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

Meerdere xml-stylesheet verwerkingsinstructies zijn ook toegestaan met exact dezelfde semantiek als bij LINK REL="stylesheet". Bijvoorbeeld

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

zou equivalent moeten zijn aan:

<?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"?>
<?xml-stylesheet href="common.css" type="text/css"?>

A Referenties

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

B Rationale

Er was een dringende vereiste voor een specificatie voor style sheet linking die op tijd voltooid kon worden voor de volgende release van belangrijke browser verkopers. Enkel door het kiezen van een eenvoudig mechanisme nauw gebaseerd op een bewezen bestaand mechanisme kon de specificatie op tijd voltooid worden om te voldoen aan deze vereiste.

Een verwerkingsinstructie gebruiken vermijdt dat de structuur van het hoofddocument vervuild wordt met toepassingsspecifieke verwerkingsinformatie.

Het mechanisme dat voor deze versie gekozen werd is geen beperking van de aanvullende mechanismen die gepland zijn voor toekomstige versies. Er wordt niet verwacht dat deze verwerkingsinstructies zullen gebruiken; ze zouden inderdaad geen linking informatie in het brondocument bevatten.