OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Six Reasons Not to use XML Attributes

On 02/03/2012 13:51, Costello, Roger L. wrote:
> 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.

This is a non argument. csv doesn't have element tags either.
CSV does have two kinds of separator (comma and end of line)

> 2.  Avoiding XML attributes makes your language simpler.
Not necessarily simpler, just different. In particular the underlying
tree model may be simpler (one less kind of node) but use may be more
complicated, and the per-language rules you need to specify may be more

If the markup is <p id="abc">... then you don't need to say that an
element can only have one ID and that IDs can't have structure, as it is
forced by the syntax. If the markup is

you have to say both those things, and also whether that form, with
white space before the p does mean the id applies to the p or whether it
has to be

> 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.

The syntax makes no difference to this point at all. If you view the ID
of an element as data or metadata you will most likely view it the same
way if the syntax is <p id="abc"> or <p><id>abc</id> or indeed "p"
{"id": "abc"}

> 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].

Don't see wjt attributes are relevant here
> 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>

It could
> 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?

But Micheal was stating the obvious for effect. Do you really think that
HTML woul dbe simpler (or used by so many people) if it didn't have
mixed content or 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


google plus: https:/profiles.google.com/d.p.carlisle

The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs. 

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS