- From: Wallmer, Martin <Martin.Wallmer@softwareag.com>
- Date: Wed, 8 Oct 2003 10:12:59 +0200
- To: "'Julian Reschke'" <julian.reschke@gmx.de>, "Babich, Alan" <ABabich@filenet.com>, www-webdav-dasl@w3.org
- Message-ID: <DFF2AC9E3583D511A21F0008C7E62106063A9073@daemsg02.software-ag.de>
Hi,
I agree. I will implement and propose.
Regards,
Martin
-----Original Message-----
From: Julian Reschke [mailto:julian.reschke@gmx.de]
Sent: Mittwoch, 8. Oktober 2003 10:09
To: Wallmer, Martin; 'Julian Reschke'; Babich, Alan; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
Hi.
Here's a minum approach that would be easy to implement on a XPath-enabled
backend:
- define a "xpath-match" operator in terms of XPath(1); context node would
be the property element, namespace prefixes would be inherited from query
context. It would behave just as xsl:if in XSL 1.0. Example:
<xpath-match>
<prop><resourcetype/></prop>
<literal xmlns:D="DAV:">D:principal</literal>
</xpath-match>
matches ACL principals.
- sorting could be defined just like xsl:sort (and therefore would default
to the concatenated text content).
Dangers:
- soon, people will want more. XPath2 (datatyping), binding XPath variables,
putting expressions into sort definitions and so on.
I think the best way to proceed is that those who want/need this feature go
ahead and build a working prototype, collect experience and write down a
proposal. Right now I guess that as least 3 out of the 5 server implementors
I'm aware of will not be able to support this any time soon, though.
Julian
--
<green/>bytes GmbH -- http://www.greenbytes.de <http://www.greenbytes.de/>
-- tel:+492512807760
-----Original Message-----
From: www-webdav-dasl-request@w3.org
[mailto:www-webdav-dasl-request@w3.org]On Behalf Of Wallmer, Martin
Sent: Wednesday, October 08, 2003 9:19 AM
To: 'Julian Reschke'; Babich, Alan; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
Hello,
querying XML documents is hard, if you store the properties in an SQL based
system, easy for an XML store. The server would somehow evaluate the xpath
expression, that is passed with that additional operator. XPath is well
defined, no need for extra spec work in this area. As sorting is not defined
in XPath, order could be UNDEFINED for XML valued properties as well.
Another option, order lexically by the value of their text nodes. Currently
properties with XML string values are sorted lexically, which does not
really make sense IMHO for XML.
I don't see side effects for this topic, this operator would not make the
spec much more complex. If we leave this out for the time being, we should
keep it on the TODO list.
We already implemented a similar thing, allowing XPath queries on XML
content, a somehow xml based <contains> operator.
regards,
Martin
-----Original Message-----
From: Julian Reschke [mailto:julian.reschke@gmx.de]
Sent: Dienstag, 7. Oktober 2003 20:52
To: Babich, Alan; Wallmer, Martin; Julian Reschke; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
Actually,
defining a single XPath-based operator probably *would* suffice (we'd still
need to find out how this affects result sorting, though). However I agree
with Alan that we should leave this out of the spec for now.
Julian
--
<green/>bytes GmbH -- http://www.greenbytes.de <http://www.greenbytes.de/>
-- tel:+492512807760
-----Original Message-----
From: Babich, Alan [mailto:ABabich@filenet.com]
Sent: Tuesday, October 07, 2003 6:57 PM
To: Wallmer, Martin; Julian Reschke; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
Martin,
Querying XML documents is a much bigger deal than inventing an optional
operator. There is a whole working group for XML query. Please review what
they have done.
Alan Babich
-----Original Message-----
From: Wallmer, Martin [mailto:Martin.Wallmer@softwareag.com]
Sent: Tuesday, October 07, 2003 3:29 AM
To: 'Julian Reschke'; Wallmer, Martin; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
So lets make it an optional operator
Regards,
Martin
-----Original Message-----
From: Julian Reschke [mailto:julian.reschke@gmx.de]
Sent: Dienstag, 7. Oktober 2003 11:48
To: Wallmer, Martin; www-webdav-dasl@w3.org
Subject: RE: XML valued datatypes
Martin,
the simple answer is that DAV:basicsearch doesn't support queries on
properties that do not have a text content model. See
http://greenbytes.de/tech/webdav/draft-reschke-webdav-search-latest.html#non
-simple-types
<http://greenbytes.de/tech/webdav/draft-reschke-webdav-search-latest.html#no
n-simple-types> . So a server MUST NOT attempt to match in this case.
So yes, a new operator that does XPath-based matching on a property value
may make a lot of sense, but of course it can't become a required operator
for DAV:basicsearch.
Julian
--
<green/>bytes GmbH -- http://www.greenbytes.de <http://www.greenbytes.de/>
-- tel:+492512807760
-----Original Message-----
From: www-webdav-dasl-request@w3.org
[mailto:www-webdav-dasl-request@w3.org]On Behalf Of Wallmer, Martin
Sent: Tuesday, October 07, 2003 11:20 AM
To: www-webdav-dasl@w3.org
Subject: XML valued datatypes
Hi,
when we're talking about datatypes, what about xml value'd properties?
Example:
You have two resources, one you PROPPATCHed with:
<?xml version="1.0" encoding="utf-8"?>
<D:propertyupdate xmlns:D="DAV:">
<D:set>
<D:prop xmlns:Z=" http://www.w3.com/standards/z39.50
<http://www.w3.com/standards/z39.50> ">
<Z:authors>
<Z:Author>Jim Whitehead</Z:Author>
<Z:Author>Roy Fielding</Z:Author>
<Z:Co-author>Lieschen Mueller</Z:Co-author>
</Z:authors>
</D:prop>
</D:set>
</D:propertyupdate>
the second with
<?xml version="1.0" encoding="utf-8"?>
<D:propertyupdate xmlns:D="DAV:">
<D:set>
<D:prop xmlns:Z=" http://www.w3.com/standards/z39.50
<http://www.w3.com/standards/z39.50> ">
<Z:authors>
<Z:Author>Lieschen Mueller</Z:Author>
</Z:authors>
</D:prop>
</D:set>
</D:propertyupdate>
How to find all resources, where Lieschen Mueller was author, not Co-author?
Currently you have to define something like:
<like>
<prop>
<Z:authors/>
</prop>
<literal>%Lieschen Mueller%</literal>
</like>
but of course you will find both resources. Relying on formatting won't
work. So what about something like:
<xpath>
<prop>
<Z:authors/>
</prop>
<literal>[Z:author="Lieschen Mueller"]</literal>
</xpath>
or finding all resources, where a Co-author is defined:
<xpath-is-defined>
<prop>
<Z:authors/>
</prop>
<literal>./Z:Co-author</literal>
</xpath-is-defined>
where the literal is an xpath expression relative to the property (root
element).
Regards,
Martin
__________________________
Martin Wallmer
Research & Development
Software AG ++49 6151 92 1831
Uhlandstr. 12
D 64297 Darmstadt
Received on Wednesday, 8 October 2003 04:13:24 UTC