query eXist data

Not sure if this should be in the iDigi Platform or ConnectWare Services forum; sorry if I got it wrong.

I’m trying to follow the examples in the Web Services and Device Management Overview guide for performing XPath/XQuery queries on data uploaded via Dia and the cwm_exist presentation. I’m able to see my data at, for example,
http://sd1-na.idigi.com/ws/data/~/00000000-00000000-00409DFF-FF3CD509/collection1/samples1.xml

According to the document (and the eXist documentation), I should be able to perform an XPath query using the _query URL param, like:
http://sd1-na.idigi.com/ws/data/~/00000000-00000000-00409DFF-FF3CD509/collection1/samples1.xml?_query=//timestamp

When I try that, however, I get a Tomcat error:
HTTP Status 501 - Parameter _query not supported

What’s the proper way to perform an XPath query against ConnectWare data?

It also appears that HTTP POSTing queries doesn’t work, with the server returning “400 Only multipart/form-data posts supported”. Has this functionality been explicitly disabled??

Hello,

In order to ensure better stability and take care of a few eXist issues we encountered, we changed the backend implementation of the /ws/data/ web service for the iDigi servers.

The tradeoff however is, as you noticed, not having support for running XPath/XQuery queries against your data. We’re working on getting the reference documents updated, and we hope in the future we can offer some query mechanisms to supplement the basic GET method for retrieval of collections and documents.

Chris Popp

Thanks for the quick reply, Chris. That’s a serious bummer, however. Without the ability to query the data, what’s the point of even using eXist?

We’re not actually using eXist anymore. We maintained the same structure of responses in case anyone happened to be dependent on the exact format of the response in their application logic.

For the most part, we see people using the /ws/data/ web service as a temporary and convenient place for devices to push up sample data. Occasionally, their application will come in and scrape the data, and insert it into whatever storage mechanism they may be using locally.

Query support is is a powerful option, and I think we would like to investigate offering something similar in the future, as long as we can feel comfortable that including it will not cause any problems with stability.

Chris Popp

I certainly understand the need to maintain stability, I just wish the change had been communicated to users and developers.

Thanks again,
Brian