General question: Is there any reason why attributes exist at all?
Robin Cover covers some of the issues here:
http://www.oasis-open.org/cover/elementsAndAttrs.html
This debate is also currently raging on the XML-DEV mailing list. There are proponents for both sides of the debate, which can get quite heated!
If you care to dip in you can look at the thread here:
http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Nov-1999/0998.html
There are strong arguments on either side - even the 'attributes are required for linking' viewpoint isn't firm, as
<leaf shape="obovate" />
<leaf> <shape>obovate</shape> </leaf>
are semantically identical. It largely depends on which you prefer, and how your schema is defined. The id/idref linking mechanism only works within documents. Its unlikely that this will apply in this context as links will be likely *between* documents - and we'll therefore be using XPointers (which are based on XPath).
Its up to the application to decide whether it looks for a shape attribute or element.
Cheers,
L.