Latest web development tutorials

XML属性

XML要素は、HTMLに似た属性を持つことができます。

属性(属性)要素に関する追加情報を提供します。


XML属性

HTMLでは、属性は要素に関する追加情報を提供します。

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

プロパティは、通常、データの一部に関する情報を提供されていません。 次の例では、ファイルの種類は、データとは何の関係もありませんが、ソフトウェアのこの要素を処理する必要が非常に重要です。

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


XML属性は引用符で囲む必要があります

単一または二重引用符を使用することができるが、属性値は、引用符で囲む必要があります。 例えば、人の性別、人の要素を書くことができます。

<person sex="female">

それとも、これは可能性があります

<person sex='female'>

属性値自体が二重引用符が含まれている場合は、この例のように単一引用符を、使用することができます。

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

それとも、文字エンティティを使用することができます。

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


XML要素対属性

これらの例を考えてみます。

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

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

最初の例では、セックスは属性です。 第二の例では、セックスは要素です。 どちらの例も、同じ情報を提供します。

いいえルールは、属性を使用する時にお申し付けことはできない、と要素を使用するとき。 私の経験では、HTMLであるプロパティは、使用することは非常に便利ですが、XMLでは、あなたが財産の使用を回避しようとしてください。 情報は、データのように感じている場合は、それの要素を使用します。


私のお気に入りの方法

以下の3つのXML文書は、まったく同じ情報が含まれています。

最初の例は、日付のプロパティを使用しています。

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

第二の例は、日付要素を使用しています。

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

3番目の例は、(私のお気に入りです)、拡張日付要素を使用しています。

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


XML属性を避けますか?

プロパティの使用に起因する問題のいくつか:

  • 属性は複数の値を含めることはできません(要素が缶)
  • 属性は、ツリー構造(要素缶)を含めることはできません
  • 属性は(将来の変更のための)拡張が容易ではありません

プロパティは、読み取りおよび維持することは困難です。 データを記述するための要素を使用するようにしてください。 しかし、唯一のデータを独立した情報を提供するために、プロパティを使用します。

このような愚かなことをしないでください(これはXMLが使用されるべきではありません):

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


プロパティのXMLメタデータ

時には、ID参照は要素に割り当てられます。 IDは、XMLエレメントのインデックスを識別するために使用することができ、それはHTMLのid属性に動作する方法と同じです。 この例では、私たちにこのような状況を示しました:

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

上記だけid属性識別子は、異なるノートを識別するために使用されます。 これは、ノートデータの一部ではありません。

メタデータ(データに関するデータ)を属性として格納する必要があり、そのデータ自体が要素として格納する必要があります。ここではあなたの哲学を渡そうとしましたです。