Introduction

A special domain marshal plug-in was used in many of the examples in this guide to access data from XML document using paths resembling XPath expressions. This appendix describes the supported path forms in more detail and provides additional information about the automatic data conversion capabilities.

This appendix refers to the structure of path values. See the Javadoc for the Path and Step interfaces in the curam.util.common.path package for an explanation of the terminology used here.

When the path from the Binding of a Field object is resolved, and where that path identifies a server interface property, the value returned is the value of the server interface property. If the path is extended with extra path steps, then the domain marshal plug-in class associated with the domain definition of that server interface property is invoked to evaluate the extra path steps with respect to the value of the server interface property. The examples in this guide show how this can be used to extract data from XML documents returned in server interface properties. Two domain marshal plug-in classes are provided with the out-of-the-box Cúram application for this purpose.

The SimpleXPathMarshal class supports the resolution of XPath-like expressions against data returned in a server interface property value. All values are returned as strings, just as they appear in the XML document. The SimpleXPathADCMarshal class adds the ability to apply automatic data conversion and formatting to the resolved string values. This class can be used without automatic data conversion, but it is a little more efficient to use the former class if data conversion is not required. Both classes are defined in the curam.util.client.domain.marshal package.