Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Wiki Markup
{scrollbar}
Anchor

This article is organized into the following sections : -

OpenEJB Schema Document

The following schema uses the OpenEJB namespace, and requires elements from the Geronimo Naming, Geronimo Security, and Geronimo System namespaces. Furthermore, it has a required attribute to identify its configuration name, and an optional attribute to select a parent configuration.The openejb-jar-2.1.xsd defines the schema for the Geronimo Deployment Plan for an EJB JAR.
The attributes here are:

xmlns

The main namespace for the deployment plan, which should always be http://www.openejb.org/xml/ns/openejb-jar-2.1

xmlns:naming

A secondary namespace, used to identify the common elements for resolving EJB references, resource references, and web services references. If any of those need to be resolved in the deployment plan, this attribute should be present, and should be set to http://geronimo.apache.org/xml/ns/naming-1.1

xmlns:security
A secondary namespace, used to identify the common elements for security configuration. If there are any security settings in the deployment plan, this attribute should be present, and should be set to http://geronimo.apache.org/xml/ns/security-1.1

xmlns:sys
A secondary namespace, used to identify the common elements for common libraries and module-scoped services. If there are any of those present in the deployment plan, this attribute should be present, and should be set to http://geronimo.apache.org/xml/ns/deployment-1.1

xmlns:pkgen
A secondary namespace, used to identify the common elements for configuring automatic primary key generation for CMP entity beans (such as, using a sequence or auto-increment column). If there are any primary key generators present in the deployment plan, this attribute should be present, and should be set to http://www.openejb.org/xml/ns/pkgen-2.0

configId
A unique name identifying this module. If deployed as a standalone EJB JAR, this name is used to identify the module to the deployment tool (to start, stop, undeploy, or redeploy the EJB JAR).

parentId
Identifies the parent configuration for this EJB JAR (the value specified here should match the configId for that module). If deployed as a standalone EJB JAR, this can be used to make the EJB JAR depend on another module such as another standalone EJB JAR or a J2EE Connector (or it should otherwise be omitted or set to the usual parent for J2EE modules, geronimo/j2ee-server/1.0/car). If deployed as part of an EAR this is usually not necessary, as EAR configuration will be the parent of this module.

