org.exolab.castor.builder.binding

Class ExtendedBinding

public class ExtendedBinding extends Binding

This class adds the necessary logic to a Binding Object to bring the gap between the XML Schema Object Model and the Binding File. It queries the Binding Object to retrieve the the associated ComponentBinding.

An "XPath like" representation of an XML Schema structure is built to lookup the component bindings in their storage structure. The algorithm used to build the "XPath like" representation is summarized in the following example: Given the XML schema declaration:

        <xsd:element name="foo">
            <xsd:complextype>
                <xsd:attribute name="bar" type="xsd:string"/>
            </xsd:complextype>
        </xsd:element>>
    
The path to identify the attribute 'bar' will be:
        /foo/@bar
    
The keywords complexType and group are used to identify respectively an XML Schema ComplexType and a Model Group definition.

Version: $Revision: 1.2 $ $Date: 2003/03/03 09:57:15 $

Author: Arnaud Blandin

Field Summary
protected static StringATTRIBUTE_PREFIX
protected static StringCOMPLEXTYPE_ID
protected static StringGROUP_ID
protected static StringPATH_SEPARATOR
Constants needed to create the XPath
Constructor Summary
ExtendedBinding()
Default constructor.
Method Summary
ComponentBindingTypegetComponentBindingType(Annotated annotated)

Returns the ComponentBinding that corresponds to the given Annotated XML Schema structure An Schema location will be built for the given Annotated XML schema structure.

Field Detail

ATTRIBUTE_PREFIX

protected static final String ATTRIBUTE_PREFIX

COMPLEXTYPE_ID

protected static final String COMPLEXTYPE_ID

GROUP_ID

protected static final String GROUP_ID

PATH_SEPARATOR

protected static final String PATH_SEPARATOR
Constants needed to create the XPath

Constructor Detail

ExtendedBinding

public ExtendedBinding()
Default constructor.

See Also: java.lang.Object#Object()

Method Detail

getComponentBindingType

public ComponentBindingType getComponentBindingType(Annotated annotated)

Returns the ComponentBinding that corresponds to the given Annotated XML Schema structure An Schema location will be built for the given Annotated XML schema structure. .

Parameters: annotated the XML Schema annotated structure for which to query the Binding object for a ComponentBinding.

Returns: the ComponentBinding that corresponds to the given Annotated XML Schema structure.

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