jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Julian Reschke <julian.resc...@gmx.de>
Subject Re: properties with XML-Values; patch
Date Thu, 21 Feb 2008 09:26:06 GMT
Angela Schreiber wrote:
> ...
> so, i'd like to understand what is the goal of custom
> xml properties.
> ...

Well, the same as using XML instead of text, I guess. Such as putting 
things like marked-up text into properties:

   <D:prop><X:comment foo='bar' xmlns:xhtml="..." xmlns:X="...">This is 
an <xhtml:em>important</xhtml:em> change.</X:comment></D:prop>

In JCR (and therefore Jackrabbit), this kind of structure would 
preferably be stored in nodes, not properties, I assume (a design that I 
don't necessarily like).

So what we *have* to do is to make sure that somebody wants to set a 
property value as above, it will either work, or fail upon PROPPATCH.

For the latter, check whether the property XML element ("comment") has 
element child nodes. If it does, reject the request.

If we want enable Jackrabbit to store things like that, we need to map 
the WebDAV property to something over than a single-valued string. It 
may be possible to use JCR child nodes, but I'm not sure how that fits 
into the Jackrabbit WebDAV design.

An alternative would be to tunnel the value in a way that it as least 
unlikely to be confused with other property values, such as a 
multivalued string property:

comment[0] = "WebDAV XML property"
comment[1] = content serialized as XML, including containing element, 
attributes and namespace decls. (*)

BR, Julian

(*) See <http://greenbytes.de/tech/webdav/rfc4918.html#rfc.section.4.3.1>

View raw message