- From: Julian F. Reschke <julian.reschke@greenbytes.de>
- Date: Tue, 19 Jun 2001 17:00:00 +0200
- To: <w3c-dist-auth@w3.org>
- Message-ID: <JIEGINCHMLABHJBIGKBCGENHCHAA.julian.reschke@greenbytes.de>
Hi, I've spend some more time thinking about this issue, and actually implementing my proposal in our server. Text was added to section 4.4 which tries to define what a property value is, using the W3C recommandations "Namespaces in XML" and "Canonical XML" as base. BTW: I think the first sentence "...when expressed in XML MUST be well formed." is misleading. In WebDAV, there's no way to express the value of a property other than in XML, so it will by definition be well-formed. Feedback appreciated, Julian -- 4.4 Property Values The value of a property when expressed in XML MUST be well formed. XML has been chosen because it is a flexible, self-describing, structured data format that supports rich schema definitions, and because of its support for multiple character sets. XML's self- describing nature allows any property's value to be extended by adding new elements. Older clients will not break when they encounter extensions because they will still have the data specified in the original schema and will ignore elements they do not understand. XML's support for multiple character sets allows any human-readable property to be encoded and read in a character set familiar to the user. XML's support for multiple human languages, using the "xml:lang" attribute, handles cases where the same character set is employed by multiple human languages. (added text starts here) The value of a property is defined in terms of the W3C recommendations "XML Information Set" [XML-INFOSET] and "Canonical XML" [RFC3076]. It consists of a subset of the property element's information items, of which some are optional (that is, a server MAY choose not to persist them). [prefix] (optional) The namespace prefix part of the element-type name. [children] (required) An ordered list of child information items, in document order. Note that the full Information Set of each child is part of the value. [attributes] (required) An unordered set of attribute information items. [namespace attributes] (optional) An unordered set of attribute information items, one for each of the namespace declarations. [in-scope namespaces] (optional) An unordered set of namespace information items, one for each of the namespaces in effect for this element. [base URI] (optional) The base URI of the element, as computed by the method of XML Base. In addition, attributes from the XML namespace (http://www.w3.org/XML/1998/namespace) are inherited by means of section 2.4 of [RFC3076]: xml:lang (required) other attributes from the XML namespace (optional) 4.4.1 Examples for property values Set request: <propertyupdate xmlns="DAV:" xmlns:foo="http://foo.bar.com" xmlns:x="http://www.w3.org/XML/1998/namespace" xml:lang="en" x:space="preserve"> <set> <foo:bar attr="test">xyz</foo:bar> </set> </propertyupdate> Inheritance of attributes from XML namespaces as defined in section 2.4 of [RFC3076]: <propertyupdate xmlns="DAV:" xmlns:foo="http://foo.bar.com" xmlns:="http://www.w3.org/XML/1998/namespace" xml:lang="en" x:space="preserve"> <set> <foo:bar attr="test" xml:lang="en" x:space="preserve">xyz</foo:bar> </set> </propertyupdate> The value of the property named ("http://foo.bar.com", "bar") thus is: [prefix] "foo" [children] 3 character information items [attributes] attribute information items, describing "attr", "xml:lang" and "x:space" [namespace attributes] (empty) [in-scope namespaces] the namespace information items (no value, "DAV:"), ("foo", "http://foo.bar.com"), ("x", "http://www.w3.org/XML/1998/namespace"), ("xml", "http://www.w3.org/XML/1998/namespace") [base URI] no value Removal of optional information: <propertyupdate xmlns="DAV:" xmlns:foo="http://foo.bar.com" xmlns:x="http://www.w3.org/XML/1998/namespace" xml:lang="en" x:space="preserve"> <set> <foo:bar attr="test" xml:lang="en">xyz</foo:bar> </set> </propertyupdate> The value of the property named ("http://foo.bar.com", "bar") then becomes: [children] 3 character information items [attributes] attribute information item, describing "attr" and "xml:lang"
Attachments
- application/x-gzip attachment: rfc2518-propattr.tar.gz
Received on Tuesday, 19 June 2001 11:01:18 UTC