Thanks for the detailed explanation! I understand now.

> -----Original Message-----
> From: Michael Smith [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, February 10, 2005 8:09 PM
> To: Slide Developers Mailing List
> Subject: Re: Semi-colon stored with namespace name in 
> properties table?
> 
> 
> Warwick Burrows wrote:
> > 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]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to