FW: W3C XML ID ambiguity

Larry Bugbee, senior Boeing analyst, working particularly on digital
signatures, suggests that xml:id introduces complexity, and seeks
feedback from the W3C community.  See his note at the bottom of thread
for explanation.

We exchanged mail with Henry Thompson and Bert Bos, whose responses
(with their approval) are pasted in here.

Per their suggestion, we are forwarding all of this to the public list.
We realize the official comment period is over, and apologize for late
comments.  

  -- Ann

Ann Bassetti
Web Integration Manager
Boeing Information Technology
Computing and Network Operations
telephone:  425-957-5161
pager:  206-797-3762
email:  ann.bassetti@boeing.com




-----Original Message-----
From: Henry S. Thompson [mailto:ht@inf.ed.ac.uk] 
Sent: Friday, April 22, 2005 7:57 AM
To: Bert Bos
Cc: Bassetti, Ann; Liam Quin; Reid, Travis S; Gerstmann, Jerry P;
Meadows, Joe; Bugbee, Larry
Subject: Re: W3C XML ID ambiguity


Minor correction:

Bert Bos <bert@w3.org> writes:

> xml:id may even occur under another name, such as foo:id, in a 
> namespace-aware document. Although if some program really generates 
> that, it's probably better to consider it a bug...

You can't bind any prefix other than 'xml' to the XML namspace [1], so
this problem can't arise.

ht

[1] http://www.w3.org/TR/xml-names11/#xmlReserved
-- 



-----Original Message-----
From: Bert Bos [mailto:bert@w3.org] 
Sent: Friday, April 22, 2005 7:34 AM
To: Bassetti, Ann
Cc: Henry Thompson; Liam Quin; Reid, Travis S; Gerstmann, Jerry P;
Meadows, Joe; Bugbee, Larry
Subject: Re: W3C XML ID ambiguity


Hello Ann,

On Friday 22 April 2005 03:53, Bassetti, Ann wrote:
> Hello Henry, Liam, and Bert --
>
> Our colleagues have asked the following question, regarding xml:id 
> versus xmlid.  Can you please guide us regarding to which list, group,

> or person(s) we should direct the question?  Or, maybe you can just 
> give us the answer.

I'm not an expert on the question. When I raised the issue, a long time 
ago, I basically just had an intuition that xml:id was unnecessarily 
complex (as well as longer and uglier when dealing with source files). 
It sort-of requires namespaces support, but then again not normal 
namespace support, because "xml:" is a predefined prefix and may not be 
redefined.

So, as soon as your XML application gets a bit more complicated and you 
have to deal with namespaces, schemas and infosets, xml:id has to be 
treated as an exception, where xmlid would be just another attribute.

With xml:id, you may end up with multiple IDs on the same element. Not a

huge problem, as long as you are aware of it before you start 
programming. xml:id may even occur under another name, such as foo:id, 
in a namespace-aware document. Although if some program really 
generates that, it's probably better to consider it a bug...

So, all in all, It seemed so much easier to deal with xmlid.

The arguments of the WG didn't convince me, but I've given up. If they 
want a colon in the name, OK. It will lead to a few bugs at first, but 
in the end it's not going to break anything. It's just a nuisance.

There appears to be an as yet unsolved question about how to 
canonicalize a document that contains xml:id, because attributes with 
"xml:" prefixes are moved from ancestors to one or more descendants in 
certain cases, which is fine for xml:lang and xml:space, but obviously 
not for xml:id. I really hadn't thought that far at all when I 
complained about the colon. But I'm sure they'll find a way to patch 
the c14n algorithm eventually.

Anyway, the place to send comments is the <public-xml-id@w3.org> mailing

list. In theory, the CR phase is for implementation feedback, not 
theoretical problems, but in practice things are never as clear-cut as 
the process document describes them and I'm sure the XML Core WG will 
discuss the e-mail and either send a reply or report on the issue at 
the next re-publication.



Bert
-- 
  Bert Bos                                ( W 3 C ) http://www.w3.org/
  http://www.w3.org/people/bos                               W3C/ERCIM
  bert@w3.org                             2004 Rt des Lucioles / BP 93
  +33 (0)4 92 38 76 92            06902 Sophia Antipolis Cedex, France




-----Original Message-----
From: Henry S. Thompson [mailto:ht@inf.ed.ac.uk] 
Sent: Friday, April 22, 2005 2:30 AM
To: Bassetti, Ann
Cc: Liam Quin; Bert Bos; Reid, Travis S; Gerstmann, Jerry P; Meadows,
Joe; Bugbee, Larry
Subject: Re: W3C XML ID ambiguity