Code Block
xml
xml
borderStylesolid
titleopenejb-jar-2.1.xsd
<xs:schema
    xmlns:openejb="http://www.openejb.org/xml/ns/openejb-jar-2.1"
    targetNamespace="http://www.openejb.org/xml/ns/openejb-jar-2.1"
    xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1"
    xmlns:security="http://geronimo.apache.org/xml/ns/security-1.1"
    xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.1"
    xmlns:pkgen="http://www.openejb.org/xml/ns/pkgen-2.0"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    version="1.0">

    <xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.1" schemaLocation="geronimo-naming-1.1.xsd"/>
    <xs:import namespace="http://geronimo.apache.org/xml/ns/security-1.1" schemaLocation="geronimo-security-1.1.xsd"/>
    <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-module-1.1.xsd"/>
    <xs:import namespace="http://www.openejb.org/xml/ns/pkgen-2.0" schemaLocation="openejb-pkgen-2.0.xsd"/>

    <xs:element name="openejb-jar" type="openejb:openejb-jarType"/>

    <xs:complexType name="emptyType"/>

    <xs:complexType name="openejb-jarType">
        <xs:sequence>
            <xs:element ref="sys:environment" minOccurs="0"/>

            <!-- use a ref to put this element in the naming namespace rather than openejb namespace-->
            <xs:element ref="naming:cmp-connection-factory" minOccurs="0"/>
            <xs:element name="ejb-ql-compiler-factory" type="xs:string" minOccurs="0"/>
            <xs:element name="db-syntax-factory" type="xs:string" minOccurs="0"/>
            <xs:element name="enforce-foreign-key-constraints" type="openejb:emptyType" minOccurs="0"/>

            <xs:element name="enterprise-beans">
                <xs:complexType>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element name="session" type="openejb:session-beanType"/>
                        <xs:element name="entity" type="openejb:entity-beanType"/>
                        <xs:element name="message-driven" type="openejb:message-driven-beanType"/>
                    </xs:choice>
                </xs:complexType>
            </xs:element>

            <xs:element name="relationships" type="openejb:relationshipsType" minOccurs="0">
                <xs:unique name="relationship-name-uniqueness">
                    <xs:selector xpath="openejb:ejb-relation"/>
                    <xs:field xpath="openejb:ejb-relation-name"/>
                </xs:unique>
            </xs:element>

            <xs:element ref="naming:message-destination" minOccurs="0" maxOccurs="unbounded"/>

            <xs:element ref="security:security" minOccurs="0"/>
            <xs:element ref="sys:gbean" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <!-- session bean section-->
    <xs:complexType name="session-beanType">
        <xs:sequence>
            <xs:element name="ejb-name" type="xs:string"/>
            <xs:element name="jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="local-jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:group ref="openejb:tssGroup" minOccurs="0"/>

            <xs:group ref="naming:jndiEnvironmentRefsGroup"/>
            <xs:element name="web-service-address" type="xs:string" minOccurs="0"/>
            <xs:element name="web-service-virtual-host" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="web-service-security" type="openejb:web-service-securityType" minOccurs="0"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>

    <xs:group name="tssGroup">
        <xs:sequence>
            <xs:choice>
                <xs:element name="tss-link" type="xs:string"/>
                <xs:element name="tss" type="naming:patternType"/>
            </xs:choice>
        </xs:sequence>
    </xs:group>

    <xs:complexType name="tssType">
        <xs:sequence>
            <!-- this is object name group from geronimo-naming.xsd -->
            <xs:element name="domain" type="xs:string" minOccurs="0"/>
            <xs:element name="server" type="xs:string" minOccurs="0"/>
            <xs:element name="application" type="xs:string" minOccurs="0"/>
            <xs:element name="module" type="xs:string" minOccurs="0"/>
            <!--            <xs:element name="type" type="xs:string" minOccurs="0"/>-->
            <xs:element name="name" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="web-service-securityType">
        <xs:sequence>
            <xs:element name="security-realm-name" type="xs:string"/>
            <xs:element name="realm-name" type="xs:string" minOccurs="0"/>
            <xs:element name="transport-guarantee" type="openejb:transport-guaranteeType"/>
            <xs:element name="auth-method" type="openejb:auth-methodType"/>
        </xs:sequence>
    </xs:complexType>

    <xs:simpleType name="transport-guaranteeType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="NONE"/>
            <xs:enumeration value="INTEGRAL"/>
            <xs:enumeration value="CONFIDENTIAL"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="auth-methodType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="BASIC"/>
            <xs:enumeration value="DIGEST"/>
            <xs:enumeration value="CLIENT-CERT"/>
            <xs:enumeration value="NONE"/>
        </xs:restriction>
    </xs:simpleType>

    <!--entity bean section -->
    <xs:complexType name="entity-beanType">
        <xs:sequence>
            <xs:element name="ejb-name" type="xs:string"/>
            <xs:element name="jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="local-jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:group ref="openejb:tssGroup" minOccurs="0"/>

            <xs:sequence minOccurs="0">
                <xs:element name="table-name" type="xs:string"/>
                <xs:element name="static-sql" type="openejb:emptyType" minOccurs="0"/>
                <xs:element name="cmp-field-mapping" maxOccurs="unbounded">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="cmp-field-name" type="xs:string"/>
                            <xs:element name="cmp-field-class" type="xs:string" minOccurs="0"/>
                            <xs:element name="table-column" type="xs:string"/>
                            <xs:element name="sql-type" type="xs:string" minOccurs="0"/>
                            <xs:element name="type-converter" type="xs:string" minOccurs="0"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
                <xs:element name="primkey-field" type="xs:string" minOccurs="0"/>
                <xs:element ref="pkgen:key-generator" minOccurs="0"/>
                <xs:element name="prefetch-group" minOccurs="0">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="group" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:groupType"/>
                            <xs:element name="entity-group-mapping" minOccurs="0"
                                type="openejb:entity-group-mappingType"/>
                            <xs:element name="cmp-field-group-mapping" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:cmp-field-group-mappingType"/>
                            <xs:element name="cmr-field-group-mapping" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:cmr-field-group-mappingType"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>

            <xs:element name="cache" minOccurs="0">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="isolation-level">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:enumeration value="read-uncommitted"/>
                                    <xs:enumeration value="read-committed"/>
                                    <xs:enumeration value="repeatable-read"/>
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:element>
                        <xs:element name="size" type="xs:int"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>

            <xs:group ref="naming:jndiEnvironmentRefsGroup"/>

            <xs:element name="query" type="openejb:queryType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>

    <xs:complexType name="groupType">
        <xs:sequence>
            <xs:element name="group-name" type="xs:string"/>
            <xs:element name="cmp-field-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="cmr-field" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="cmr-field-name" type="xs:string"/>
                        <xs:element name="group-name" type="xs:string" minOccurs="0"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="entity-group-mappingType">
        <xs:sequence>
            <xs:element name="group-name" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="cmp-field-group-mappingType">
        <xs:sequence>
            <xs:element name="group-name" type="xs:string"/>
            <xs:element name="cmp-field-name" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="cmr-field-group-mappingType">
        <xs:sequence>
            <xs:element name="group-name" type="xs:string"/>
            <xs:element name="cmr-field-name" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="queryType">
        <xs:sequence>
            <xs:element name="query-method">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="method-name" type="xs:string"/>
                        <xs:element name="method-params">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="method-param" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="result-type-mapping" minOccurs="0" type="xs:string"/>
            <xs:element name="ejb-ql" type="xs:string" minOccurs="0"/>
            <xs:element name="no-cache-flush" minOccurs="0"/>
            <xs:element name="group-name" type="xs:string" minOccurs="0"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="relationshipsType">
        <xs:sequence>
            <xs:element name="ejb-relation" type="openejb:ejb-relationType" maxOccurs="unbounded">
                <xs:unique name="role-name-uniqueness">
                    <xs:selector xpath=".//openejb:ejb-relationship-role-name"/>
                    <xs:field xpath="."/>
                </xs:unique>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="ejb-relationType">
        <xs:sequence>
            <xs:element name="ejb-relation-name" type="xs:string" minOccurs="0"/>
            <xs:element name="many-to-many-table-name" type="xs:string" minOccurs="0"/>
            <xs:element name="ejb-relationship-role" type="openejb:ejb-relationship-roleType" maxOccurs="2"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="ejb-relationship-roleType">
        <xs:sequence>
            <xs:element name="ejb-relationship-role-name" type="xs:string" minOccurs="0"/>
            <xs:element name="relationship-role-source">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="ejb-name" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="cmr-field" minOccurs="0">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="cmr-field-name" type="xs:string"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="foreign-key-column-on-source" minOccurs="0"/>
            <xs:element name="role-mapping">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="cmr-field-mapping" maxOccurs="unbounded">
                            <xs:complexType>
                                <xs:sequence>
                                    <xs:element name="key-column" type="xs:string"/>
                                    <xs:element name="foreign-key-column" type="xs:string"/>
                                </xs:sequence>
                            </xs:complexType>
                        </xs:element>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>


    <!--message driven bean section-->
    <xs:complexType name="message-driven-beanType">
        <xs:sequence>
            <xs:element name="ejb-name" type="xs:string"/>
            <xs:element ref="naming:resource-adapter"/>
            <xs:element name="activation-config"
                type="openejb:activation-configType"
                minOccurs="0"/>

            <xs:group ref="naming:jndiEnvironmentRefsGroup"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>

    <xs:complexType name="activation-configType">
        <xs:sequence>
            <xs:element name="description"
                type="xs:string"
                minOccurs="0"
                maxOccurs="unbounded"/>
            <xs:element name="activation-config-property"
                type="openejb:activation-config-propertyType"
                maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="activation-config-propertyType">
        <xs:sequence>
            <xs:element name="activation-config-property-name"
                type="xs:string">
            </xs:element>
            <xs:element name="activation-config-property-value"
                type="xs:string">
            </xs:element>
        </xs:sequence>
    </xs:complexType>

