Re: The status on <address>

* Trejkaz Xaoza wrote:
>At Wed, Sep 15, 2004 at 08:43:50PM +0200, Bjoern Hoehrmann wrote:
>> 
>> http://hades.mn.aptest.com/cgi-bin/xhtml2-issues/Structural?id=7460
>> which has been rejected with the note "Superseded by PR#7474" and
>> http://hades.mn.aptest.com/cgi-bin/xhtml2-issues/Structural?id=7474
>> which has been rejected with the note
>> 
>>   BAE F2F:we have the structuring facility in XHTML, rather it is more
>>   efficient to use the meta data (example use property="") Original idea
>>   is described in PR#7460. For more discussion, see
>>   http://lists.w3.org/Archives/Public/www-html/2003Dec/thread#3
>
>So what is the intent here, exactly?
>
>Is the idea that we're supposed to use a paragraph for a block address?
>
>    <p property="myns:address">
>    <l>...</l>
>    <l>...</l>
>    </p>

Good question, this is not clear to me either. If that specifies the
myns:address of the document, it would seem that something like

  <blockquote>
    <meta property = 'myns:author'>Max Mustermann</meta>
    ...
  </blockquote>

would specify that the author of the document is Max Mustermann, as
opposed to the source of the quote. That would mean these meta data
features are quite difficult to use, maybe you'd need to write

  <blockquote id = 'x'>
    <meta property = 'myns:author' about = 'x'>Max Mustermann</meta>
    ...
  </blockquote>

which seems quite counter-intuitive to me. I'd also be concerned about
all the namespaces we'd have to use for very basic functionality, say
you want to use this myns:address thing and some author meta data and
some dates and some informations for robots and maybe you are with those
"HTML overlay" and "XFN" folks you'd have to write something like

  <?xml version="1.0" encoding="iso-8859-1"?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 2.0//EN"
    "http://www.example.org/TR/xhtml2/DTD/xhtml2-flat.dtd">
  <html xmlns              = "http://www.w3.org/2002/06/xhtml2"
        xmlns:xsi          = "http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation = "http://www.w3.org/2002/06/xhtml2

http://www.example.org/TR/xhtml2/schema/s.xsd"
        xmlns:robots       = "http://www.example.org/robots#"
        xmlns:authorship   = "http://www.example.org/author#"
        xmlns:dates        = "http://www.example.org/dates#"
        xmlns:addresses    = "http://www.example.org/addr#"
        xmlns:overlay      = "http://www.example.org/overlay#"
        xmlns:xfn          = "http://www.example.org/xfn#"
        xml:lang           = "en"
  >...

And prefixes all over your document where in XHTML 1.1

  <?xml version="1.0" encoding="iso-8859-1"?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11-flat.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
  >...

Would have been sufficient and no prefixes in the document. I also don't
get the idea behind this DTD stuff in XHTML 2.0, the document above will
clearly be invalid so maybe you'd have to write

  <?xml version="1.0" encoding="iso-8859-1"?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 2.0//EN"
    "http://www.example.org/TR/xhtml2/DTD/xhtml2-flat.dtd"
  [
    <!ATTLIST html xmlns:robots ...
  ]>
  ...


This is very difficult to tell from the draft because there are so many
examples in the draft that are clearly non-conforming. It took them more
than a year to come up with the latest draft, I don't really understand
why they did not spot and fix all these mistakes. 

On meta data in XHTML 2.0 I have recently asked them for more background
on these things, but so far I got only comments (I do not know whether
on behalf of the group or personal comments) from the "RDF-in-XHTML"
Task Force and so far I understand at least the RDF-in-XHTML Task Force
is only concerned with finding funny ways to encode RDF in XHTML, with
important stuff like how to have "blank nodes" and "reification". See

  http://lists.w3.org/Archives/Public/www-html-editor/2004JulSep/thread.html#125

I am still waiting for a response from the HTML Working Group though.
Maybe that could clear things up a bit.

>I gather inline would be a span...
>
>    <p>Contact me at <span property="myns:address">...</span>.</p>
>
>The question then, is... if I wanted to write CSS to match all block
>addresses, how do I know which properties represent addresses?  Do I
>maintain a large list of all the properties which are addresses?  What
>happens if another property is discovered which is an address too?  Do
>I just update the CSS every time a new one is found?

I am afraid this is not possible at all, the value of the property
attribute in your example can be

  * "myns:address"
  * "yourns:address"
  * "x237462834283643234234234:address"
  * ...

which all have the same meaning if the prefix is bound to the same
"namespace URI" (probably more accurately referred to as Namespace
IRI Reference) and CSS selectors can at best match against the
value of the attribute, so, assuming that CSS selectors would match
on the literal attribute value, you'd need to write this as

  [property="myns:address"],
  [property="yourns:address"],
  [property="x237462834283643234234234:address"],
  ...
  {
     border: 1px inset blue
  }

but this depends, it would select all elements in any namespace with
such an attribute with the specified value, you might want to say

  xhtml2|a[property="myns:address"],
  xhtml2|span[property="myns:address"],
  xhtml2|l[property="myns:address"],
  ...
  xhtml2|a[property="yourns:address"],
  xhtml2|span[property="yourns:address"],
  xhtml2|l[property="yourns:address"],
  ...

and so on if you want to style inline addresses and block addresses
differently and don't want to dictate which element might be used for
addresses. This would of course generate false positives, for example

  ...
  <p property="friend:address" ...>
  ...

might mean the address of a friend and not contact information for
author of the document. You might be able to play some tricks here if
such things don't bother you, for example

  [property $= ":address"]

might work better. Of course, this would require CSS3 support, so no
styles for browsers that only support CSS2. Things get worse if you do
not agree with everyone how to express certain meta data,

  property = "x:author-contact"
  property = "x:reach-me-via"
  property = "x:contact"
  property = "x:email"
  ...

all these things might be such contact information. On a more functional
level lets consider the robots example again, my current understanding
is that W3C either thinks that

  xmlns:google    = "http://www.google.com/xmlns/robots/1.0/#"
  xmlns:alltheweb = "http://www.alltheweb.com/FAST-WebCrawler/0.3#"
  xmlns:yahoo     = "http://xmlns.yahoo.com/robot-exclusion-1.0"
  ...
  ... google:robots   ... noindex ...
  ... alltheweb:index ... no ...
  ... yahoo:robot     ... allow-index ...
  ...

meets authoring needs, or, if we just wait long enough someone brave
will show up and create a standard specification for robots and all
search engine vendors will universally agree to it and adopt it. Now,
considering how many ways to encode the author of the document showed
up for HTML/XHTML and essentially none was implemented in a way that
would provide sufficient benefit to actually include the information,
I have little hope that this will happen so easily.

On the other hand, who cares, the HTML Working Group was (maybe is,
the charter is expired so I can't tell for sure) chartered to work on

[...]
  finishing work on XHTML 2.0, the next generation of XHTML whose
  design goal is to use generic XML technologies as much as possible.
[...]

and after all, they do that, no?

Received on Thursday, 16 September 2004 16:07:47 UTC