Saturday, July 17, 2010

Answering mail #12

States Mphinyane wrote:

I was recently on the IBM site and you were listed as one of the expects on XML and that seems to be area that i have serious problems with.

The Problem

I am an intern at Botswana Harvard Partnership which is a research institute in matters relating to HIV/AIDS. Currently we are running a study in noe village just outside the capital city. In this study, we use GPS devices so that we can know to which households we have been to. Our job is to pull the way points off of these GPS's and the data comes out the form of an XML file.We do so by using a software called GPS babel which are installed on Ubuntu.We compile all these XML and to come with one XML file to show us the coverage of the study so far because this software has a google maps functionality. Now we do not want to keep appending new XML code each the GPS's come back from the field becaues it can get very tricky and confusing working with thousands of lines of code. We want edit the XML file for each device so that the researchers can return directly to the households they had been to previously.We want to be able to trace our way back to each household. I don't even know if i'm making any sense but that's the best way i can explain it.If you can manage you can give me a call at 76XXXXXX,but of course you would need an extension +267. Thank you in advance.

Hello States,

I am not entirely sure if I understand the question well. This is what I got from the mail:

1. You have multiple people, each with his/her own GPS device
2. The GPS device collects data where you have been
3. The GPS device allows you to revisit places you have been earlier
4. Each person only revisits places he/she has been before, not places visited by a colleague
5. GPS devices can export data in a format readable by GPSBable (not sure which format and whether it is XML or not)
6. GPSBable outputs KML (most probably), readable by Google Maps
7. The GPSBable translations are added to one large KML file by hand
8. The KML file is growing so large that editing by hand is no longer desirable

Am I right so far? (I have the most doubts at point 4.)

Now, if I understand well, you are looking for a way where you can just input individual, smaller XML (probably KML) files to a data repository and have the large all-in-one KML file generated automatically. Correct?

In this case, I would recommend using eXist-db, an open source, native XML database available at http://exist.sourceforge.net/

Using this product, you could add the XML files using a WebDAV connection and query for the large overview file using XQuery.

Then where I am not sure: do you also need to transfer the stored KML files back to the GPS devices? Or is that unnecessary because of point 4.?

Let me know if I understood well and let me know if you need more pointers on using eXist. If you think it could help, please let me know more about the GPS devices and the data format they export.

Kind regards,

Adriaan.

Tuesday, July 13, 2010

IBM developerWorks: "Query XML documents outside an XML database"

IBM published my latest article today:

www.ibm.com
Processing XML in Java usually requires a lot of code and overhead. If you use XQuery, you can do a lot more with a lot less code, even when the XML is stored outside of XML databases. Learn how to use XQuery with Java technology by extracting the hidden information from XML-based Maven POM files.