</xs:schema>

Schema Document Properties

Target Namespace

http://www.openejb.org/xml/ns/openejb-jar-2.1

Version

1.1

Element and Attribute Namespaces

Global element and attribute declarations belong to this schema's target
namespace.
By default, local element declarations belong to this schema's target
namespace.
By default, local attribute declarations have no namespace.

Schema Composition

This schema imports schema(s) from the following namespace(s):

http://geronimo.apache.org/xml/ns/naming-1.1

(at geronimo-naming-1.1.xsd)

http://geronimo.apache.org/xml/ns/security-1(at

geronimo-security-1.1.xsd)

http://geronimo.apache.org/xml/ns/deployment-1.1

(at geronimo-module-1.1.xsd)

http://www.openejb.org/xml/ns/pkgen-2.0

(at openejb-pkgen-2.0.xsd)

Declared Namespaces

Prefix

Namespace

xml

http://www.w3.org/XML/1998/namespace

openejb

http://www.openejb.org/xml/ns/openejb-jar-2.1

naming

http://geronimo.apache.org/xml/ns/naming-1. 1

security

http://geronimo.apache.org/xml/ns/security-1.1

sys

http://geronimo.apache.org/xml/ns/deployment-1.1

pkgen

http://www.openejb.org/xml/ns/pkgen-2.0

xs

http://www.w3.org/2001/XMLSchema

Code Block
xml
xml
borderStylesolid
titleSchema Component Representation
<xs:schema>
targetNamespace="http://www.openejb.org/xml/ns/openejb-jar-2.1"
 elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    version="1.0">
<xs:import namespace="http://geronimo.apache.org/xml/ns/naming-1.1" schemaLocation="geronimo-naming-1.1.xsd"/>
    <xs:import namespace="http://geronimo.apache.org/xml/ns/security-1.1" schemaLocation="geronimo-security-1.1.xsd"/>
    <xs:import namespace="http://geronimo.apache.org/xml/ns/deployment-1.1" schemaLocation="geronimo-module-1.1.xsd"/>
    <xs:import namespace="http://www.openejb.org/xml/ns/pkgen-2.0" schemaLocation="openejb-pkgen-2.0.xsd"/>
....
</xs:schema>

Global Declarations

Element: openejb-jar
Anchor
openejb-jar
openejb-jar

Element:

openejb-jar

Name

openejb-jar

Type

openejb:openejb-jarType

Nillable

no

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: openejb-jar
<openejb:openejb-jar
  configId=" xs:string [1]" 
  parentId=" xs:string [0..1]"> 
 
<sys:import> ... </sys:import> [0..*] 
<sys:dependency> ... </sys:dependency> [0..*] 
<naming:cmp-connection-factory> ... </naming:cmp-connection-factory> [0..1] 
<openejb:ejb-ql-compiler-factory>  xs:string </openejb:ejb-ql-compiler-factory> [0..1] 
<openejb:db-syntax-factory>  xs:string </openejb:db-syntax-factory> [0..1] 
<openejb:enforce-foreign-key-constraints>  openejb:emptyType  </openejb:enforce-foreign-key-constraints> [0..1] 
<openejb:enterprise-beans> [1] 
 Start Choice [0..*]  
 
<openejb:session>  openejb:session-beanType  </openejb:session> [1] 
<openejb:entity>  openejb:entity-beanType  </openejb:entity> [1] 
<openejb:message-driven>  openejb:message-driven-beanType  </openejb:message-driven> [1] 
End Choice 
</openejb:enterprise-beans>
<openejb:relationships>  openejb:relationshipsType  
<!-- 
 Uniqueness Constraint -  relationship-name-uniqueness  
