Date: Thu, 09 Apr 1998 18:13:56 -0700 From: Tim Bray <firstname.lastname@example.org> Subject: RE: When is an attribute an attribute? Sender: email@example.com X-Sender: firstname.lastname@example.org To: email@example.com
At 10:35 AM 07/04/98 -0700, Rich Koehler wrote:
>I've become fond of the method that Tim Bray used to distinguish between
>elements and attributes in his discussion of MCF
>(http://www.textuality.com/mcf/MCF-tutorial.html). He writes, "...when
>the property has a simple value like a string, we put that in the
>content of the element; when the property's value is another object, we
>put a pointer to it in an attribute value
Hmm, recommendations do come back to haunt one. I guess I'd sign up for part of that statement - putting URIs in attribute values rather than element content seems to be a basic part of Web culture, and has come to feel natural.
But I'm on the record as saying I've never heard a convincing universal decision procedure for what should be an element and what an attribute. There are some things where it's easy - if you need further internal structure, use an element, for example. But my beliefs on this are:
I have observed that humans doing document design are comfortable with having two ways of labeling content, and assign things to elements or attributes for reasons that seem good to them.
It is often the case, after designers have done this, that they change their minds. I know I do.
For all of these reasons, if software needs to extract information from XML documents, it should be prepared to extract it either from character data or from attribute values, and not struggle against what the designer decided.
xml-dev: A list for W3C XML Developers. To post, mailto:firstname.lastname@example.org Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
Date: Fri, 19 Mar 1999 11:55:47 -0800 From: Tim Bray <email@example.com> To: Kurt Donath <firstname.lastname@example.org>, email@example.com Subject: Re: DTD Question: Attributes vs Elements At 02:33 PM 3/19/99 -0500, Kurt Donath wrote: > > What is the criteria for selecting when to define data as an attribute > or element in a DTD? Personal taste. This is a religious issue. Attributes differ in that - they get white-space-normalized - their order is not significant - you can't have more than 1 with the same name on an element - they can't contain any internal structure If these things matter, your decision is made. If not, make it yourself. Lesson: software writers have to be able/willing to pull information out of either elements or attributes. -Tim xml-dev: A list for W3C XML Developers. To post, mailto:firstname.lastname@example.org Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1