XML InfoSet and property value preservation

Lately we've been talking about what parts of a property value the 
server must preserve, and what parts it can lose. Some examples:
  - Whitespace in values (TEXT or Mixed) must be preserved, we all 
agreed on this
  - Whitespace within element tags might be insignificant, e.g. extra 
spaces between attribute declarations
  - Exact prefixes used to declare namespaces (can the server replace 
the "C:" prefix for a namespace with "ns-1" or other when it 
reconstructs the value)
  - Attributes and values on the property element itself...

Rather than attack these questions piecemeal, Julian suggested a more 
principled approach of using XML InfoSet.  So I went off to read the 
spec:
http://www.w3.org/TR/xml-infoset/

While it would indeed be great to refer to another standard, I wanted 
to raise a few issues.

1.  It's hard to read.  There are no examples. While some things are 
clear -- e.g. for an element, it states that the namespace name and 
local name of the element are part of the InfoSet -- I don't find that 
the "negative space" is clearly defined.  As a client implementor, it's 
hard for me to read this and determine what the server might legally 
change in the property value I might provide.

2.  InfoSet requires the prefixes of namespaces to be preserved.  Some 
WebDAV servers today do not do this so this would make them 
non-compliant.  Similarly, if I'm reading it correctly, it requires 
that namespace declarations be preserved as part of the element where 
the client declared them -- another requirement that existing servers 
don't meet.

3.  It doesn't deal with the boundary that WebDAV defines between 
property name and property value.  We still ought to specify that stuff 
ourselves.  For example, are attributes on the property name element 
considered part of the property value.

Has anybody besides Julian and myself read this spec?  Does anybody 
have thoughts on whether this approach is still advisable?

thanks,
Lisa

Received on Thursday, 3 November 2005 20:44:38 UTC