Selector - openejb:ejb-relation 
Field(s) - openejb:ejb-relation-name 
-->
</openejb:relationships> [0..1] 
<naming:message-destination> ... </naming:message-destination> [0..*] 
<security:security> ... </security:security> [0..1] 
<sys:gbean> ... </sys:gbean> [0..*] 
</openejb:openejb-jar>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: openejb-jar
<xs:element name=openejb-jar type=openejb:openejb-jarType/>

Global Definitions

Complex Type: activation-config-propertyType
Anchor
activation-config
activation-config

Complex Type:

activation-config-propertyType

Super-types:

None

Sub-types:

None

Name

activation-config-propertyType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: activation-config-propertyType
<...> 
 
<openejb:activation-config-property-name>  xs:string </openejb:activation-config-property-name> [1] 
<openejb:activation-config-property-value>  xs:string </openejb:activation-config-property-value> [1] 
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: activation-config-propertyType
<xs:complexType name="activation-config-propertyType">
<xs:sequence>
<xs:element name="activation-config-property-name" type="  xs:string "/>
<xs:element name="activation-config-property-value" type="  xs:string "/>
</xs:sequence>
</xs:complexType>

Complex Type: activation-configType
Anchor
activationconfigType
activationconfigType

Complex Type:

activation-configType

Super-types:

None

Sub-types:

None

Name

activation-configType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: activation-configType
<...> 
 
<openejb:description>  xs:string </openejb:description> [0..*] 
<openejb:activation-config-property>  openejb:activation-config-propertyType  </openejb:activation-config-property> [1..*] 
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: activation-configType
<xs:complexType name="activation-configType">
<xs:sequence>
<xs:element name="description" type="  xs:string " minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="activation-config-property" type="  openejb:activation-config-propertyType  " maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>

Complex Type: cmp-field-group-mappingType
Anchor
cmpMappingType
cmpMappingType

Complex Type:

cmp-field-group-mappingType

Super-types:

None

Sub-types:

None

Name

cmp-field-group-mappingType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: cmp-field-group-mappingType
<...> 
 
<openejb:group-name>  xs:string </openejb:group-name> [1] 
<openejb:cmp-field-name>  xs:string </openejb:cmp-field-name> [1] 
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: cmp-field-group-mappingType
<xs:complexType name="cmp-field-group-mappingType">
<xs:sequence>
<xs:element name="group-name" type="  xs:string "/>
<xs:element name="cmp-field-name" type="  xs:string "/>
</xs:sequence>
</xs:complexType>

Complex Type: cmr-field-group-mappingType
Anchor
cmrMappingType
cmrMappingType

Complex Type:

cmr-field-group-mappingType

Super-types:

None

Sub-types:

None

Name

cmr-field-group-mappingType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: cmr-field-group-mappingType
<...> 
 
<openejb:group-name>  xs:string </openejb:group-name> [1] 
<openejb:cmr-field-name>  xs:string </openejb:cmr-field-name> [1] 
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: cmr-field-group-mappingType
<xs:complexType name="cmr-field-group-mappingType">
<xs:sequence>
<xs:element name="group-name" type="  xs:string "/>
<xs:element name="cmr-field-name" type="  xs:string "/>
</xs:sequence>
</xs:complexType>

Complex Type: ejb-relationship-roleType
Anchor
ejbroleType
ejbroleType

Complex Type:

ejb-relationship-roleType

Super-types:

None

Sub-types:

None

Name

ejb-relationship-roleType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: ejb-relationship-roleType
<...> 
 
<openejb:ejb-relationship-role-name>  xs:string </openejb:ejb-relationship-role-name> [0..1] 
<openejb:relationship-role-source> [1] 
 
<openejb:ejb-name>  xs:string </openejb:ejb-name> [1] 
</openejb:relationship-role-source>
<openejb:cmr-field> [0..1] 
 
<openejb:cmr-field-name>  xs:string </openejb:cmr-field-name> [1] 
</openejb:cmr-field>
<openejb:foreign-key-column-on-source> ... </openejb:foreign-key-column-on-source> [0..1] 
<openejb:role-mapping> [1] 
 
<openejb:cmr-field-mapping> [1..*] 
 
<openejb:key-column>  xs:string </openejb:key-column> [1] 
<openejb:foreign-key-column>  xs:string </openejb:foreign-key-column> [1] 
</openejb:cmr-field-mapping>
</openejb:role-mapping>
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: ejb-relationship-roleType
<xs:complexType name="ejb-relationship-roleType">
<xs:sequence>
<xs:element name="ejb-relationship-role-name" type="  xs:string " minOccurs="0"/>
<xs:element name="relationship-role-source">
<xs:complexType>
<xs:sequence>
<xs:element name="ejb-name" type="  xs:string "/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="cmr-field" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="cmr-field-name" type="  xs:string "/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="foreign-key-column-on-source" minOccurs="0"/>
<xs:element name="role-mapping">
<xs:complexType>
<xs:sequence>
<xs:element name="cmr-field-mapping" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="key-column" type="  xs:string "/>
<xs:element name="foreign-key-column" type="  xs:string "/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>

