org.exolab.castor.builder.binding

Class XPathHelper


public class XPathHelper
extends java.lang.Object

Helper class to assemble an XPATH expression to qualify the path of an XML schema structure from the XML schema root.
Author:
Werner Guttmann
Since:
1.1

Method Summary

static String
getSchemaLocation(Structure structure)
Returns a string (XPATH) representation of an XML Schema component.
static void
getSchemaLocation(Structure structure, StringBuffer location)
Deduces an XPATH expression qualifying the path from the schema root to the given structure in question.
static void
getSchemaLocation(Structure structure, StringBuffer location, boolean dealWithAnonTypes)
Deduces an XPATH expression qualifying the path from the schema root to the given structure in question.
static String
getSchemaLocation(Structure structure, boolean dealWithAnonTypes)
Returns a string (XPATH) representation of an XML Schema component.

Method Details

getSchemaLocation

public static String getSchemaLocation(Structure structure)
Returns a string (XPATH) representation of an XML Schema component. This representation is directly adapted from XPath and will used as a key to store the component bindings.
Parameters:
structure - the structure for which to return a representation
Returns:
a string representation of the XPATH identifying an XML Schema component

getSchemaLocation

public static void getSchemaLocation(Structure structure,
                                     StringBuffer location)
Deduces an XPATH expression qualifying the path from the schema root to the given structure in question.
Parameters:
structure - AN XML structure.
location - The XPATH expression to be created.

getSchemaLocation

public static void getSchemaLocation(Structure structure,
                                     StringBuffer location,
                                     boolean dealWithAnonTypes)
Deduces an XPATH expression qualifying the path from the schema root to the given structure in question.
Parameters:
structure - AN XML structure.
location - The XPATH expression to be created.
dealWithAnonTypes - Indicates whether to include XPATH fragments for anonymous types.

getSchemaLocation

public static String getSchemaLocation(Structure structure,
                                       boolean dealWithAnonTypes)
Returns a string (XPATH) representation of an XML Schema component. This representation is directly adapted from XPath and will used as a key to store the component bindings.

The location of a structure is composed of two parts:

  1. the location of the parent structure
  2. the local location of the structure itself

The local location is defined by:

  • If the structure is an Element: the location is the XPath representation "/element_name"
  • If the structure is an Attribute: the location is the XPath representation "/@attribute_name"
  • If the structure is a ComplexType: the location is "complexType:complexType_name"
  • If the structure is a SimpleType: the location is "simpleType:simpleType_name"
  • If the structure is a Enumeration: the location is "enumType:enumType_name"
  • If the structure is a ModelGroup: the location is "group:group_name"
Note that only top-level groups and complexTypes are named and thus will
Parameters:
structure - the structure for which to return a representation.
dealWithAnonTypes - Indicates whether to include XPATH fragments for anonymous types.
Returns:
a string representation of an XML Schema component.

Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com