A few random thoughts on a Sunday morning. I was reading through the
XML Schema 1.1 requirements
<http://www.w3.org/TR/2003/WD-xmlschema-11-req-20030121/> today, when
I noticed the following proposal:
2.1.3.4 Allow complex types more than one ID attribute (RQ-105)
Relax the constraint that a complex type may contain at most one
attribute of type ID.
See
http://lists.w3.org/Archives/Public/www-xml-schema-comments/2002JulSep/0069.html
I'm not sure what sections xml:id exactly this would affect if
adopted, but it does seem like it might well affect something in the
xml:id spec, so I just thought I'd toss this out here, and see what
people thought. There is an implicit assumption throughout the xml:id
spec that each element has and should have at most one unique ID type
attribute. Indeed, a lot of verbiage is expended considering how to
handle the case where this is not true. But what if we were to remove
this requirement completely?
Currently, it is not possible for a *valid* element to have two
attributes with ID type. However it is definitely possible for an
*invalid* document to have two such attributes. Neither the infoset
nor XML 1.0/1.1 prohibits this. In the future, it seems it may be
possible for a schema-valid document to have multiple ID type
attributes. What if instead of trying to avoid this case, xml:id
embraced it?
Anyway, I'm not sure exactly what text this might change in the
xml:id spec; maybe the bit about not declaring non-xml:id attributes
as type ID. But it might adjust how one thinks about some of these
issues.
--
Elliotte Rusty Harold
elharo@metalab.unc.edu
Effective XML (Addison-Wesley, 2003)
http://www.cafeconleche.org/books/effectivexmlhttp://www.amazon.com/exec/obidos/ISBN%3D0321150406/ref%3Dnosim/cafeaulaitA