Oracle Extended Attributes for Elements and Attributes

You can set extended attributes on various XSM objects to define mappings with an Oracle database.

Element Extended Attributes

The following annotations can be specified on the Extended Attributes tab of the property sheets of elements:

Annotation

Description

beanClassname

Can be used within element declarations. If the element is based on a global complexType, this name must be identical to the beanClassname value within the complexType declaration. If a name is specified by the user, the bean generation will generate a bean class with this name, instead of generating a name from the element name

columnProps

Specifies the column storage clause that is inserted into the default CREATE TABLE statement. It is useful mainly for elements that are mapped to tables, namely top-level element declarations and out-of-line element declarations

defaultTable

Specifies the name of the table into which XML instances of this schema should be stored. This is most useful in cases when the XML is being inserted from APIs where table name is not specified (for example, FTP and HTTP)

javaClassname

Used to specify the name of a Java class that is derived from the corresponding bean class, to ensure that an object of this class is instantiated during bean access. If a JavaClassname is not specified, Oracle XML DB will instantiate an object of the bean class directly

maintainDOM

If true, instances of this element are stored so that they retain DOM fidelity on output. This implies that all comments, processing instructions, namespace declarations, and so on, are retained in addition to the ordering of elements. If false, the output need not be guaranteed to have the same DOM behavior as the input

maintainOrder

If true, the collection is mapped to a VARRAY. If false, the collection is mapped to a NESTED TABLE

SQLCollSchema

Name of the database user owning the type specified by SQLCollType

SQLCollType

Specifies the name of the SQL collection type corresponding to this XML element that has maxOccurs > 1

SQLInline

If true this element is stored inline as an embedded attribute (or a collection if maxOccurs > 1). If false, a REF (or collection of REFs if maxOccurs > 1) is stored. This attribute will be forced to false in certain situations (like cyclic references) where SQL will not support inlining

SQLName

Specifies the name of the attribute within the SQL object that maps to this XML element

SQLSchema

Name of the database user owning the type specified by SQLType

SQLType

Specifies the name of the SQL type corresponding to this XML element declaration

tableProps

Specifies the TABLE storage clause that is appended to the default CREATE TABLE statement. This is meaningful mainly for global and out-of-line elements

Complex Type Extended Attributes

The following annotations can be specified on the Extended Attributes tab of the property sheets of complex types:

Annotation

Description

beanClassname

Can be used within element declarations. If the element is based on a global complexType, this name must be identical to the beanClassname value within the complexType declaration. If a name is specified by the user, the bean generation will generate a bean class with this name, instead of generating a name from the element name

SQLSchema

Name of the database user owning the type specified by SQLType

SQLType

Specifies the name of the SQL type corresponding to this XML element declaration

Model Extended Attributes

The following annotations can be specified on the Extended Attributes tab of the property sheet of the model:

Annotation

Description

mapUnboundedStringToLob

If true, unbounded strings are mapped to CLOB by default. Similarly, unbounded binary data get mapped to BLOB, by default. If false, unbounded strings are mapped to VARCHAR2(4000), and unbounded binary components are mapped to RAW(2000)

storeVarrayAsTable

If true, the VARRAY is stored as a table (OCT). If false, the VARRAY is stored in a LOB