next up previous contents
Next: A. Selected XSLT Scripts Up: Großer Beleg XML Query Previous: 5. Evaluation of XSLT   Contents

Subsections

6. Summary

The task was to evaluate XML query languages for querying XML based repositories with an emphasis on XMI documents. For the evaluation I had to implement an experimental application in the context of software engineering, especially code generation.

The application I chose is a component of the OCL compiler developed by Frank Finger in [FF]. It provides the subset of the information of a UML model to the OCL compiler. This component has been described extensively in chapter 3.

For the implementation I gave XML-QL the first chance. After some experimenting I found out, that XML-QL isn't powerful enough to implement this component. This hit me by surprise. When I started with XML-QL I had the naive assumption, that all of the more complex query languages could handle this task. The exact reasons has been analyzed in chapter 4.

When XML-QL went out of the arena, I decided together with my tutor not to try another query language. Instead I did the implementation in pure Java. There were two reasons for this:

  1. The prototypes of several query languages proofed to be instable and incomplete. It would be very hard to predict, how much time an implementation would take, if possible at all.
  2. The OCL compiler became more and more important for the chair. The component to be developed by me was the last part missing. The java implementation was a safe bet, that the work could be finished in a deterministic amount of time.
After the java implementation I got interested in XSLT. This is a quite powerful query language, and so I tried, whether it could implement the component for the OCL compiler. Since the java implementation was already up and running, I didn't work on a fully functional version to be integrated with the OCL compiler. Instead, I concentrated on the problems I found with XML-QL. In chapter 5 I describe two XSLT scripts, solving these two problems. This suggests, that it is at least possible to implement the component in XSLT.

6.0.0.0.1 What finally came out.

6.0.0.0.2 Usability of XML query languages.

Now a word on the usability of the query languages (XML-QL and XSLT) in real life. To be honest I cannot say something really significant about this. The main problem for me was the quality of the prototypes I used. They are instable and incomplete. Sometimes something failed and I didn't know why. Sometimes something worked and I didn't know why. Error messages are poorly expressive, and often there is simply a NullPointerException thrown. I cannot imagine, how to use these prototypes for something more demanding than an evaluation exercise. So I didn't get the chance to use the query languages on a real task, and I cannot say, how they suit this.

For a practical application of query languages the implementations will have to become much more better. Until then, XML query languages will be of academic interest only.


next up previous contents
Next: A. Selected XSLT Scripts Up: Großer Beleg XML Query Previous: 5. Evaluation of XSLT   Contents
Ralf Wiebicke 2005-11-25