W3C home > Mailing lists > Public > w3c-sgml-wg@w3.org > June 1997

On the abolishment of IDs (Re: IDs - make them case sensitive)

From: Rick Jelliffe <ricko@allette.com.au>
Date: Sat, 28 Jun 1997 16:26:17 +1000
Message-Id: <199706280625.QAA26662@jawa.chilli.net.au>
To: <w3c-sgml-wg@w3.org>

> From: Tim Bray <tbray@textuality.com>
> At 05:14 AM 28/06/97 +1000, Rick Jelliffe wrote:
> >Everyone send in strings they have *actually* wanted to use as
> >IDs. ...If you ever changed your
> >SGML declaration to add a symbol to namechar, that would be
> >too.
> No conceivable path of adding things to Namechar is a reasonable
> solution. -T.

But you have just given ":/?=;".  That satisfies your example. 

On thing that having all the types of internal names having the same
rules gives us is the ability to use attribute value lists to actually
point to names:

If Tim makes up his document where every 'ID' is a URL, and I want to
up a DTD that gives the user a choice of selecting some parts of it:

	inTim	( 


I currently can do it, by adding ":/?;" to the NAMECHAR.  

I can also use attribute value lists to nominate element types,
attribute identifiers, notations, etc etc.   All the same mechanism.

If we abolish IDs in favour of unique CDATA, we lose this kind of
ability, without then adding another layer of indirection.  And we
the syntax of anything that tries to use the unique CDATA as an ID. And
we increase the difficulty of reading the markup.  

On the other hand, CDATA IDs would dump on us the nasty:

		 http://www.infoseek.com/Titles?qt=tyromancy)" />

Which is nasty because there is a transition between query
and ID that is not marked up: the outside () has a meaning
as part of XML-link, the inside () are just characters in IDs.
I think this is poor language design.  

We have just been removing overloading from SGML delimiters 
in XML.  Surely it is inconstant to then reintroduce overloading
en masse by allowing CDATA ID? Unless we then decide to have:

		 'http://www.infoseek.com/Titles?qt=tyromancy')" />

		 http://www.infoseek.com/Titles?qt=tyromancy]]>)" />

to  clearly markup the boundaries.   

Would the HTML people be happy about
 <a href="#<a href=#xxx><html></html><!--">  
for example?  I know this is a dumb thing to do, but is a dumb thing
people can do, and it will be valid.  

Rick -Jelliffe	

Rick Jelliffe
Received on Saturday, 28 June 1997 02:26:22 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 20:25:11 UTC