www.xml-xslt.de


Startseite

Das Buch

Auszeichnungssprachen

XML-Dokument
Dokumentstruktur
Elemente
Attribute
Kommentare/CDATA
Prolog
Wohlgeformtheit
Validität

Struktur: dtd

Retrieval: XSLT

4.3    Attribute

Jedes XML-Dokument kann mit Attributen versehen werden. Ein Attribut besteht (im Gegensatz zu HTML) immer aus einem Paar aus Attribut und Attributwert in Anfüh-rungszeichen, getrennt durch ein Gleichheitszeichen:

<email datum=”2001/10/12">
    ....
</email>


Attributnamen sind XML-Namen (siehe vorhergehendes Kapitel über Elemente). Zwischen Attributname, Gleichheitszeichen und Attributwert können optional Leer-stellen eingegeben werden. Als Anführungszeichen können doppelte und einfache Anführungszeichen verwandt werden. Auf dieses Weise lassen sich auch im Attri-butwert die jeweils anderen Anführungszeichen verwenden:
                        
<email datum=”2001/10/12 ‘Mittwoch’">
    ....
</email>


entspricht:

<email datum=’2001/10/12 “Mittwoch"’>
    ....
</email>

Eine alternative Kodierung dieser Inhalte ohne Attribute wäre denkbar:

<email>
    <datum>
        2001/10/12 “Mittwoch"
    </datum>
    ....
</email>


Es stellt sich damit die Frage, unter welchen Bedingungen Inhalte als Attribute oder als Elemente kodiert werden sollen. XML macht hierzu in seiner Rolle als Werkzeug (Metaauszeichnungssprache) keine Aussagen. Die Entscheidung liegt beim Informa-tionsdesigner. Als Grundregel in diesem Arbeitsgang wird empfohlen alle Inhalte, die für den Leser des XML-Dokuments wichtig sind, in Elementen zu kodieren. An-gaben über die Ausge-staltung des Elements, sog. Metadaten, sollten in Attributen kodiert werden. Klassisches Beispiel ist die Kodierung eines Bildes in Anlehnung an XHMTL:

<img src=”bild.gif”/>

Die Lokalisierung des Bildes ist für den Leser des XML-Dokuments unerheblich, es ist eine Metainformation für die Software (Browser). Die Trennung von Metadaten und Daten, die für den Leser wichtig sind, ist nicht immer eindeutig nachvollziehbar. Eindeutig ist die Wahl zwischen Attribut und Element zur Kodierung von Daten dann, wenn eine Eltern-Kindstruktur erwartet wird. Diese lässt sich nur in Elementen abbilden, da Attribute keine Kindattribute o.ä. haben können.
    Jedes Element kann beliebig viele Attribute enthalten. Die Reihenfolge der Attribute ist willkürlich und ohne Bedeutung.

<email datum=”2002/12/10" priority=”low” reply_to=”sender@post.de”>
    .....
</email>


Jedes Attribut kann in jedem Element nur ein Mal vorkommen. Andererseits kann das Attribut aber in verschiedenen Elemente genutzt werden.

<email datum=”2002/12/10" priority=”low” reply_to=”sender@post.de”>
    <from>hans@mustermann.de</from>
    <to priority=”high”>fred@mustermann.de</to>
    <to priority=”low”>anna@post.de</to>
    <to priority=”later” datum=”2002/12/12">carla@post.de</to>
</email>

 

 


 
 
 
 
 
 
 
 
 
 

Das XML/XSLT-Seminar
(zur Zeit als Buch nicht lieferbar)