W3C home > Mailing lists > Public > w3c-dist-auth@w3.org > April to June 2001

RE: Issue: PROP_ATTR

From: Julian F. Reschke <julian.reschke@greenbytes.de>
Date: Sat, 14 Apr 2001 12:23:56 +0200
To: "WebDAV WG" <w3c-dist-auth@w3.org>
Message-ID: <AFEIKENBELCNEGJFCENGAEICDCAA.julian.reschke@greenbytes.de>
> From: w3c-dist-auth-request@w3.org
> [mailto:w3c-dist-auth-request@w3.org]On Behalf Of Greg Stein
> Sent: Friday, April 13, 2001 10:46 PM
> To: WebDAV WG
> Subject: Re: Issue: PROP_ATTR
>
>
> The issue is that <theprop> provides the name. The stuff inside
> that is the
> property value. Attributes on the root are associated with the
> name, not the
> value.

We need to define what the value of a property is:

a) the Infoset of the child elements of the element node (minus: comments?
processing instructions?)
b) the Infoset of the property element itself.

I'd still prefer b).

> Haven't we always tried to use element nesting as a means of structure?
> Don't we tend to say that attributes are modifiers for the element they
> occur on?

Yes, but they still belong to it's XML Infoset.

> I'd rather not see attributes on the name supported. On the value, sure.
>
> Maybe people are thinking that the name element is stored with
> the value. I

That's certainly a simple way to preserve the attribute information.

> see it more as the name is a key, which then maps to the value.
> Further, the
> name (key) is broken into a tuple of (localpart, namespace-uri, xml:lang),

Why do you say that xml:lang is part of the key? That would indicate that

<set xmlns="DAV:">
  <displayname xml:lang="en">Contents</displayname>
  <displayname xml:lang="de">Inhalt</displayname>
</set>

would set two different properties, which I don't believe is true.

> so I don't see it as stored as XML with the rest of the value.
> And since it
> isn't in XML format, it becomes very difficult to store things such as
> attributes.

Make the key (namespace-uri, local-name) and the value "XML serialization of
the property element", and you're done.

> Let's say that you *do* choose to store the name with the XML
> value. How do
> you manage the namespace and xml:lang. Does the property always have to
> store a private namespace to ensure that you don't get prefix clashes? For
> example:
>
>   <P:myprop xmlns:P="private-namespace-prefix-marker">value</P:myprop>
>
> (as opposed to collecting a union of all namespace prefixes and
> placing them
>  on a higher element)

I'd say that's absolutely up to the implementation. You just have to make
sure that upon PROPFIND, all element's appear in their original namespace.

> In the store-with-value approach, you're duplicating the data from the key
> to the value. Maybe the word "normalization" is too loud in my
> head :-), but
> I prefer not to do that.

Actually, it would avoid having xml:lang as part of the key, which IMHO is
wrong.
Received on Saturday, 14 April 2001 06:24:15 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:43:55 GMT