W3C home > Mailing lists > Public > www-validator@w3.org > December 2000

Re: XHTML Basic

From: Masayasu Ishikawa <mimasa@w3.org>
Date: Sun, 31 Dec 2000 21:27:40 +0900 (JST)
To: nick@webthing.com
Cc: www-validator@w3.org
Message-Id: <20001231212740W.mimasa@w3.mag.keio.ac.jp>
[ It seems this message didn't reach the list, so resending ]

Sorry for my late follow-up ... in case this discussion would continue,
please move to the www-html mailing list.

Nick Kew <nick@webthing.com> wrote:

> Just a note to say that use of <a id=..> for internal anchors has
> broken back-compatibility rather badly (amongst my browsers only Lynx can
> navigate <URL:http://www.w3.org/TR/2000/REC-xhtml-basic-20001219/>,
> and Lynx has trouble with my proxy :-( )
> 
> Was this intentional?

Indeed this was intentional.  Some reasons include:

- The "id" attribute has been part of HTML for more than 3 years since
  HTML 4.0, or nearly 4 years since RFC 2070.

- Recent versions of Amaya, iCab, Internet Explorer, Lynx, Netscape,
  Mozilla, Opera, w3m, ..., all support "id".

- "4.10 The elements with 'id' and 'name' attributes" of XHTML 1.0 [1] says:

    In XML, fragment identifiers are of type ID, and there can only be
    a single attribute of type ID per element. Therefore, in XHTML 1.0
    the id attribute is defined to be of type ID. In order to ensure
    that XHTML 1.0 documents are well-structured XML documents, XHTML
    1.0 documents MUST use the id attribute when defining fragment
    identifiers, even on elements that historically have also had a name
    attribute. See the HTML Compatibility Guidelines for information on
    ensuring such anchors are backwards compatible when serving XHTML
    documents as media type text/html. 

    Note that in XHTML 1.0, the name attribute of these elements is
    formally deprecated, and will be removed in a subsequent version
    of XHTML.

  Use of the "id" attribute as fragment identifier is compatible with
  XPointer's bare-name shorthand [2], while the "name" attribute is not.

- XHTML Basic doesn't support the "name" attribute.  Although the XHTML
  Basic specification is written in XHTML 1.0 Strict, it only uses 
  elements and attributes supported by XHTML Basic, therefore the "name"
  attribute is not used.

Also note that in the XHTML Basic specification, the "id" attribute is
NOT used on the "a" element, but on other elements like "h2" and "dt".

[1] http://www.w3.org/TR/2000/REC-xhtml1-20000126/#h-4.10
[2] http://www.w3.org/TR/2000/CR-xptr-20000607#bare-names

Regards,
-- 
Masayasu Ishikawa / mimasa@w3.org
W3C - World Wide Web Consortium
Received on Sunday, 31 December 2000 07:28:10 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 25 April 2012 12:13:55 GMT