![]() |
![]() |
![]() |
|||||||||||
| Summary < XTMPath, Manipulating Topic Map Data Structures < < Home | |||||||||||||
|
SummaryIn this article we presented a programming technique to navigate through Topic Map data structures using an XPath-like approach. This abstraction allows casual programmers to deal with deeply nested internal representations without the need to learn the complete rules. The XTMPath processor operates then on the internal data after all the necessary merging has occurred. This approach, however, assumes that the developer is familiar with the XML structure this information would have when serialized into XTM. This may be a problem in cases where other authoring notations are used. We then showed that XTMPath can also be used to generate data structures. While convenient and certainly less errorprone than using a low-level API, the method cannot automatically provide defaults as prescribed in the XTM standard. Useful for navigation, XTMPath does not have the ambition to become a fully-fledged Topic Map query language. It is meant for localization of information and is adequate for medium sized problems. It is not suitable for heavy duty as there comes some performance penalty with the implementation. While as proof-of-concept sufficient, the actual implementation lacks a couple of features, for instance, that only a small subset of XPath predicate operators were adopted. There is also no technical reason, why operations like update and delete should not be covered. Of not only academic interest, though, is how the knowledge about a particular XML structure, such that of XTM, impacts on the implementation of an XPath-like processor. Only this knowledge makes actually DWIMming possible. |
||||||||||||