Attributes betray the origins of XML as a document markup language. The text nodes contain the content, the attributes contain the information used for formatting the text.
For a language designed for data interchange, the attribute/element split would be nonsense. But for a document markup language, it makes eminent sense.
Michael Kay
Saxonica
On 21 Dec 2013, at 20:39, Costello, Roger L. <costello@mitre.org> wrote:
Hi Folks,
Why did the founding fathers of XML create attributes?
XML attributes are weird.
They make XML documents dirty, messy, cluttered, and, well, ugly.
XML elements are a perfectly satisfying way of defining name-value pairs. XML attributes is a special (i.e., extra, extraneous, redundant) way of including name-value pairs in the XML. That's awful.
Unless ....... the creators of XML intended attributes for another purpose.
I am reading a wonderful book on parsing and it talks about extending grammars with attributes; those attributes are used to specify the grammar's semantics.
Hey, XML is a grammar: that's what XSD and RNG are all about, they define grammars.
So maybe what the founding fathers of XML really had in mind with attributes is that they be used to enrich XML grammars with semantic information?
Are any of the original founding fathers of XML out there? What were you thinking when you put attributes into XML? Perhaps you were thinking of attribute grammars?
/Roger