xml:id is at the Candidate Recommendation phase of the W3C Process.
Strictly speaking the comments phase ended last month, but comments to
the comments list will probably still be taken in to account:
public-xml-id@w3.org

Speaking for myself, the parallelism with the existing xml: attributes
is compelling -- using xmlid will simply confuse people because they
will look for some deep significance in the shift from xml:. . .

ht   
-- 
 Henry S. Thompson, HCRC Language Technology Group, University of
Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged
spam]





>  -----Original Message-----
> From: 	Bassetti, Ann  
> Sent:	Thursday, April 21, 2005 6:54 PM
> To:	'Henry Thompson'; 'Liam Quin'; 'Bert Bos'
> Cc:	Reid, Travis S; Gerstmann, Jerry P; Meadows, Joe; Bugbee, Larry
> Subject:	W3C XML ID ambiguity
> 
> Hello Henry, Liam, and Bert --
> 
> Our colleagues have asked the following question, regarding xml:id
> versus xmlid.  Can you please guide us regarding to which list, group,
> or person(s) we should direct the question?  Or, maybe you can just
> give us the answer.
> 
> Thanks in advance.  
> 
> Looking forward to seeing you guys soon!  -- Ann
> 
> Ann Bassetti
> Web Integration Manager
> Boeing Information Technology
> Computing and Network Operations
> telephone:  425-957-5161
> pager:  206-797-3762
> email:  ann.bassetti@boeing.com
> 
> 
> 
> 
> My issue has to do with the name "xmlid" vs "xml:id" as a solution to
> the ambiguity surrounding the ID attribute.  Today we believe we have
> ways to deal with this, but they are not as clean as we would like.
> XPath will be used when we can, but for many, if not most cases, the
> ID attribute without complications would be nice. 
> 
> I want to see us adopt "xmlid", not "xml:id".  
> 
> Here is my thinking, some of which you have likely heard.
> Nonetheless, and please correct me if I'm wrong...
> 
>   - Both "xmlid" and "xml:id" have names beginning in 'xml' which are 
>     reserved.  Neither suffers from legacy name collisions, and
> neither 
>     overloads the semantics of existing IDs.  
> 
>   - Both are still weak making it is possible to find the wrong thing.
> 
>     If the situation is moderately or highly complex, folks should be 
>     using XPath.  
> 
>   - 'xml:id' invokes a level of complexity not necessary for simple 
>     situations.  "xml:id" seems preferred by the "industrial strength"
> 
>     folks, and I understand why, but the concept of an ID is so basic 
>     and fundamental that it should be usable by everybody, not just by
> 
>     the folks that understand and step up to the nuances of
> namespaces.  
>     Besides, with multiple namespaces you introduce other problems, 
>     kinda like multiple inheritance.  ;-)
> 
>   - XML started small and simple.  Today it is large and complex.  
>     Still, folks with simple problems try to use it without a Master 
>     of Science in XML.  ...and well they should.  An ID attribute for 
>     simple situations should remain simple.  'xml:id' doesn't do that.
> 
>     It's perhaps "proper", but not simple.  That is important for
> small 
>     and simple XML documents, and arguably, they constitute the 
>     majority.  If complex, use XPath.
> 
> I see no mention of 'xmlid' in any of the references hanging off of
> "http://www.w3.org/XML/Group/Core#xml-id" except for
> http://lists.w3.org/Archives/Public/public-xml-id/2003Aug/0002.
> Nobody replied.  The only other reference to 'xmlid' is Rich Salz'
> article http://webservices.xml.com/pub/a/ws/2005/02/23/salz.html.
> Still, I want to see "xmlid".  Is 'xml:id' the victim of group-think
> or is there a reason 'xmlid' is not discussed more?  I suspect the
> rationale of having a type enters the equation, but is it necessary?
> ...or simply nice?  I would hope the rationale addresses simplicity
> for simple situations?
> 
> This simpleton likes things easy to understand and use.  I suspect I'm
> not alone.
>   xmlid - yes
>   xml:id - no
> 
> Not my first choice, but is a compromise feasible?  How about allowing
> both?  Simple situations could use 'xmlid' and those needing
> "industrial strength" namespaces could use 'xml:id', although XPath
> would still be the best choice.  Yes?  No?  
> 
> 
> Thanks,
> 
> Larry
> 
> 
> Larry Bugbee
> Advanced Computing Technologist
> Enterprise Architecture
> The Boeing Company
> 
> larry.bugbee@boeing.com  ***  253-486-9611  ***  2R-91  ***  15-20.3
> 
> The best way to predict the future is to invent it.  --Alan Kay
> 
> 

Received on Friday, 22 April 2005 19:08:38 UTC