[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Six Reasons Not to use XML Attributes
Hi Folks, 1. XML attributes are specific to the XML data format. Other data formats, such as comma-separated values (CSV) and binary, don't have it. That is, taking a (element) name with a (element) data value and then adding to that a (attribute) name/value pair is specific to XML. 2. Avoiding XML attributes makes your language simpler. 3. When people use XML attributes they typically assign them some meaning. For example, some people assign attributes the meaning "attributes are metadata." When you enter the land of meaning (and its partner, interpretation) you enter the land of chaos [1]. By eliminating attributes you have one less category of things to give meaning to and one less category of things to be misinterpreted. 4. XML Schemas that do not use xsd:attribute can be used to logically model other data formats besides XML, using the Data Format Description Language (DFDL) [2]. 5. Attributes are never needed. For example, The altitude is 12000 feet. can be modeled using an attribute: <altitude units="feet">12000</altitude> However it can be equivalently modeled using just elements: <altitude> <units>feet</unit> <value>12000</value> </altitude> 6. Michael Kay says that attributes are unnecessary [3]: XML is too large. Attributes are unnecessary, mixed content is unnecessary, namespaces are unnecessary: without these unnecessary concepts, XSD and many other things would have been much simpler. Are there any more reasons not to use XML attributes? /Roger [1] http://www.xfront.com/The-edge-of-chaos-where-syntax-ends-and-interpretation-begins.pdf [2] https://www.ogf.org/dfdl/ [3] http://lists.xml.org/archives/xml-dev/201112/msg00085.html
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|