elementos e atributos XML comparação
Em XML, e não existem disposições quando usar atributos, e quando usar elementos filho.
Usar elementos vs. atributos
Os dados podem ser armazenados em elementos filhos ou atributos.
Vejamos esses exemplos:
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
<sex>female</sex>
<firstname>Anna</firstname>
<lastname>Smith</lastname>
</person>
No primeiro exemplo, "sexo" é um atributo. Em um exemplo, de volta, "sexo" é um sub-elemento. Mas ambos fornecem a mesma informação.
Não há disposições especiais para quando usar atributos, e quando usar elementos filho. Minha experiência é que o uso de multi-atributo no HTML pesado, mas em XML, o uso de sub-elementos, ele vai se sentir mais como dados.
Eu gosto da maneira
Eu gosto de armazenar dados em elementos filho
Os seguintes três documentos XML contêm exatamente a mesma informação:
Este exemplo usa um atributo "data":
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Este exemplo usa um elemento "date":
<date>12/11/2002</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Este exemplo usa a extensão "data" elemento: (Esta é a minha maneira favorita):
<date>
<day>12</day>
<month>11</month>
<year>2002</year>
</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Evitar o uso de atributos?
Você deve evitar o uso de atributos?
Alguns atribuem tem os seguintes problemas:
- Atributos não podem conter vários valores (elementos filho pode)
- Atributos não são facilmente expansível (para as necessidades futuras alterações)
- Atributos não podem descrever estruturas (elementos filhos podem)
- Os atributos são mais difíceis de manipular o código de programa
- Os valores de atributos não são fáceis para testar DTD
Se você usar a propriedade como um contêiner de dados, o documento XML resultante será difícil de ler e manter. Tente usarelementos para descrever dados.para descrever os dados. Os dados só está fornecendo informações irrelevantes quando recomendamos o uso da propriedade.
Não termine como este (que não é XML deve ser usado):
to="Tove" from="Jani" heading="Reminder"
body="Don't forget me this weekend!">
</note>
Excepção a uma regra da propriedade
Há sempre uma outra regra
Regras da propriedade Eu tenho uma exceção.
Às vezes eu uso elementos ID especificados. Estas aplicações podem ser usados como ID atributo NAME ou ID para acessar elementos XML em HTML na mesma situação muito. O exemplo a seguir ilustra essa abordagem:
<note id="p501">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="p502">
<to>Jani</to>
<from>Tove</from>
<heading>Re: Reminder</heading>
<body>I will not!</body>
</note>
</messages>
documentos XML nos exemplos acima, a identificação de um único contador, ou de um identificador único para identificar as diferentes notas, em vez de, como parte dos dados.
Eu quero dizer aqui é que os metadados (dados sobre dados) devem ser armazenados como atributos, e que os dados em si devem ser armazenados como elementos.