Hi guys,
I'm wondering why the ':' character is stored in the namespace field of the properties table. Ie. my namespace names are all stored as "DAV:". The ":" is just a separator between the namespace name and the rest of the identifier so why is it stored as part of the namespace? Or am I doing something wrong -- although everything is working just fine as far as having WebFolders recognizing properties that are being stored in the table so I wouldn't think the latter is true.
I also noticed that in the Slide webdav client Qname class that the "toString" method explicitly adds a ":" in the String it returns so my properties are displayed as "DAV::displayname" by this class.
Thanks, Warwick
Warwick,
My understanding is that Webdav properties were designed around the model used for XML namespaces - but this happened before the XML namespace spec got finalised. So there are a few things that are a bit strange...
An XML name consists of 3 things: the local name, the namespace, and the namespace prefix. So, in a name like "DAV:href", the local name is "href", the namespace prefix is "DAV", and (and this is the weird bit) the namespace is "DAV:".
"Modern" usage of XML namespaces would generally give you a namespace that looks something like (I'm just making this one up, it's not actually used) "http://www.webdav.org/namespaces/dav" - and it's that that's equivalent to the "DAV:" used in webdav.
The namespace prefix itself is completely irrelevant - you can use "Warwick" instead of "DAV" in your client if you feel like it :-)
Slide is actually storing the namespace itself (which is correct. The namespace is what matters.), so storing the colon is right. It's just confusing because of use of "DAV:" as an actual namespace.
The 'toString()' method on QName is presumably (I haven't looked at that class in a long time) just a debugging aid - if it's giving you "namespace:localname" as a result, you shouldn't be displaying it anywhere - this would mean that a property in my hypothetical namespace above would be displayed as "http://www.webdav.org/namespaces/dav:propertyname", which is definately wrong.
Mike
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
