본문 바로가기

Programming/XML

XML Element vs. Attribute

Meta-data 저장을 위한 검토 , 흥미로운 글을 찾아 소개해 드립니다.

 

XML Element Attribute요소로 구성되어 있고, data 어떤 형태로든 저장할 있습니다.

(이것이 best practice 찾는데 혼란을 가져오는 요소입니다.)

W3school에서는 data 경우에는 element 저장할 것을 권장하고 있으며, 다음의 이유를 들고 있습니다.

 

Attribute 피해야 하는 이유

-       Multiple values 포함할 없다.

-       쉽게 확장할 없다.

-       Structure 표현할 없다.

-       개발하기 어렵다.(번거롭다 정도로 해석할 있을 합니다.)

-       DTD 대해서 테스트하기 어렵다.

 

예외적으로 Attribute 사용하는 경우

-       ID 경우

 

Conclusion

MS platform XAML, xxx.config파일을 보더라도 attribute 적절하게 사용하고 있습니다.

Bool, identity 경우는 attribute 사용하는 것이 괜찮다고 판단됩니다.

(, ReadOnly / ID / Name)

또한, DTD에서 AttributeList 선언하는 것으로 enum 같은 형태의 data입력의 무결성을 확보할 있는 장점이 있습니다.

(, Gender: Male/Female, Warcraft: Human/Orc)

 

Source code차원에서 자료형이 Bool이거나 ID값에 대해서는 attribute 쓰는 것을 기본으로 하되,

DTD 선언하는 경우 enum 또한 추가적으로 attribute 쓰고 이외의 모든 경우에는 element 사용하는 좋아 보입니다.

 

References

http://www.w3schools.com/dtd/dtd_el_vs_attr.asp

'Programming > XML' 카테고리의 다른 글

Export excel file via Asp.NET MVC, using OpenXml  (0) 2015.09.08
BOM issue (65279 '')  (0) 2014.11.25
XML vs. Json comparison  (0) 2014.07.22
How to handling MS excel file  (0) 2014.07.22