2009-05-05 7 views
2

XSD, SOAP 및 기타 XML 규칙에서 다음과 같은 내용을 자주 볼 수 있습니다.XML : 속성 또는 자식?

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

이제 속성에 어떤 문제가 발생했는지 궁금합니다. 나에게 이것을 쓰는 것이 더 합리적이다 :

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

분명히, 어떤 이유로, 나보다 똑똑한 사람은 그렇지 않다. 누군가가 왜 그 이유를 설명 할 수 있었습니까?

+0

참조 : http://stackoverflow.com/questions/241819/xml-best-practices-attributes-vs-additional-nodes – Cuga

답변

2

더 단단하고 빠른 규칙이 없다. 나는 요소에 포함 된 데이터에 대해 메타 데이터에 대한 속성을 사용하는 경향이 있습니다. 예 :

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

비록 용도/특정 요구 사항으로 인해 다른 것보다 더 많은 것이 결정됩니다.

다른 문제는 후속 처리입니다. SAX 프로세서를 사용하는 경우이 형식은 atteribute 구조가 채워진 하나의 메서드 콜백을 발생시킵니다. 데이터를 여러 요소에 넣으면 해당 메소드 호출 수가 발생합니다 (최적화가 너무 멀지 만 데이터 양에 따라 고려해야 할 가치가 있습니다)

+0

SAX 파서에 대한 생각은 +1. –