Complex Type: ejb-relationType
Anchor
ejbRelationType
ejbRelationType

Complex Type:

ejb-relationType

Super-types:

None

Sub-types:

None

Name

ejb-relationType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: ejb-relationType
<...> 
 
<openejb:ejb-relation-name>  xs:string </openejb:ejb-relation-name> [0..1] 
<openejb:many-to-many-table-name>  xs:string </openejb:many-to-many-table-name> [0..1] 
<openejb:ejb-relationship-role>  openejb:ejb-relationship-roleType  </openejb:ejb-relationship-role> [1..2] 
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: ejb-relationType
<xs:complexType name="ejb-relationType">
<xs:sequence>
<xs:element name="ejb-relation-name" type="  xs:string " minOccurs="0"/>
<xs:element name="many-to-many-table-name" type="  xs:string " minOccurs="0"/>
<xs:element name="ejb-relationship-role" type="  openejb:ejb-relationship-roleType  " maxOccurs="2"/>
</xs:sequence>
</xs:complexType>

Complex Type: emptyType
Anchor
emptyType
emptyType

Complex Type:

emptyType

Super-types:

None

Sub-types:

None

Name

emptyType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: emptyType
<.../>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: emptyType

<xs:complexType name="emptyType"/>

Complex Type: entity-beanType
Anchor
entitybeanType
entitybeanType

Complex Type:

entity-beanType

Super-types:

None

Sub-types:

None

Name

entity-beanType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: entity-beanType
<...
id=" xs:ID [0..1]">
<openejb:ejb-name> xs:string </openejb:ejb-name> [1]
<openejb:jndi-name> xs:string </openejb:jndi-name> [0..*]
<openejb:local-jndi-name> xs:string </openejb:local-jndi-name> [0..*]
Start Group: openejb:tssGroup [0..1]
Start Choice [1]
<openejb:tss-target-name> xs:string </openejb:tss-target-name> [1]
<openejb:tss-link> xs:string </openejb:tss-link> [1]
<openejb:tss> openejb:tssType </openejb:tss> [1]
End Choice
End Group: openejb:tssGroup
Start Sequence [0..1]
<openejb:table-name> xs:string </openejb:table-name> [1]
<openejb:cmp-field-mapping> [1..*]
<openejb:cmp-field-name> xs:string </openejb:cmp-field-name> [1]
<openejb:cmp-field-class> xs:string </openejb:cmp-field-class> [0..1]
<openejb:table-column> xs:string </openejb:table-column> [1]
<openejb:sql-type> xs:string </openejb:sql-type> [0..1]
<openejb:type-converter> xs:string </openejb:type-converter> [0..1]
</openejb:cmp-field-mapping>
<openejb:primkey-field> xs:string </openejb:primkey-field> [0..1]
<pkgen:key-generator> ... </pkgen:key-generator> [0..1]
<openejb:prefetch-group> [0..1]
<openejb:group> openejb:groupType </openejb:group> [0..*]
<openejb:entity-group-mapping> openejb:entity-group-mappingType </openejb:entity-group-mapping> [0..1]
<openejb:cmp-field-group-mapping> openejb:cmp-field-group-mappingType </openejb:cmp-field-group-mapping> [0..*]
<openejb:cmr-field-group-mapping> openejb:cmr-field-group-mappingType </openejb:cmr-field-group-mapping> [0..*]
</openejb:prefetch-group>
End Sequence
<openejb:query> openejb:queryType </openejb:query> [0..*]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: entity-beanType
 <xs:complexType name="entity-beanType">
        <xs:sequence>
            <xs:element name="ejb-name" type="xs:string"/>
            <xs:element name="jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="local-jndi-name" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            <xs:group ref="openejb:tssGroup" minOccurs="0"/>

            <xs:sequence minOccurs="0">
                <xs:element name="table-name" type="xs:string"/>
                <xs:element name="static-sql" type="openejb:emptyType" minOccurs="0"/>
                <xs:element name="cmp-field-mapping" maxOccurs="unbounded">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="cmp-field-name" type="xs:string"/>
                            <xs:element name="cmp-field-class" type="xs:string" minOccurs="0"/>
                            <xs:element name="table-column" type="xs:string"/>
                            <xs:element name="sql-type" type="xs:string" minOccurs="0"/>
                            <xs:element name="type-converter" type="xs:string" minOccurs="0"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
                <xs:element name="primkey-field" type="xs:string" minOccurs="0"/>
                <xs:element ref="pkgen:key-generator" minOccurs="0"/>
                <xs:element name="prefetch-group" minOccurs="0">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="group" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:groupType"/>
                            <xs:element name="entity-group-mapping" minOccurs="0"
                                type="openejb:entity-group-mappingType"/>
                            <xs:element name="cmp-field-group-mapping" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:cmp-field-group-mappingType"/>
                            <xs:element name="cmr-field-group-mapping" minOccurs="0" maxOccurs="unbounded"
                                type="openejb:cmr-field-group-mappingType"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>

            <xs:element name="cache" minOccurs="0">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="isolation-level">
                            <xs:simpleType>
                                <xs:restriction base="xs:string">
                                    <xs:enumeration value="read-uncommitted"/>
                                    <xs:enumeration value="read-committed"/>
                                    <xs:enumeration value="repeatable-read"/>
                                </xs:restriction>
                            </xs:simpleType>
                        </xs:element>
                        <xs:element name="size" type="xs:int"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>

            <xs:group ref="naming:jndiEnvironmentRefsGroup"/>

            <xs:element name="query" type="openejb:queryType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>

