HomeDocumentation > Apache Geronimo v1.1 - User's Guide > XML schemas > openejb-jar-2.1.xsd

{scrollbar}
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.

xmlsolidopenejb-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

xmlsolidSchema 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-jaropenejb-jar

Element:

openejb-jar

Name

openejb-jar

Type

openejb:openejb-jarType

Nillable

no

Abstract

no

xmlsolidXML 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> xmlsolidSchema Component Representation: openejb-jar <xs:element name=openejb-jar type=openejb:openejb-jarType/>

Global Definitions

Complex Type: activation-config-propertyTypeactivation-config

Complex Type:

activation-config-propertyType

Super-types:

None

Sub-types:

None

Name

activation-config-propertyType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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-configTypeactivationconfigType

Complex Type:

activation-configType

Super-types:

None

Sub-types:

None

Name

activation-configType

Abstract

no

xmlsolidXML Instance Representation: activation-configType <...> <openejb:description> xs:string </openejb:description> [0..*] <openejb:activation-config-property> openejb:activation-config-propertyType </openejb:activation-config-property> [1..*] </...> xmlsolidSchema 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-mappingTypecmpMappingType

Complex Type:

cmp-field-group-mappingType

Super-types:

None

Sub-types:

None

Name

cmp-field-group-mappingType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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-mappingTypecmrMappingType

Complex Type:

cmr-field-group-mappingType

Super-types:

None

Sub-types:

None

Name

cmr-field-group-mappingType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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-roleTypeejbroleType

Complex Type:

ejb-relationship-roleType

Super-types:

None

Sub-types:

None

Name

ejb-relationship-roleType

Abstract

no

xmlsolidXML 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> </...> xmlsolidSchema 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-relationTypeejbRelationType

Complex Type:

ejb-relationType

Super-types:

None

Sub-types:

None

Name

ejb-relationType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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: emptyTypeemptyType

Complex Type:

emptyType

Super-types:

None

Sub-types:

None

Name

emptyType

Abstract

no

xmlsolidXML Instance Representation: emptyType <.../> xmlsolidSchema Component Representation: emptyType <xs:complexType name="emptyType"/>

Complex Type: entity-beanTypeentitybeanType

Complex Type:

entity-beanType

Super-types:

None

Sub-types:

None

Name

entity-beanType

Abstract

no

xmlsolidXML 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..*] </...> xmlsolidSchema 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-mappingTypeentityMappingType

Complex Type:

entity-group-mappingType

Super-types:

None

Sub-types:

None

Name

entity-group-mappingType

Abstract

no

xmlsolidXML Instance Representation: entity-group-mappingType <...> <openejb:group-name> xs:string </openejb:group-name> [1] </...> xmlsolidSchema 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: groupTypegroupType

Complex Type:

groupType

Super-types:

None

Sub-types:

None

Name

groupType

Abstract

no

xmlsolidXML 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> </...> xmlsolidSchema 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-beanTypedrivenBeanType

Complex Type:

message-driven-beanType

Super-types:

None

Sub-types:

None

Name

message-driven-beanType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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-jarTypeopenejbJarType

Complex Type:

openejb-jarType

Super-types:

None

Sub-types:

None

Name

openejb-jarType

Abstract

no

xmlsolidXML 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..*] </...> xmlsolidSchema 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: queryTypequeryType

Complex Type:

queryType

Super-types:

None

Sub-types:

None

Name

queryType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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 : relationshipsTyperelationshipsType

Name

relationshipsType

Abstract

no

xmlsolidXML 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..*] </...> xmlsolidSchema 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-beanTypesessionbeanType

Complex Type:

session-beanType

Super-types:

None

Sub-types:

None

Name

session-beanType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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: tssTypetssType

Complex Type:

tssType

Super-types:

None

Sub-types:

None

Name

tssType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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-securityTypewebSecurityType

Complex Type:

web-service-securityType

Super-types:

None

Sub-types:

None

Name

web-service-securityType

Abstract

no

xmlsolidXML 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] </...> xmlsolidSchema 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: tssGroupmodeltssGroup

Model Group:

tssGroup

Name

tssGroup

xmlsolidXML 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 xmlsolidSchema 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-methodTypeauthmethodType

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
xmlsolidSchema 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-guranteeTypeguranteeType

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
xmlsolidSchema 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

The table above displays the properties of this schema component.

xmlsolidXML 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>.
xmlsolidSchema 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.