Pergunta

Esta questão já tem uma resposta aqui:

Em XSD, SOAP e outras convenções XML muitas vezes você vai ver coisas como:

<book>
 <title>Harry Potter</title>
 <author>J.K. Rowling</author>
</book>

Agora eu estou querendo saber o que aconteceu com atributos? Para mim, isso faz mais sentido para escrever isto como:

<book title="Harry Potter" author="J.K. Rowling" />

Mas, aparentemente, por alguma razão, as pessoas mais inteligentes do que me escolheu de outra forma. Alguém poderia explicar o porquê, e quais atributos são para então?

Foi útil?

Solução

Algumas pessoas consideram a diferença uma questão de preferência pessoal. Existem algumas guidlines lá fora, você pode seguir.

W3Schools - XML ??Elements Vs. Atributos

IBM - Princípios de design XML

Outras dicas

Não há nenhuma regra dura e rápida. I tendem a usar atributos para metadados sobre os dados contidos nos elementos. por exemplo

<book author="JK Rowling" published="September 2001">Harry Potter</book>

embora o uso / requisitos específicos irá determinar isso mais do que anyrhing mais.

Outra questão é o processamento posterior. Se você estiver usando um processador de SAX, em seguida, este formato irá resultar em um retorno de chamada método com a estrutura atteribute povoada. Colocar os dados em vários elementos irá resultar no número correspondente de chamadas de método (pode ser uma otimização muito longe, mas pode valer a pena considerar, dependendo da quantidade de dados)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top