Complex Type: entity-group-mappingType
Anchor
entityMappingType
entityMappingType

Complex Type:

entity-group-mappingType

Super-types:

None

Sub-types:

None

Name

entity-group-mappingType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: entity-group-mappingType
<...>
<openejb:group-name> xs:string </openejb:group-name> [1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: entity-group-mappingType
<xs:complexType name="entity-group-mappingType">
<xs:sequence>
<xs:element name="group-name" type=" xs:string "/>
</xs:sequence>
</xs:complexType>

Complex Type: groupType
Anchor
groupType
groupType

Complex Type:

groupType

Super-types:

None

Sub-types:

None

Name

groupType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: groupType
<...>
<openejb:group-name> xs:string </openejb:group-name> [1]
<openejb:cmp-field-name> xs:string </openejb:cmp-field-name> [0..*]
<openejb:cmr-field> [0..*]
<openejb:cmr-field-name> xs:string </openejb:cmr-field-name> [1]
<openejb:group-name> xs:string </openejb:group-name> [0..1]
</openejb:cmr-field>
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: groupType
<xs:complexType name="groupType">
<xs:sequence>
<xs:element name="group-name" type=" xs:string "/>
<xs:element name="cmp-field-name" type=" xs:string " minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="cmr-field" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="cmr-field-name" type=" xs:string "/>
<xs:element name="group-name" type=" xs:string " minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>

Complex Type: message-driven-beanType
Anchor
drivenBeanType
drivenBeanType

Complex Type:

message-driven-beanType

Super-types:

None

Sub-types:

None

Name

message-driven-beanType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: message-driven-beanType
<...
id=" xs:ID [0..1]">
<openejb:ejb-name> xs:string </openejb:ejb-name> [1]
<naming:resource-adapter> ... </naming:resource-adapter> [1]
<openejb:activation-config> openejb:activation-configType </openejb:activation-config> [0..1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: message-driven-beanType
<xs:complexType name="message-driven-beanType">
<xs:sequence>
<xs:element name="ejb-name" type=" xs:string "/>
<xs:element ref=" naming:resource-adapter "/>
<xs:element name="activation-config" type=" openejb:activation-configType " minOccurs="0"/>
<xs:group ref=" naming:jndiEnvironmentRefsGroup "/>
</xs:sequence>
<xs:attribute name="id" type=" xs:ID "/>
</xs:complexType>

Complex Type: openejb-jarType
Anchor
openejbJarType
openejbJarType

Complex Type:

openejb-jarType

Super-types:

None

Sub-types:

None

Name

openejb-jarType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: openejb-jarType
<...
<sys:environment>...</sys:environment>
<sys:import> ... </sys:import> [0..*]
<sys:dependency> ... </sys:dependency> [0..*]
<naming:cmp-connection-factory> ... </naming:cmp-connection-factory> [0..1]
<openejb:ejb-ql-compiler-factory> xs:string </openejb:ejb-ql-compiler-factory> [0..1]
<openejb:db-syntax-factory> xs:string </openejb:db-syntax-factory> [0..1]
<openejb:enforce-foreign-key-constraints> openejb:emptyType </openejb:enforce-foreign-key-constraints> [0..1]
<openejb:enterprise-beans> [1]
Start Choice [0..*]
<openejb:session> openejb:session-beanType </openejb:session> [1]
<openejb:entity> openejb:entity-beanType </openejb:entity> [1]
<openejb:message-driven> openejb:message-driven-beanType </openejb:message-driven> [1]
End Choice
</openejb:enterprise-beans>
<openejb:relationships> openejb:relationshipsType
<!--
Uniqueness Constraint - relationship-name-uniqueness
Selector - openejb:ejb-relation
Field(s) - openejb:ejb-relation-name
-->
</openejb:relationships> [0..1]
<naming:message-destination> ... </naming:message-destination> [0..*]
<security:security> ... </security:security> [0..1]
<sys:gbean> ... </sys:gbean> [0..*]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: openejb-jarType
<xs:complexType name="openejb-jarType">
<xs:sequence>
<xs:element ref=" sys:import " minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref=" sys:dependency " minOccurs="0" maxOccurs="unbounded"/>
<-- use a ref to put this element in the naming namespace rather than openejb namespace-->
<xs:element ref=" naming:cmp-connection-factory " minOccurs="0"/>
<xs:element name="ejb-ql-compiler-factory" type=" xs:string " minOccurs="0"/>
<xs:element name="db-syntax-factory" type=" xs:string " minOccurs="0"/>
<xs:element name="enforce-foreign-key-constraints" type=" openejb:emptyType " minOccurs="0"/>
<xs:element name="enterprise-beans">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="session" type=" openejb:session-beanType "/>
<xs:element name="entity" type=" openejb:entity-beanType "/>
<xs:element name="message-driven" type=" openejb:message-driven-beanType "/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="relationships" type=" openejb:relationshipsType " minOccurs="0">
<xs:unique name="relationship-name-uniqueness">
<xs:selector xpath="openejb:ejb-relation"/>
<xs:field xpath="openejb:ejb-relation-name"/>
</xs:unique>
</xs:element>
<xs:element ref=" naming:message-destination " minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref=" security:security " minOccurs="0"/>
<xs:element ref=" sys:gbean " minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="configId" type=" xs:string " use="required"/>
<xs:attribute name="parentId" type=" xs:string " use="optional"/>
</xs:complexType>

Complex Type: queryType
Anchor
queryType
queryType

Complex Type:

queryType

Super-types:

None

Sub-types:

None

Name

queryType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: queryType
<...>
<openejb:query-method> [1]
<openejb:method-name> xs:string </openejb:method-name> [1]
<openejb:method-params> [1]
<openejb:method-param> xs:string </openejb:method-param> [0..*]
</openejb:method-params>
</openejb:query-method>
<openejb:result-type-mapping> xs:string </openejb:result-type-mapping> [0..1]
<openejb:ejb-ql> xs:string </openejb:ejb-ql> [0..1]
<openejb:no-cache-flush> ... </openejb:no-cache-flush> [0..1]
<openejb:group-name> xs:string </openejb:group-name> [0..1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: queryType
<xs:complexType name="queryType">
<xs:sequence>
<xs:element name="query-method">
<xs:complexType>
<xs:sequence>
<xs:element name="method-name" type=" xs:string "/>
<xs:element name="method-params">
<xs:complexType>
<xs:sequence>
<xs:element name="method-param" type=" xs:string " minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="result-type-mapping" type=" xs:string " minOccurs="0"/>
<xs:element name="ejb-ql" type=" xs:string " minOccurs="0"/>
<xs:element name="no-cache-flush" minOccurs="0"/>
<xs:element name="group-name" type=" xs:string " minOccurs="0"/>
</xs:sequence>
</xs:complexType>

Element : relationshipsType
Anchor
relationshipsType
relationshipsType

Name

relationshipsType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: relationshipsType
<...>
<openejb:ejb-relation> openejb:ejb-relationType
<!--
Uniqueness Constraint - role-name-uniqueness
Selector - .//openejb:ejb-relationship-role-name
Field(s) - .
-->
</openejb:ejb-relation> [1..*]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: relationshipsType
<xs:complexType name="relationshipsType">
<xs:sequence>
<xs:element name="ejb-relation" type=" openejb:ejb-relationType " maxOccurs="unbounded">
<xs:unique name="role-name-uniqueness">
<xs:selector xpath=".//openejb:ejb-relationship-role-name"/>
<xs:field xpath="."/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>

Complex Type: session-beanType
Anchor
sessionbeanType
sessionbeanType

Complex Type:

session-beanType

Super-types:

None

Sub-types:

None

Name

session-beanType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: session-beanType
<...
id=" xs:ID [0..1]">
<openejb:ejb-name> xs:string </openejb:ejb-name> [1]
<openejb:jndi-name> xs:string </openejb:jndi-name> [0..*]
<openejb:local-jndi-name> xs:string </openejb:local-jndi-name> [0..*]
Start Group: openejb:tssGroup [0..1]
Start Choice [1]
<openejb:tss-target-name> xs:string </openejb:tss-target-name> [1]
<openejb:tss-link> xs:string </openejb:tss-link> [1]
<openejb:tss> openejb:tssType </openejb:tss> [1]
End Choice
End Group: openejb:tssGroup
<openejb:web-service-address> xs:string </openejb:web-service-address> [0..1]
<openejb:web-service-virtual-host> xs:string </openejb:web-service-virtual-host> [0..*]
<openejb:web-service-security> openejb:web-service-securityType </openejb:web-service-security> [0..1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: session-beanType
<xs:complexType name="session-beanType">
<xs:sequence>
<xs:element name="ejb-name" type=" xs:string "/>
<xs:element name="jndi-name" type=" xs:string " minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="local-jndi-name" type=" xs:string " minOccurs="0" maxOccurs="unbounded"/>
<xs:group ref=" openejb:tssGroup " minOccurs="0"/>
<xs:group ref=" naming:jndiEnvironmentRefsGroup "/>
<xs:element name="web-service-address" type=" xs:string " minOccurs="0"/>
<xs:element name="web-service-virtual-host" type=" xs:string " minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="web-service-security" type=" openejb:web-service-securityType " minOccurs="0"/>
</xs:sequence>
<xs:attribute name="id" type=" xs:ID "/>
</xs:complexType>

Complex Type: tssType
Anchor
tssType
tssType

Complex Type:

tssType

Super-types:

None

Sub-types:

None

Name

tssType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: tssType
<...>
<openejb:domain> xs:string </openejb:domain> [0..1]
<openejb:server> xs:string </openejb:server> [0..1]
<openejb:application> xs:string </openejb:application> [0..1]
<openejb:module> xs:string </openejb:module> [0..1]
<openejb:name> xs:string </openejb:name> [1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: tssType
<xs:complexType name="tssType">
        <xs:sequence>
            <!-- this is object name group from geronimo-naming.xsd -->
            <xs:element name="domain" type="xs:string" minOccurs="0"/>
            <xs:element name="server" type="xs:string" minOccurs="0"/>
            <xs:element name="application" type="xs:string" minOccurs="0"/>
            <xs:element name="module" type="xs:string" minOccurs="0"/>
            <!--            <xs:element name="type" type="xs:string" minOccurs="0"/>-->
            <xs:element name="name" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>

Complex Type: web-service-securityType
Anchor
webSecurityType
webSecurityType

Complex Type:

web-service-securityType

Super-types:

None

Sub-types:

None

Name

web-service-securityType

Abstract

no

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: web-service-securityType
<...>
<openejb:security-realm-name> xs:string </openejb:security-realm-name> [1]
<openejb:realm-name> xs:string </openejb:realm-name> [0..1]
<openejb:transport-guarantee> openejb:transport-guaranteeType </openejb:transport-guarantee> [1]
<openejb:auth-method> openejb:auth-methodType </openejb:auth-method> [1]
</...>
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: web-service-securityType
<xs:complexType name="web-service-securityType">
<xs:sequence>
<xs:element name="security-realm-name" type=" xs:string "/>
<xs:element name="realm-name" type=" xs:string " minOccurs="0"/>
<xs:element name="transport-guarantee" type=" openejb:transport-guaranteeType "/>
<xs:element name="auth-method" type=" openejb:auth-methodType "/>
</xs:sequence>
</xs:complexType>

Model Group: tssGroup
Anchor
modeltssGroup
modeltssGroup

Model Group:

tssGroup

Name

tssGroup

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation: tssGroup
 Start Choice [1]
<openejb:tss-target-name> xs:string </openejb:tss-target-name> [1]
<openejb:tss-link> xs:string </openejb:tss-link> [1]
<openejb:tss> openejb:tssType </openejb:tss> [1]
End Choice

Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: tssGroup
<xs:group name="tssGroup">
<xs:sequence>
<xs:choice>
<xs:element name="tss-target-name" type=" xs:string "/>
<xs:element name="tss-link" type=" xs:string "/>
<xs:element name="tss" type=" openejb:tssType "/>
</xs:choice>
</xs:sequence>
</xs:group>

Simple Type: auth-methodType
Anchor
authmethodType
authmethodType

Simple Type:

auth-methodType

Super-types:

xs:string &lt; auth-methodType (by restriction)

Sub-types:

None

Name

auth-methodType

Content

  • Base XSD Type: string
  • value comes from list:
    • BASIC
    • DIGEST
    • CLIENT-CERT
    • NONE
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: auth-methodType
 <xs:simpleType name="auth-methodType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="BASIC"/>
            <xs:enumeration value="DIGEST"/>
            <xs:enumeration value="CLIENT-CERT"/>
            <xs:enumeration value="NONE"/>
        </xs:restriction>
    </xs:simpleType>

Simple Type: transport-guranteeType
Anchor
guranteeType
guranteeType

Simple Type:

transport-guaranteeType

Super-types:

xs:string < transport-guaranteeType (by restriction)

Sub-types:

None

Name

transport-guranteeType

Content

  • Base XSD Type: string
  • value comes from list:
    • NONE
    • INTEGRAL
    • CONFIDENTIAL
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation: transport-guranteeType
 <xs:simpleType name="transport-guaranteeType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="NONE"/>
            <xs:enumeration value="INTEGRAL"/>
            <xs:enumeration value="CONFIDENTIAL"/>
        </xs:restriction>
    </xs:simpleType>

Legend

Complex Type:

AusAddress

Schema Component Type

Schema Component Name

Super-types:

Address < AusAddress (by extension)

Sub-types:

 

QLDAddress (by restriction)

If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.

Name

AusAddress

Abstract

no

Note

The table above displays the properties of this schema component.

Code Block
xml
xml
borderStylesolid
titleXML Instance Representation
<...    country="Australia"  >
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice [1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1] ?
</...> 

The XML Instance Representation table above shows the schema component's content as an XML instance.

  • The minimum and maximum occurrence of elements and attributes are provided in square brackets, e.g. 0..1.
  • Model group information are shown in gray, e.g. Start Choice ... End Choice.
  • For type derivations, the elements and attributes that have been added to or changed from the base type's content are shown in bold.
  • If an element/attribute has a fixed value, the fixed value is shown in green, e.g. country="Australia".
  • Otherwise, the type of the element/attribute is displayed.
    o If the element/attribute's type is in the schema, a link is provided to it.
    o For local simple type definitions, the constraints are displayed in angle brackets,
    e.g. <pattern = [1-9][0-9]{3}/>
  • If a local element/attribute has documentation, it will be displayed in a window that pops up when the question mark inside the attribute or next to the element is clicked, e.g. <postcode>.
Code Block
xml
xml
borderStylesolid
titleSchema Component Representation
<complexType  name="AusAddress">
<complexContent>
<extension base=" Address ">
<sequence>
<element name="state" type=" AusStates "/>
<element name="postcode">
<simpleType>
<restriction base=" string ">
<pattern value="[1-9][0-9]{3}"/>
</restriction>
</simpleType>
</element>
</sequence>
<attribute name="country" type=" string " fixed="Australia"/>
</extension>
</complexContent>
</complexType> 

The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.