Latest web development tutorials

XML-Attribut

XML-Elemente können Attribute ähnlich wie HTML haben.

Attribut (Attribut) liefert zusätzliche Informationen über das Element.


XML-Attribut

In HTML, bieten Attribute zusätzliche Informationen über das Element:

<img src="computer.gif">
<a href="demo.html">

Eigenschaften sind in der Regel keine Informationen über den Datenteil bereitzustellen. In dem folgenden Beispiel hat der Dateityp nichts mit den Daten zu tun, müssen aber dieses Element von Software zu verarbeiten ist sehr wichtig:

<file type="gif">computer.gif</file>


XML-Attribute müssen angegeben werden

Attributwerte müssen in Anführungszeichen werden, obwohl einfache oder doppelte Anführungszeichen verwendet werden können. Zum Beispiel das Geschlecht einer Person, können Person Element geschrieben werden:

<person sex="female">

Oder dies kann sein:

<person sex='female'>

Wenn der Attributwert doppelten Anführungszeichen enthält können Sie einfache Anführungszeichen, wie in diesem Beispiel verwenden:

<gangster name='George "Shotgun" Ziegler'>

Oder können Sie Zeichenentitäten verwenden:

<gangster name="George &quot;Shotgun&quot; Ziegler">


XML-Elemente vs. Attribute

Betrachten Sie diese Beispiele:

<person sex="female">
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>

<person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>

In der ersten Instanz, Sex ist ein Attribut. Im zweiten Fall, Sex ist ein Element. Beide Beispiele zeigen die gleichen Informationen.

Keine Regel kann uns sagen, wenn Attribute zu verwenden, und wenn Elemente zu verwenden. Meine Erfahrung ist, in HTML, das Hotel ist sehr bequem zu bedienen, aber in XML, sollten Sie versuchen, die Nutzung von Eigentum zu vermeiden. Wenn die Informationen, wie Daten fühlt, verwenden Elemente davon.


Meine Lieblings-Weg

Die folgenden drei XML-Dokumente enthalten genau die gleichen Informationen:

Das erste Beispiel verwendet die Datumseigenschaften:

<note date="10/01/2008">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Das zweite Beispiel verwendet die Datumselemente:

<note>
<date>10/01/2008</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Das dritte Beispiel verwendet die erweiterten Datumselement (das ist mein Favorit):

<note>
<date>
<day>10</day>
<month>01</month>
<year>2008</year>
</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>


Vermeiden Sie XML-Attribut?

Einige der Probleme, die durch die Verwendung von Eigentum verursacht:

  • Attribute können nicht mehrere Werte enthalten (Elemente können)
  • Attribute können nicht enthalten Baumstrukturen (Elemente)
  • Attribute sind nicht leicht erweiterbar (für zukünftige Änderungen)

Das Eigentum ist schwer zu lesen und zu pflegen. Versuchen Sie Elemente zu verwenden, um Daten zu beschreiben. Aber nur die Eigenschaft verwenden, um Daten zu liefern unabhängige Informationen.

Tun Sie nicht so eine dumme Sache (Dies ist nicht die XML sollte verwendet werden):

<note day="10" month="01" year="2008"
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>


XML-Metadaten für die Eigenschaft

Manchmal werden ID Verweise auf die Elemente zugeordnet. Die ID kann verwendet werden, um XML-Element-Index zu identifizieren, so wie es in HTML-id-Attribut funktioniert, ist die gleiche. Dieses Beispiel zeigt uns, diese Situation:

<messages>
<note id="501">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="502">
<to>Jani</to>
<from>Tove</from>
<heading>Re: Reminder</heading>
<body>I will not</body>
</note>
</messages>

Die oben ist nur ein id-Attribut-ID wird verwendet, um die verschiedenen Noten zu identifizieren. Es ist nicht Teil der Noten-Daten.

Hier haben wir versucht, Ihre Philosophie ist, weitergeben müssen: Metadaten (Daten über Daten) als Attribute gespeichert werden, und die Daten selbst sollte als Elemente gespeichert werden.