Charles Goldfarb explained to me that attributes were the very difference between markup and generalized markup systems (e.g gml v sgml?)
So an element has a "generic" identifier because other specific properties can be specified, defaulted, implied or linked as attributes on the element
People who think attributes are not useful, and elements should be all, might like to consider the usual reaction people have to viewing OOXML, where major objects have a property element as first child with elements as properties below. It doesn't go all the way, but it adds an awful lot of markup: people find it horrifying.
Btw, I don't think json says you should not have metadata: to the contrary it says you must have basic metadata (data type) and it should be supported at the syntax level.
Rick
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
_______________________________________________________________________
XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.
[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php