0% found this document useful (0 votes)
309 views56 pages

XSD Schema Generation

Uploaded by

Hmani Emna
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
309 views56 pages

XSD Schema Generation

Uploaded by

Hmani Emna
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 56

TEMENOS T24

XSD Schema Generation

User Guide
XSD Schema Generation

Overview .................................................................................................................................................. 3
Architecture/Design ................................................................................................................................. 3
XSD Schemas ...................................................................................................................................... 3
Repeating Groups ................................................................................................................................ 6
Repeating Subgroups .......................................................................................................................... 6
White Space ......................................................................................................................................... 7
Setup ....................................................................................................................................................... 8
T24 Schema Generation ...................................................................................................................... 8
T24 F.SCHEMA table .......................................................................................................................... 8
T24 Standard Selection ....................................................................................................................... 8
Schema Override Options ................................................................................................................... 8
T24_XSD_MAX_NOINPUTLEN ....................................................................................................... 8
T24_XSD_MOD_LEN_PERCENT ................................................................................................... 9
T24_XSD_MAINTAIN_DOM ............................................................................................................ 9
T24_XSD_TEST............................................................................................................................... 9
EBS.CREATE.FILE............................................................................................................................ 10
XSD Schema Registration ................................................................................................................. 11
EB.CONVERT.TABLE Utility ............................................................................................................. 12
Manual Operation .............................................................................................................................. 13
Appendix ................................................................................................................................................ 14
Appendix A- CUSTOMER XML Schema ........................................................................................... 14
Appendix B - CUSTOMER Record Example ..................................................................................... 50
Appendix C – Oracle Structured Storage Description ....................................................................... 52
Description of Controlling Group........................................................................................................ 53
Description of Standalone Group....................................................................................................... 54
Nested Tables .................................................................................................................................... 55

Information in this document is subject to change without notice.

No part of this document may be reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without the express written permission of TEMENOS Holdings NV.

Copyright 2002-2003 TEMENOS Holdings NV. All rights reserved.

T24 XSD Schema Guide Page 2 of 56 March 2007


XSD Schema Generation

Overview
This document provides a guide for the generation and utilisation of the T24 XML Schema Definition
(XSD) documents. These T24 XML Schema Definitions are used to describe the structure of the T24
XML documents, which are used when storing T24 data in an XML column type.
The XML storage model includes several properties, which enable T24 to leverage the many benefits
of deployment on a Relational Database Management System (RDBMS).
The XSD document provides T24 with the capability to provide a precise description of the XML data
content and relationships in a universal format which conforms to standards specified be the W3C
world independent standards organisation.
The XML Schema provides the following definitions:

• defines elements that can appear in a document


• defines attributes that can appear in a document
• defines which elements are child elements
• defines the order of child elements
• defines the number of child elements
• defines whether an element is empty or can include text
• defines data types for elements and attributes
• defines default and fixed values for elements and attributes

rd
These definitions can be used by 3 parties to either extract data content from an XML document or
query several XML documents using industry recognised standards tools such as XML Query, XPATH
expressions or SQL XML extensions.
The majority of T24 tables have a layout as defined by the T24 program modules. This layout is
interrogated to produce the initial description of each of the fields in the table along with
interdependencies such as controlling fields, etc. This information is then used to programmatically
generate the XML Schema Definition for the specified table.
The XML Schema definition can be used in conjunction with RDBMS processes, such as Oracle
Structured Storage (XML DB) to interpret XML documents and shred the documents into RDBMS
tables.

Architecture/Design
XSD Schemas
The T24 XML Schema Definitions conform to the W3C Standards regarding Schema Definitions. In
addition to the required schema element definition the T24 XML Schema Definitions also contain
information specific to the T24. These fields are contained within application information elements
<appinfo></appinfo> and have special significance to T24 utilities only.
In the top level element three properties and there values are specified. These properties are used to
determine the current status of the XML Schema Definition.
e.g
<xsd:appinfo>
<xsd:hasProperty name="locked" value="no" />
<xsd:hasProperty name="useschema" value="no" />
<xsd:hasProperty name="register" value="no" />
</xsd:appinfo>

T24 XSD Schema Guide Page 3 of 56 March 2007


XSD Schema Generation

The ‘locked’ property is used to determine whether or not the current XML Schema Definition in the
F.SCHEMA table can be overwritten.
The ‘useschema’ property is used by the T24 EBS.CREATE.FILE module and RDBMS Conversion
process to determine if the XML Schema Definition should be used when creating tables associated
with the Schema.
The ‘register’ property is used by the T24 EBS.CREATE.FILE module and RDBMS Conversion
process to determine if the XML Schema Definition should be registered (i.e. Use Structured Storage
in the case of Oracle) when creating tables associated with the Schema.
The above properties can be modified prior to an RDBMS Conversion or by the EB.CONVERT.TABLE
utility when converting tables to XML Schema based tables (i.e. Oracle Structured Storage ).
The <appinfo> elements are also used to contain cross reference information to the T24 legacy
dictionary information.
e.g.
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Mnemonic" />
<xsd:hasProperty name="fieldnumber" value="1" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="10" />
<xsd:hasProperty name="fieldinputlen" value="10" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c1" />
<xsd:hasProperty name="fieldname" value="MNEMONIC" />
<xsd:hasProperty name="fieldcolumnname" value="MNEMONIC" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>

The “fieldtag” property specifies the captialised element name for the field, this is the element tag used
for the XML Schema Definition.
The “fieldnumber” property is a cross references to the element field of the internal record structure.
The “fieldatatype” property defines the element data type used for the internal record structure. These
type can be “string” or “numeric”. Currently this data type is internal to T24 only and the XML Schema
Definition data type is always specified as type “string”.
The “fieldfmt” property defines the format of the data element, currently the internal formatting types
are “date” and “decimal” for the “numeric” data type and only internal to T24.
The “fieldlen” property defines the length of the field specified for the internal record structure, this is
the defined length internal to T24.
The “fieldinputlen” property defines the field length for the internal record structure, this is the length
used for the XML Schema Definition. This value will either be the fieldlen value (modified by the
MOD_LEN_PERCENT override) or in the case of a noinput field a value of 60 (or the value specified
by the MAX_NOINPUTLEN override)

T24 XSD Schema Guide Page 4 of 56 March 2007


XSD Schema Generation

The “fieldgroupnumber” defines the controlling field for the group of values. (See later)
The “fieldmvgroupnumber” defines the controlling field for the subgroup of values. (See later)
The “fieldshortname” is a reference to the short tag element name that would be used for non schema
based table definitions.
The “fieldname” property cross references the legacy dictionary field name. These field names may
contain metadata characters.
The “fieldcolumname” is a reference to the SQL columnname for the field, whereby metadata
characters would be changed to underscore.
The “fieldgroupname” is a cross reference to the tag name of the controlling field for the group of
values.
The “fieldmvgroupname” is a cross reference to the tag name of the controlling field for the subgroup
of values.
The “fieldjustfication” property is a cross reference to the expect format of the internal record structure
and implies how the field should be sorted. i.e. Right Justified for numeric sort else Left Justified.
The “fieldtype” property is a cross reference to the data type and can be “D” for data, “N” for numeric
or “S” for string. Currently this field is only for internal reference and not used in the XML Schema
Definition when describing element data types.
The data type for each of the elements in the T24 XML Schema definition is an XML “simpleType” of
generic XML type “string”. The element is given a maximum length as specified by the noinput field
length.

e.g.

<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>

T24 XSD Schema Guide Page 5 of 56 March 2007


XSD Schema Generation

Repeating Groups

Repeating fields within the internal T24 record are translated into two types of groups.

1) A repeating group containing a single set of values.


2) A repeating group containing a multiple set related values.

The first type is defined in the T24 XML Schema Definition by the single occurrence of a Group
Element or ‘g’ type specified as an xsd complexType, which in turn contains the element for the single
repeating value. This element can occur many times and hence is specified as
maxOccurs=”unbounded”.
This type of element would be represented in the Oracle Structured Storage as a nested array of
single values within the group element array specified in the parent table.
The second type is defined in the T24 XML Schema Definition again by the single occurrence of a
Group element specified as an xsd complexType, but this time the ‘g’ type element contains a ‘m’ type
element which is also specified as a complexType. This element in turn contains the multiple set of
related elements. In this case it is the ‘m’ type element that can occur many times and hence is
specified as maxOccurs=”unbounded”. Each element within the ‘m’ type element can occur only once
and hence is set with maxOccurs=”1”.
This type of element would be represented in the Oracle Structured Storage as a nested table with
multiple columns within the group element array specified in the parent table.

Repeating Subgroups
In addition to repeating groups it is also possible for each element in the repeating set to also contain
repeating values. Similarly to the repeating groups these repeating values can either be a single set of
values or a multiple set of values.
In the case of a single set of values, these would be contained with a Subgroup ‘sg’ element type and
have the maximum occurrences set to unbounded. In the case of a repeating set of multiple values
then these would be further defined within an sub element ‘s’ type, which in turn would contain the
related values. In this case the ‘s’ type element could repeat multiple times for each set of multiple
values and hence is set with maximum occurrences to unbounded. Each element within the ‘s’ type
element can only occur once and hence is defined as maxOccurs=”1”.

T24 only extends to use two levels of repeating values.

T24 XSD Schema Guide Page 6 of 56 March 2007


XSD Schema Generation

White Space
The T24 XML Schema Definition defines the requirement to preserve white space within the XML
document as leading or trailing spaces can have meaning within certain fields.
As such the top level element is assigned with an attribute to preserve white space.

e.g.

<xsd:attribute ref="xml:space" default="preserve" />

T24 XSD Schema Guide Page 7 of 56 March 2007


XSD Schema Generation

Setup
T24 Schema Generation
T24 will ignore all XML Schema generation requests until the T24 Schema table has been created.

T24 F.SCHEMA table


Create an entry ‘SCHEMA’ in the F.PGM.FILE table of TYPE ‘T’. Then execute the T24
CREATE.FILES utility. This will create the F.SCHEMA table of type NOXMLSCHEMA.

T24 Standard Selection


Once the F.SCHEMA table exists then the XML Schema Definition can be created for the specified
table (PGM reference) by invoking the T24 Standard Selection and requesting a rebuild of the
dictionary.
The rebuild process will invoke the T24 PRODUCE.SCHEMA routine to generate the XML Schema
Definition in the F.SCHEMA table.
For Example: To generate an XML Schema Definition for the ACCOUNT table

SS, I ACCOUNT
Set Field 28 to Y
Then Validate Request

The XML Schema Definition “ACCOUNT.xsd” will be created as a record in the F.SCHEMA table.
Note: In cases whereby the PGM reference contains dots or other metadata these characters will be
converted to dots.
An additional record XMLREF will also be created in the F.SCHEMA table. The @XMLREF record is
an internal cross reference record for driver translation of the XML documents and should not be
modified.
Note: If an existing schema already exists then the “locked” property in the <appinfo> element of the
schema is checked. If the value is “yes” then the schema will NOT be updated, as the schema is
deemed to be locked, this ensures a Standard Selection rebuild does not overwrite the current
schema definition.

Schema Override Options


T24_XSD_MAX_NOINPUTLEN
T24 tables contain certain fields, which are classified as “no input fields”. These fields are usually
generated programmatically by T24 and typically contain concatenated data. This data is based on
other generated parameters in T24 and hence may exceed the specified length for the field. By default
this value is configured as 60 characters however dependent upon implementation this field may need
to be extended further. In these cases a value of 100 characters is usually sufficient.

T24 XSD Schema Guide Page 8 of 56 March 2007


XSD Schema Generation

T24_XSD_MOD_LEN_PERCENT

Some T24 tables can also contain fields whereby the field definition does not take account of decimal
points. For example a decimal field with a field length of 3 may also contain a decimal point taking the
actual field length to 4. In addition other fields within T24 can also contain metadata characters, which
will be expanded when ‘escaped’ in XML. For example an ampersand ‘&’ is expanded to the string
“&amp;” to escape the ampersand. As such this environment variable can be used to increase the
specified field length by a per cent value to avoid insertion problems. A value of 20 per cent should
prove sufficient for most occurrences.

T24_XSD_MAINTAIN_DOM
This environment variable can be set to “true” to force the use of the Document Object Model (DOM)
and cause schema verification of each XML Document. The default value is ‘false’ .

T24_XSD_TEST
This environment variable can be used to produce test data and query statements which can then be
executed against the table to ensure that the table has been created correctly and that data can be
inserted into all of the fields without error. The queries produced can also be used to determine that
the query is translated and executed correctly according to the driver query translation rules.

T24 XSD Schema Guide Page 9 of 56 March 2007


XSD Schema Generation

EBS.CREATE.FILE
The T24 EBS.CREATE.FILE module will check for the existence of a related XML Schema Definition
when creating new tables. I
If the associated .xsd record is found in the F.SCHEMA, then the create file process will determine if
the XSD Schema should be used (i.e. The XSD schema <appinfo> properties are set as
“useschema=yes”) and also registered (i.e. The XSD schema <appinfo> properties are set as
“registerschema=yes”).
If the use schema property is set then the XSDSCHEMA qualifier will be provided to the CREATE-
FILE utility.

If the register schema property is set then the XSDSCHEMAREG qualifier will also be provided to the
CREATE-FILE utility.
This enables creation of additional companies to be based on existing registered schemas. For
example creating an ACCOUNT table for company FCO2 could use the existing ACCOUNT.xsd when
creating table FCO2.ACCOUNT.

T24 XSD Schema Guide Page 10 of 56 March 2007


XSD Schema Generation

XSD Schema Registration


The registration of the XSD document is only a mandatory requirement for ORACLE Structured
Storage (XML DB).
Registering the XSD document for MSSQL and DB2 XML Tables is optional. If registered then the
XML Schema Definition is used to verify the contents and structure of the XML documents inserted
into the database conform to the XML Schema Definition. In the case of T24 presenting well formed
XML documents this process is an overhead and hence registering the XML Schema Definition for
DB2 and MSSQL is not recommended.
The schema verification for ORACLE is controlled by the MaintainDOM property specified within the
XML Schema Definition, by default this property is set to false.
The XML Schema Definition must be registered before the table is created. The table creation process
(CREATE-FILE) will automatically handle this procedure when the XSDSCHEMA qualifier is specified.
By default the XSD Schema is automatically registered for ORACLE assuming the requirement for
Structured Storage. When using DB2 and MSSQL an additional qualifier must be specified.

For Example:
CREATE-FILE DATA FBNK.ACCOUNT TYPE=XMLORACLE XSDSCHEMA=ACCOUNT

The above command will automatically register the XML Schema Definition “ACCOUNT.xsd” if not
already registered and then proceed to issue the create table request with the XSD reference. The
parent table type will be of Structured Storage and contain reference to nested tables as specified by
the XML Schema Definition.

CREATE-FILE DATA FBNK.ACCOUNT TYPE=XMLDB2 XSDSCHEMA=ACCOUNT


The above command will simply create a DB2 table of XML type. The XML Schema Definition will not
be registered.

To force schema registration for MSSQL and DB2 an additional qualifier must be specified.

XSDSCHEMAREG=YES

To create a table in ORACLE which conforms to the XML Schema Definition but does not use
Structured Storage the above additional qualifier must be specified with the value equal to NO.
Note: There is a performance cost (schema translation) and network cost (additional traffic) to using
XSD schema translation and a database server CPU cost to invoking schema validation.

T24 XSD Schema Guide Page 11 of 56 March 2007


XSD Schema Generation

EB.CONVERT.TABLE Utility
An automated utility is provided with T24 to convert existing tables using short tag elements into long
tag element tables that use the XML Schema Definition.
This utility is a standalone program and must only be executed when the database is not in use by
other users.
The utility first verifies that the specified XML Schema Definition exists in the F.SCHEMA table and is
enabled. The schema will then be copied from the F.SCHEMA table into the driver Schema directory
such that the driver can find the schema and register it with the database when creating the new table.
The utility then creates a temporary table into which it will then copy the existing table rows. Once
copied then the current table is dropped and a new table created using the associated schema. The
original data rows are then copied into the new schema based table. Once complete then the schema
properties, (”locked”, “useschema” and “registerschema”) are modified to reflect the new status of the
schema.

T24 XSD Schema Guide Page 12 of 56 March 2007


XSD Schema Generation

Manual Operation
If the EB.CONVERT.TABLE is not yet available, the table conversion can be executed manually using
the following steps. This operation should only be performed when no other users are using the
database.
Copy required XML Schema Definition reference to driver ‘schema’ directory specified using the
relevant driver configuration tool. (config-XMLORACLE, config-XMLDB2 or config-XMLMSQL )

e.g. SELECT F.SCHEMA LIKE ACCOUNT…


COPY FROM F.SCHEMA TO schema

Create a temporary RDBMS table.

CREATE-FILE DATA tempACCOUNT TYPE=XMLORACLE NOXMLSCHEMA=YES

Copy existing data to temporary table

COPY FROM FBNK.ACCOUNT TO tempACCOUNT ALL

Delete existing table

DELETE-FILE DATA FBNK.ACCOUNT

Create Replacement table with Schema qualifiers

CREATE-FILE DATA FBNK.ACCOUNT TYPE=XMORACLE TABLE=FBNK_ACCOUNT


XSDSCHEMA=ACCOUNT

Copy data from temporary table to new table

COPY FROM tempACCOUNT TO FBNK.ACCOUNT ALL

Note: The copy operations could be optimised by using a program and including transaction
boundaries such that a transaction commit is executed every 1000 inserts.

T24 XSD Schema Guide Page 13 of 56 March 2007


XSD Schema Generation

Appendix
Appendix A- CUSTOMER XML Schema

<?xml version="1.0" ?>


<xsd:schema xmlns:xdb="http://xmlns.oracle.com/xdb"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xdb:storeVarrayAsTable="true">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd" /> <!-- This T24 XML Schema automatically
produced --> <!-- Copyright Temenos Holdings NV 2007--> <!-- T24 Application: CUSTOMER -->
<!-- T24 Release: R06.000 --> <!-- Production timestamp: 12:14:22 17 JAN 2007 -->
<xsd:element name="row" type="CUSTOMERType">
<xsd:annotation>
<xsd:documentation>This is the top level element for the record data</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="locked" value="no" />
<xsd:hasProperty name="useschema" value="no" />
<xsd:hasProperty name="register" value="no" />
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:complexType name="CUSTOMERType" xdb:maintainDOM="false">
<xsd:annotation>
<xsd:documentation>This complex type represents the T24 data for the CUSTOMER
table</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Mnemonic" minOccurs="0" xdb:SQLName="MNEMONIC"
xdb:SQLCollType="T24CUSTOMER10_COLL_COLL">
<xsd:annotation>
<xsd:documentation>MNEMONIC</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Mnemonic" />
<xsd:hasProperty name="fieldnumber" value="1" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="10" />
<xsd:hasProperty name="fieldinputlen" value="10" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c1" />
<xsd:hasProperty name="fieldname" value="MNEMONIC" />
<xsd:hasProperty name="fieldcolumnname" value="MNEMONIC" />

T24 XSD Schema Guide Page 14 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldgroupname" value="" />


<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gShortName" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERShortName" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="ShortName" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="SHORT_NAME"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>SHORT.NAME</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ShortName" />
<xsd:hasProperty name="fieldnumber" value="2" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="2" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c2" />
<xsd:hasProperty name="fieldname" value="SHORT.NAME" />
<xsd:hasProperty name="fieldcolumnname" value="SHORT_NAME" />
<xsd:hasProperty name="fieldgroupname" value="SHORT.NAME" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>

T24 XSD Schema Guide Page 15 of 56 March 2007


XSD Schema Generation

<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />


</xsd:complexType>
</xsd:element>
<xsd:element name="gName1" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERName1`cf5 xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Name1" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="NAME_1"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>NAME.1</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Name1" />
<xsd:hasProperty name="fieldnumber" value="3" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="3" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname`cf5 value="c3" />
<xsd:hasProperty name="fieldname" value="NAME.1" />
<xsd:hasProperty name="fieldcolumnname" value="NAME_1" />
<xsd:hasProperty name="fieldgroupname`cf5 value="NAME.1" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gName2" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERName2" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Name2" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="NAME_2"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>

T24 XSD Schema Guide Page 16 of 56 March 2007


XSD Schema Generation

<xsd:documentation>NAME.2</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Name2" />
<xsd:hasProperty name="fieldnumber" value="4" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="4" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c4" />
<xsd:hasProperty name="fieldname" value="NAME.2" />
<xsd:hasProperty name="fieldcolumnname" value="NAME_2" />
<xsd:hasProperty name="fieldgroupname" value="NAME.2" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gStreet" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERStreet" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Street" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="STREET"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>STREET</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Street" />
<xsd:hasProperty name="fieldnumber" value="5" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="5" />

T24 XSD Schema Guide Page 17 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldmvgroupnumber" value="0" />


<xsd:hasProperty name="fieldshortname" value="c5" />
<xsd:hasProperty name="fieldname" value="STREET" />
<xsd:hasProperty name="fieldcolumnname" value="STREET" />
<xsd:hasProperty name="fieldgroupname" value="STREET" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gTownCountry" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERTownCountry" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="TownCountry" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="TOWN_COUNTRY"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>TOWN.COUNTRY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="TownCountry" />
<xsd:hasProperty name="fieldnumber" value="6" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="6" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c6" />
<xsd:hasProperty name="fieldname" value="TOWN.COUNTRY" />
<xsd:hasProperty name="fieldcolumnname" value="TOWN_COUNTRY" />
<xsd:hasProperty name="fieldgroupname" value="TOWN.COUNTRY" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />

T24 XSD Schema Guide Page 18 of 56 March 2007


XSD Schema Generation

</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gRelationCode" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERRelationCode" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="mRelationCode" minOccurs="0" maxOccurs="unbounded"
xdb:SQLCollType="mCUSTOMERRelationCode_COLL">
<xsd:complexType xdb:SQLType="mCUSTOMERRelationCode" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="RelationCode" minOccurs="0" xdb:SQLName="RELATION_CODE"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>RELATION.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="RelationCode" />
<xsd:hasProperty name="fieldnumber" value="7" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="7" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c7" />
<xsd:hasProperty name="fieldname" value="RELATION.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="RELATION_CODE" />
<xsd:hasProperty name="fieldgroupname" value="RELATION.CODE" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3" />

T24 XSD Schema Guide Page 19 of 56 March 2007


XSD Schema Generation

</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="RelCustomer" minOccurs="0" xdb:SQLName="REL_CUSTOMER"
xdb:SQLCollType="T24CUSTOMER10_COLL_COLL">
<xsd:annotation>
<xsd:documentation>REL.CUSTOMER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="RelCustomer" />
<xsd:hasProperty name="fieldnumber" value="8" />
<xsd:hasProperty name="fielddatatype" value="numeric" />
<xsd:hasProperty name="fieldfmt" value="decimal" />
<xsd:hasProperty name="fieldlen" value="10" />
<xsd:hasProperty name="fieldinputlen" value="10" />
<xsd:hasProperty name="fieldgroupnumber" value="7" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c8" />
<xsd:hasProperty name="fieldname" value="REL.CUSTOMER" />
<xsd:hasProperty name="fieldcolumnname" value="REL_CUSTOMER" />
<xsd:hasProperty name="fieldgroupname" value="RELATION.CODE" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ReversRelCode" minOccurs="0" xdb:SQLName="REVERS_REL_CODE"
xdb:SQLCollType="T24CUSTOMER60_COLL_COLL">
<xsd:annotation>
<xsd:documentation>REVERS.REL.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ReversRelCode" />
<xsd:hasProperty name="fieldnumber" value="9" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="60" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="7" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />

T24 XSD Schema Guide Page 20 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldshortname" value="c9" />


<xsd:hasProperty name="fieldname" value="REVERS.REL.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="REVERS_REL_CODE" />
<xsd:hasProperty name="fieldgroupname" value="RELATION.CODE" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="60" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="m" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="Sector" minOccurs="0" xdb:SQLName="SECTOR"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>SECTOR</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Sector" />
<xsd:hasProperty name="fieldnumber" value="10" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c10" />
<xsd:hasProperty name="fieldname" value="SECTOR" />
<xsd:hasProperty name="fieldcolumnname" value="SECTOR" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>

T24 XSD Schema Guide Page 21 of 56 March 2007


XSD Schema Generation

</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AccountOfficer" minOccurs="0" xdb:SQLName="ACCOUNT_OFFICER"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>ôCCOUNT.OFFICER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="AccountOfficer" />
<xsd:hasProperty name="fieldnumber" value="11" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c11" />
<xsd:hasProperty name="fieldname" value="ACCOUNT.OFFICER" />
<xsd:hasProperty name="fieldcolumnname" value="ACCOUNT_OFFICER" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gOtherOfficer" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMEROtherOfficer" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="OtherOfficer" minOccurs="0" maxOccurs="unbounded"
xdb:SQLName="OTHER_OFFICER"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>OTHER.OFFICER</xsd:documentation>
<xsd:appinfo>

T24 XSD Schema Guide Page 22 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldtag" value="OtherOfficer" />


<xsd:hasProperty name="fieldnumber" value="12" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="12" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c12" />
<xsd:hasProperty name="fieldname" value="OTHER.OFFICER" />
<xsd:hasProperty name="fieldcolumnname" value="OTHER_OFFICER" />
<xsd:hasProperty name="fieldgroupname" value="OTHER.OFFICER" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="Industry" minOccurs="0" xdb:SQLName="INDUSTRY"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>INDUSTRY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Industry" />
<xsd:hasProperty name="fieldnumber" value="13" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c13" />
<xsd:hasProperty name="fieldname" value="INDUSTRY" />
<xsd:hasProperty name="fieldcolumnname" value="INDUSTRY" />
<xsd:hasProperty name="fieldgroupname" value="" />

T24 XSD Schema Guide Page 23 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldmvgroupname" value="" />


<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Target" minOccurs="0" xdb:SQLName="TARGET"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>TARGET</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Target" />
<xsd:hasProperty name="fieldnumber" value="14" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c14" />
<xsd:hasProperty name="fieldname" value="TARGET" />
<xsd:hasProperty name="fieldcolumnname" value="TARGET" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Nationality" minOccurs="0" xdb:SQLName="NATIONALITY"
xdb:SQLCollType="T24CUSTOMER2_COLL_COLL">
<xsd:annotation>
<xsd:documentation>NATIONALITY</xsd:documentation>
<xsd:appinfo>

T24 XSD Schema Guide Page 24 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldtag" value="Nationality" />


<xsd:hasProperty name="fieldnumber" value="15" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="2" />
<xsd:hasProperty name="fieldinputlen" value="2" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c15" />
<xsd:hasProperty name="fieldname" value="NATIONALITY" />
<xsd:hasProperty name="fieldcolumnname" value="NATIONALITY" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CustomerStatus" minOccurs="0" xdb:SQLName="CUSTOMER_STATUS"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CUSTOMER.STATUS</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CustomerStatus" />
<xsd:hasProperty name="fieldnumber" value="16" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c16" />
<xsd:hasProperty name="fieldname" value="CUSTOMER.STATUS" />
<xsd:hasProperty name="fieldcolumnname" value="CUSTOMER_STATUS" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>

T24 XSD Schema Guide Page 25 of 56 March 2007


XSD Schema Generation

</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Residence" minOccurs="0" xdb:SQLName="RESIDENCE"
xdb:SQLCollType="T24CUSTOMER2_COLL_COLL">
<xsd:annotation>
<xsd:documentation>RESIDENCE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Residence" />
<xsd:hasProperty name="fieldnumber" value="17" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="2" />
<xsd:hasProperty name="fieldinputlen" value="2" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c17" />
<xsd:hasProperty name="fieldname" value="RESIDENCE" />
<xsd:hasProperty name="fieldcolumnname" value="RESIDENCE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ContactDate" minOccurs="0" xdb:SQLName="CONTACT_DATE"
xdb:SQLCollType="T24CUSTOMER11_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CONTACT.DATE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ContactDate" />
<xsd:hasProperty name="fieldnumber" value="18" />
<xsd:hasProperty name="fielddatatype" value="numeric" />
<xsd:hasProperty name="fieldfmt" value="date" />

T24 XSD Schema Guide Page 26 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldlen" value="11" />


<xsd:hasProperty name="fieldinputlen" value="11" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c18" />
<xsd:hasProperty name="fieldname" value="CONTACT.DATE" />
<xsd:hasProperty name="fieldcolumnname" value="CONTACT_DATE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Introducer" minOccurs="0" xdb:SQLName="INTRODUCER"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>INTRODUCER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Introducer" />
<xsd:hasProperty name="fieldnumber" value="19" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c19" />
<xsd:hasProperty name="fieldname" value="INTRODUCER" />
<xsd:hasProperty name="fieldcolumnname" value="INTRODUCER" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />

T24 XSD Schema Guide Page 27 of 56 March 2007


XSD Schema Generation

</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gText" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERText" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Text" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="TEXT"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>TEXT</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Text" />
<xsd:hasProperty name="fieldnumber" value="20" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="20" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c20" />
<xsd:hasProperty name="fieldname" value="TEXT" />
<xsd:hasProperty name="fieldcolumnname" value="TEXT" />
<xsd:hasProperty name="fieldgroupname" value="TEXT" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="LegalId" minOccurs="0" xdb:SQLName="LEGAL_ID"
xdb:SQLCollType="T24CUSTOMER20_COLL_COLL">
<xsd:annotation>
<xsd:documentation>LEGAL.ID</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="LegalId" />

T24 XSD Schema Guide Page 28 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldnumber" value="21" />


<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="20" />
<xsd:hasProperty name="fieldinputlen" value="20" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c21" />
<xsd:hasProperty name="fieldname" value="LEGAL.ID" />
<xsd:hasProperty name="fieldcolumnname" value="LEGAL_ID" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ReviewFrequency" minOccurs="0" xdb:SQLName="REVIEW_FREQUENCY"
xdb:SQLCollType="T24CUSTOMER17_COLL_COLL">
<xsd:annotation>
<xsd:documentation>REVIEW.FREQUENCY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ReviewFrequency" />
<xsd:hasProperty name="fieldnumber" value="22" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="17" />
<xsd:hasProperty name="fieldinputlen" value="17" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c22" />
<xsd:hasProperty name="fieldname" value="REVIEW.FREQUENCY" />
<xsd:hasProperty name="fieldcolumnname" value="REVIEW_FREQUENCY" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>

T24 XSD Schema Guide Page 29 of 56 March 2007


XSD Schema Generation

<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="17" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="BirthIncorpDate" minOccurs="0" xdb:SQLName="BIRTH_INCORP_DATE"
xdb:SQLCollType="T24CUSTOMER11_COLL_COLL">
<xsd:annotation>
<xsd:documentation>BIRTH.INCORP.DATE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="BirthIncorpDate" />
<xsd:hasProperty name="fieldnumber" value="23" />
<xsd:hasProperty name="fielddatatype" value="numeric" />
<xsd:hasProperty name="fieldfmt" value="date" />
<xsd:hasProperty name="fieldlen" value="11" />
<xsd:hasProperty name="fieldinputlen" value="11" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c23" />
<xsd:hasProperty name="fieldname" value="BIRTH.INCORP.DATE" />
<xsd:hasProperty name="fieldcolumnname" value="BIRTH_INCORP_DATE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GlobalCustomer" minOccurs="0" xdb:SQLName="GLOBAL_CUSTOMER"
xdb:SQLCollType="T24CUSTOMER10_COLL_COLL">
<xsd:annotation>
<xsd:documentation>GLOBAL.CUSTOMER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="GlobalCustomer" />
<xsd:hasProperty name="fieldnumber" value="24" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="10" />

T24 XSD Schema Guide Page 30 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldinputlen" value="10" />


<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c24" />
<xsd:hasProperty name="fieldname" value="GLOBAL.CUSTOMER" />
<xsd:hasProperty name="fieldcolumnname" value="GLOBAL_CUSTOMER" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CustomerLiability" minOccurs="0" xdb:SQLName="CUSTOMER_LIABILITY"
xdb:SQLCollType="T24CUSTOMER10_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CUSTOMER.LIABILITY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CustomerLiability" />
<xsd:hasProperty name="fieldnumber" value="25" />
<xsd:hasProperty name="fielddatatype" value="numeric" />
<xsd:hasProperty name="fieldfmt" value="decimal" />
<xsd:hasProperty name="fieldlen" value="10" />
<xsd:hasProperty name="fieldinputlen" value="10" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c25" />
<xsd:hasProperty name="fieldname" value="CUSTOMER.LIABILITY" />
<xsd:hasProperty name="fieldcolumnname" value="CUSTOMER_LIABILITY" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>

T24 XSD Schema Guide Page 31 of 56 March 2007


XSD Schema Generation

</xsd:simpleType>
</xsd:element>
<xsd:element name="Language" minOccurs="0" xdb:SQLName="LANGUAGE"
xdb:SQLCollType="T24CUSTOMER2_COLL_COLL">
<xsd:annotation>
<xsd:documentation>LANGUAGE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Language" />
<xsd:hasProperty name="fieldnumber" value="26" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="2" />
<xsd:hasProperty name="fieldinputlen" value="2" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c26" />
<xsd:hasProperty name="fieldname" value="LANGUAGE" />
<xsd:hasProperty name="fieldcolumnname" value="LANGUAGE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="PostingRestrict" minOccurs="0" xdb:SQLName="POSTING_RESTRICT"
xdb:SQLCollType="T24CUSTOMER2_COLL_COLL">
<xsd:annotation>
<xsd:documentation>POSTING.RESTRICT</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="PostingRestrict" />
<xsd:hasProperty name="fieldnumber" value="27" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="2" />
<xsd:hasProperty name="fieldinputlen" value="2" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c27" />

T24 XSD Schema Guide Page 32 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldname" value="POSTING.RESTRICT" />


<xsd:hasProperty name="fieldcolumnname" value="POSTING_RESTRICT" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DispoOfficer" minOccurs="0" xdb:SQLName="DISPO_OFFICER"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>DISPO.OFFICER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="DispoOfficer" />
<xsd:hasProperty name="fieldnumber" value="28" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c28" />
<xsd:hasProperty name="fieldname" value="DISPO.OFFICER" />
<xsd:hasProperty name="fieldcolumnname" value="DISPO_OFFICER" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gPostCode" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERPostCode" xdb:maintainDOM="false">

T24 XSD Schema Guide Page 33 of 56 March 2007


XSD Schema Generation

<xsd:sequence minOccurs="0">
<xsd:element name="PostCode" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="POST_CODE"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>POST.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="PostCode" />
<xsd:hasProperty name="fieldnumber" value="29" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="29" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c29" />
<xsd:hasProperty name="fieldname" value="POST.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="POST_CODE" />
<xsd:hasProperty name="fieldgroupname" value="POST.CODE" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gCountry" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERCountry" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Country" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="COUNTRY"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>COUNTRY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Country" />
<xsd:hasProperty name="fieldnumber" value="30" />
<xsd:hasProperty name="fielddatatype" value="string" />

T24 XSD Schema Guide Page 34 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldfmt" value="" />


<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="30" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c30" />
<xsd:hasProperty name="fieldname" value="COUNTRY" />
<xsd:hasProperty name="fieldcolumnname" value="COUNTRY" />
<xsd:hasProperty name="fieldgroupname" value="COUNTRY" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="CompanyBook" minOccurs="0" xdb:SQLName="COMPANY_BOOK"
xdb:SQLCollType="T24CUSTOMER11_COLL_COLL">
<xsd:annotation>
<xsd:documentation>COMPANY.BOOK</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CompanyBook" />
<xsd:hasProperty name="fieldnumber" value="31" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="11" />
<xsd:hasProperty name="fieldinputlen" value="11" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c31" />
<xsd:hasProperty name="fieldname" value="COMPANY.BOOKf />
<xsd:hasProperty name="fieldcolumnname" value="COMPANY_BOOK" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />

T24 XSD Schema Guide Page 35 of 56 March 2007


XSD Schema Generation

</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ConfidTxt" minOccurs="0" xdb:SQLName="CONFID_TXT"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CONFID.TXT</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ConfidTxt" />
<xsd:hasProperty name="fieldnumber" value="32" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c32" />
<xsd:hasProperty name="fieldname" value="CONFID.TXT" />
<xsd:hasProperty name="fieldcolumnname" value="CONFID_TXT" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DispoExempt" minOccurs="0" xdb:SQLName="DISPO_EXEMPT"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>DISPO.EXEMPT</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="DispoExempt" />
<xsd:hasProperty name="fieldnumber" value="33" />
<xsd:hasProperty name="fielddatatype" value="string" />

T24 XSD Schema Guide Page 36 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldfmt" value="" />


<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c33" />
<xsd:hasProperty name="fieldname" value="DISPO.EXEMPT" />
<xsd:hasProperty name="fieldcolumnname" value="DISPO_EXEMPT" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="IssueCheques" minOccurs="0" xdb:SQLName="ISSUE_CHEQUES"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>ISSUE.CHEQUES</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="IssueCheques" />
<xsd:hasProperty name="fieldnumber" value="34" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c34" />
<xsd:hasProperty name="fieldname" value="ISSUE.CHEQUES" />
<xsd:hasProperty name="fieldcolumnname" value="ISSUE_CHEQUES" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">

T24 XSD Schema Guide Page 37 of 56 March 2007


XSD Schema Generation

<xsd:maxLength value="3" />


</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ClsCparty" minOccurs="0" xdb:SQLName="CLS_CPARTY"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CLS.CPARTY</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ClsCparty" />
<xsd:hasProperty name="fieldnumber" value="35" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c35" />
<xsd:hasProperty name="fieldname" value="CLS.CPARTY" />
<xsd:hasProperty name="fieldcolumnname" value="CLS_CPARTY" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="FxCommGroupid" minOccurs="0" xdb:SQLName="FX_COMM_GROUP_ID"
xdb:SQLCollType="T24CUSTOMER3_COLL_COLL">
<xsd:annotation>
<xsd:documentation>FX.COMM.GROUP.ID</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="FxCommGroupid" />
<xsd:hasProperty name="fieldnumber" value="36" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="3" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />

T24 XSD Schema Guide Page 38 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldmvgroupnumber" value="0" />


<xsd:hasProperty name="fieldshortname" value="c36" />
<xsd:hasProperty name="fieldname" value="FX.COMM.GROUP.ID" />
<xsd:hasProperty name="fieldcolumnname" value="FX_COMM_GROUP_ID" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="3" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ResidenceRegion" minOccurs="0" xdb:SQLName="RESIDENCE_REGION"
xdb:SQLCollType="T24CUSTOMER9_COLL_COLL">
<xsd:annotation>
<xsd:documentation>RESIDENCE.REGION</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="ResidenceRegion" />
<xsd:hasProperty name="fieldnumber" value="37" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="9" />
<xsd:hasProperty name="fieldinputlen" value="9" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c37" />
<xsd:hasProperty name="fieldname" value="RESIDENCE.REGION" />
<xsd:hasProperty name="fieldcolumnname" value="RESIDENCE_REGION" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="9" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>

T24 XSD Schema Guide Page 39 of 56 March 2007


XSD Schema Generation

<xsd:element name="AssetClass" minOccurs="0" xdb:SQLName="ASSET_CLASS"


xdb:SQLCollType="T24CUSTOMER60_COLL_COLL">
<xsd:annotation>
<xsd:documentation>ASSET.CLASS</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="AssetClass" />
<xsd:hasProperty name="fieldnumber" value="38" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="60" />
<xsd:hasProperty name="fieldinputlen" value="3" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c38" />
<xsd:hasProperty name="fieldname" value="ASSET.CLASS" />
<xsd:hasProperty name="fieldcolumnname" value="ASSET_CLASS" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="60" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gCustomerRating" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERCustomerRating" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="CustomerRating" minOccurs="0" maxOccurs="unbounded"
xdb:SQLName="CUSTOMER_RATING"
xdb:SQLCollType="T24CUSTOMER10_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CUSTOMER.RATING</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CustomerRating" />
<xsd:hasProperty name="fieldnumber" value="39" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="10" />
<xsd:hasProperty name="fieldinputlen" value="10" />
<xsd:hasProperty name="fieldgroupnumber" value="39" />

T24 XSD Schema Guide Page 40 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldmvgroupnumber" value="0" />


<xsd:hasProperty name="fieldshortname" value="c39" />
<xsd:hasProperty name="fieldname" value="CUSTOMER.RATING" />
<xsd:hasProperty name="fieldcolumnname" value="CUSTOMER_RATING" />
<xsd:hasProperty name="fieldgroupname" value="CUSTOMER.RATING" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="10" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gLocalRef" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERLocalRef" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="LocalRef" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="LOCAL_REF"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>LOCAL.REF</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="LocalRef" />
<xsd:hasProperty name="fieldnumber" value="40" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="40" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c40" />
<xsd:hasProperty name="fieldname" value="LOCAL.REF" />
<xsd:hasProperty name="fieldcolumnname" value="LOCAL_REF" />
<xsd:hasProperty name="fieldgroupname" value="LOCAL.REF" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>

T24 XSD Schema Guide Page 41 of 56 March 2007


XSD Schema Generation

</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gOverride" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMEROverride" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Override" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="OVERRIDE"
xdb:SQLCollType="T24CUSTOMER60_COLL_COLL">
<xsd:annotation>
<xsd:documentation>OVERRIDE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Override" />
<xsd:hasProperty name="fieldnumber" value="41" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="60" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="41" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c41" />
<xsd:hasProperty name="fieldname" value="OVERRIDE" />
<xsd:hasProperty name="fieldcolumnname" value="OVERRIDE" />
<xsd:hasProperty name="fieldgroupname" value="OVERRIDE" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="60" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />

T24 XSD Schema Guide Page 42 of 56 March 2007


XSD Schema Generation

</xsd:complexType>
</xsd:element>
<xsd:element name="RecordStatus" minOccurs="0" xdb:SQLName="RECORD_STATUS"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>RECORD.STATUS</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="RecordStatus" />
<xsd:hasProperty name="fieldnumber" value="42" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c42" />
<xsd:hasProperty name="fieldname" value="RECORD.STATUS" />
<xsd:hasProperty name="fieldcolumnname" value="RECORD_STATUS" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CurrNo" minOccurs="0" xdb:SQLName="CURR_NO"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CURR.NO</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CurrNo" />
<xsd:hasProperty name="fieldnumber" value="43" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c43" />

T24 XSD Schema Guide Page 43 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldname" value="CURR.NO" />


<xsd:hasProperty name="fieldcolumnname" value="CURR_NO" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="gInputter" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERInputter" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="Inputter" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="INPUTTER"
xdb:SQLCollType="T24CUSTOMER35_COLL_COLL">
<xsd:annotation>
<xsd:documentation>INPUTTER</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Inputter" />
<xsd:hasProperty name="fieldnumber" value="44" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="35" />
<xsd:hasProperty name="fieldinputlen" value="35" />
<xsd:hasProperty name="fieldgroupnumber" value="44" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortnafe" value="c44" />
<xsd:hasProperty name="fieldname" value="INPUTTER" />
<xsd:hasProperty name="fieldcolumnname" value="INPUTTER" />
<xsd:hasProperty name="fieldgroupname" value="INPUTTER" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="35" />
</xsd:restriction>
</xsd:simpleType>

T24 XSD Schema Guide Page 44 of 56 March 2007


XSD Schema Generation

</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="gDateTime" minOccurs="0">
<xsd:complexType xdb:SQLType="gCUSTOMERDateTime" xdb:maintainDOM="false">
<xsd:sequence minOccurs="0">
<xsd:element name="DateTime" minOccurs="0" maxOccurs="unbounded" xdb:SQLName="DATE_TIME"
xdb:SQLCollType="T24CUSTOMER15_COLL_COLL">
<xsd:annotation>
<xsd:documentation>DATE.TIME</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="DateTime" />
<xsd:hasProperty name="fieldnumber" value="45" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="15" />
<xsd:hasProperty name="fieldinputlen" value="15" />
<xsd:hasProperty name="fieldgroupnumber" value="45" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c45" />
<xsd:hasProperty name="fieldname" value="DATE.TIME" />
<xsd:hasProperty name="fieldcolumnname" value="DATE_TIME" />
<xsd:hasProperty name="fieldgroupname" value="DATE.TIME" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="15" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="g" type="xsd:positiveInteger" use="optional" />
</xsd:complexType>
</xsd:element>
<xsd:element name="Authoriser" minOccurs="0" xdb:SQLName="AUTHORISER"
xdb:SQLCollType="T24CUSTOMER20_COLL_COLL">
<xsd:annotation>
<xsd:documentation>AUTHORISER</xsd:documentation>

T24 XSD Schema Guide Page 45 of 56 March 2007


XSD Schema Generation

<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="Authoriser" />
<xsd:hasProperty name="fieldnumber" value="46" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="20" />
<xsd:hasProperty name="fieldinputlen" value="20" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c46" />
<xsd:hasProperty name="fieldname" value="AUTHORISER" />
<xsd:hasProperty name="fieldcolumnname" value="AUTHORISER" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="20" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CoCode" minOccurs="0" xdb:SQLName="CO_CODE"
xdb:SQLCollType="T24CUSTOMER11_COLL_COLL">
<xsd:annotation>
<xsd:documentation>CO.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="CoCode" />
<xsd:hasProperty name="fieldnumber" value="47" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="11" />
<xsd:hasProperty name="fieldinputlen" value="11" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c47" />
<xsd:hasProperty name="fieldname" value="CO.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="CO_CODE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />

T24 XSD Schema Guide Page 46 of 56 March 2007


XSD Schema Generation

</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="11" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="DeptCode" minOccurs="0" xdb:SQLName="DEPT_CODE"
xdb:SQLCollType="T24CUSTOMER4_COLL_COLL">
<xsd:annotation>
<xsd:documentation>DEPT.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="DeptCode" />
<xsd:hasProperty name="fieldnumber" value="48" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="4" />
<xsd:hasProperty name="fieldinputlen" value="4" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c48" />
<xsd:hasProperty name="fieldname" value="DEPT.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="DEPT_CODE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AuditorCode" minOccurs="0" xdb:SQLName="AUDITOR_CODE"
xdb:SQLCollType="T24CUSTOMER16_COLL_COLL">
<xsd:annotation>
<xsd:documentation>AUDITOR.CODE</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="AuditorCode" />
<xsd:hasProperty name="fieldnumber" value="49" />
<xsd:hasProperty name="fielddatatype" value="string" />

T24 XSD Schema Guide Page 47 of 56 March 2007


XSD Schema Generation

<xsd:hasProperty name="fieldfmt" value="" />


<xsd:hasProperty name="fieldlen" value="16" />
<xsd:hasProperty name="fieldinputlen" value="16" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasPropertf name="fieldshortname" value="c49" />
<xsd:hasProperty name="fieldname" value="AUDITOR.CODE" />
<xsd:hasProperty name="fieldcolumnname" value="AUDITOR_CODE" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="L" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="16" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AuditDateTime" minOccurs="0" xdb:SQLName="AUDIT_DATE_TIME"
xdb:SQLCollType="T24CUSTOMER15_COLL_COLL">
<xsd:annotation>
<xsd:documentation>AUDIT.DATE.TIME</xsd:documentation>
<xsd:appinfo>
<xsd:hasProperty name="fieldtag" value="AuditDateTime" />
<xsd:hasProperty name="fieldnumber" value="50" />
<xsd:hasProperty name="fielddatatype" value="string" />
<xsd:hasProperty name="fieldfmt" value="" />
<xsd:hasProperty name="fieldlen" value="15" />
<xsd:hasProperty name="fieldinputlen" value="15" />
<xsd:hasProperty name="fieldgroupnumber" value="0" />
<xsd:hasProperty name="fieldmvgroupnumber" value="0" />
<xsd:hasProperty name="fieldshortname" value="c50" />
<xsd:hasProperty name="fieldname" value="AUDIT.DATE.TIME" />
<xsd:hasProperty name="fieldcolumnname" value="AUDIT_DATE_TIME" />
<xsd:hasProperty name="fieldgroupname" value="" />
<xsd:hasProperty name="fieldmvgroupname" value="" />
<xsd:hasProperty name="fieldjustification" value="R" />
<xsd:hasProperty name="fieldtype" value="D" />
</xsd:appinfo>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">

T24 XSD Schema Guide Page 48 of 56 March 2007


XSD Schema Generation

<xsd:maxLength value="15" />


</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="250" />
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute ref="xml:space" default="preserve" />
</xsd:complexType>
</xsd:schema>

T24 XSD Schema Guide Page 49 of 56 March 2007


XSD Schema Generation

Appendix B - CUSTOMER Record Example


RECID
----------------------------------------------------------------------------------------------
--------------------------------------
123123

XMLRECORD
----------------------------------------------------------------------------------------------
--------------------------------------

<row id="123123" xml:space="preserve">


<Mnemonic>T24ORACLE</Mnemonic>
<gShortName>
<ShortName>TEMENOS LONDON</ShortName>
<ShortName>TEMENOS HEMEL</ShortName>
</gShortName>
<gName1>
<Name1>TEMENOS FENCHURCH</Name1>
<Name1>TEMENOS HEMEL HEMPSTEAD</Name1>
</gName1>
<gStreet>
<Street>71 FENCHURCH STREET</Street>
<Street>MAYLANDS AVENUE</Street>
</gStreet>
<gTownCountry>
<TownCountry>LONDON</TownCountry>
<TownCountry>HEMEL HEMPSTEAD</TownCountry>
</gTownCountry>
<gRelationCode>
<mRelationCode m="1">
<RelationCode>2</RelationCode>
<RelCustomer>100172</RelCustomer>
<ReversRelCode>12</ReversRelCode>
</mRelationCode>
<mRelationCode m="2">
<RelationCode>1</RelationCode>
<RelCustomer>499061</RelCustomer>
<ReversRelCode>10</ReversRelCode>
</mRelationCode>
</gRelationCode>
<Sector>1111</Sector>
<AccountOfficer>1</AccountOfficer>
<gOtherOfficer>

T24 XSD Schema Guide Page 50 of 56 March 2007


XSD Schema Generation

<OtherOfficer>1</OtherOfficer>
</gOtherOfficer>
<Industry>8100</Industry>
<Target>999</Target>
<Nationality>UK</Nationality>
<CustomerStatus>4</CustomerStatus>
<Residence>GB</Residence>
<ContactDate>20000101</ContactDate>
<gText>
<Text>text1</Text>
<Text>text2</Text>
</gText>
<BirthIncorpDate>20000101</BirthIncorpDate>
<Language>1</Language>
<gPostCode>
<PostCode>EC3M 4TD</PostCode>
<PostCode>HP2 4NW</PostCode>
</gPostCode>
<gCountry>
<Country>UK</Country>
<Country>GB</Country>
</gCountry>
<ClsCparty>NO</ClsCparty>
<gLocalRef>
<LocalRef>100</LocalRef>
<LocalRef>200</LocalRef>
<LocalRef>300</LocalRef>
</gLocalRef>
<CurrNo>1</CurrNo>
<gInputter>
<Inputter>28_INPUTTER</Inputter>
</gInputter>
<gDateTime>
<DateTime>0006121122</DateTime>
</gDateTime>
<Authoriser>28_SANTHOSH.1</Authoriser>
<CoCode>US0010001</CoCode>
<DeptCode>1</DeptCode>
</row>

T24 XSD Schema Guide Page 51 of 56 March 2007


XSD Schema Generation

Appendix C – Oracle Structured Storage Description

The table description shows a reference to the nested tables.

SQL> desc XDBCUSTOMER;


Name Null? Type
----------------------------------------- -------- ----------------------------
RECID NOT NULL VARCHAR2(255)
XMLRECORD SYS.XMLTYPE(XMLSchema "CUSTO
MER.xsd" Element "row") STOR
AGE Object-relational TYPE "
CUSTOMERType114_T"

SQL> desc "CUSTOMERType114_T"


"CUSTOMERType114_T" is NOT FINAL
Name Null? Type
----------------------------------------- -------- ----------------------------
id VARCHAR2(250 CHAR)
space XDB.XDB$ENUM_T
MNEMONIC VARCHAR2(10 CHAR)
gShortName gCUSTOMERShortName
gName1 gCUSTOMERName1
gName2 gCUSTOMERName2
gStreet gCUSTOMERStreet
gTownCountry gCUSTOMERTownCountry
gRelationCode gCUSTOMERRelationCode
SECTOR VARCHAR2(4 CHAR)
ACCOUNT_OFFICER VARCHAR2(4 CHAR)
gOtherOfficer gCUSTOMEROtherOfficer
INDUSTRY VARCHAR2(4 CHAR)
TARGET VARCHAR2(4 CHAR)
NATIONALITY VARCHAR2(2 CHAR)
CUSTOMER_STATUS VARCHAR2(4 CHAR)
RESIDENCE VARCHAR2(2 CHAR)
CONTACT_DATE VARCHAR2(11 CHAR)
INTRODUCER VARCHAR2(35 CHAR)
gText gCUSTOMERText
LEGAL_ID VARCHAR2(20 CHAR)
REVIEW_FREQUENCY VARCHAR2(17 CHAR)
BIRTH_INCORP_DATE VARCHAR2(11 CHAR)
GLOBAL_CUSTOMER VARCHAR2(10 CHAR)

T24 XSD Schema Guide Page 52 of 56 March 2007


XSD Schema Generation

CUSTOMER_LIABILITY VARCHAR2(10 CHAR)


LANGUAGE VARCHAR2(2 CHAR)
POSTING_RESTRICT VARCHAR2(2 CHAR)
DISPO_OFFICER VARCHAR2(4 CHAR)
gPostCode gCUSTOMERPostCode
gCountry gCUSTOMERCountry
COMPANY_BOOK VARCHAR2(11 CHAR)
CONFID_TXT VARCHAR2(3 CHAR)
DISPO_EXEMPT VARCHAR2(3 CHAR)
ISSUE_CHEQUES VARCHAR2(3 CHAR)
CLS_CPARTY VARCHAR2(3 CHAR)
FX_COMM_GROUP_ID VARCHAR2(3 CHAR)
RESIDENCE_REGION VARCHAR2(9 CHAR)
ASSET_CLASS VARCHAR2(60 CHAR)
gCustomerRating gCUSTOMERCustomerRating
gLocalRef gCUSTOMERLocalRef
gOverride gCUSTOMEROverride
RECORD_STATUS VARCHAR2(4 CHAR)
CURR_NO VARCHAR2(4 CHAR)
gInputter gCUSTOMERInputter
gDateTime gCUSTOMERDateTime
AUTHORISER VARCHAR2(20 CHAR)
CO_CODE VARCHAR2(11 CHAR)
DEPT_CODE VARCHAR2(4 CHAR)
AUDITOR_CODE VARCHAR2(16 CHAR)
AUDIT_DATE_TIME VARCHAR2(15 CHAR)

Description of Controlling Group


Use quotes to maintain the character case.

SQL> desc "gCUSTOMERRelationCode"


Name Null? Type
----------------------------------------- -------- ----------------------------
g NUMBER(38)
mRelationCode mCUSTOMERRelationCode_COLL

SQL> desc "mCUSTOMERRelationCode_COLL"


"mCUSTOMERRelationCode_COLL" VARRAY(2147483647) OF mCUSTOMERRelationCode
Name Null? Type
----------------------------------------- -------- ----------------------------

T24 XSD Schema Guide Page 53 of 56 March 2007


XSD Schema Generation

m NUMBER(38)
RELATION_CODE VARCHAR2(3 CHAR)
REL_CUSTOMER VARCHAR2(10 CHAR)
REVERS_REL_CODE VARCHAR2(60 CHAR)

Description of Standalone Group

SQL> desc "gCUSTOMERText"


Name Null? Type
----------------------------------------- -------- ----------------------------
g NUMBER(38)
TEXT T24CUSTOMER35_COLL_COLL

SQL> desc "T24CUSTOMER35_COLL_COLL"


"T24CUSTOMER35_COLL_COLL" VARRAY(2147483647) OF VARCHAR2(35 CHAR)

T24 XSD Schema Guide Page 54 of 56 March 2007


XSD Schema Generation

Nested Tables

To display nested table allocations and their related parent table columns

SQL> select table_name, parent_table_column from user_nested_tables;

TABLE_NAME PARENT_TABLE_COLUMN
------------------ ------------------------------------------------------------
XDBCUSTOMER_2 "SYS_NC00006$"."gShortName"."SHORT_NAME"
XDBCUSTOMER_3 "SYS_NC00006$"."gName1"."NAME_1"
XDBCUSTOMER_4 "SYS_NC00006$"."gName2"."NAME_2"
XDBCUSTOMER_5 "SYS_NC00006$"."gStreet"."STREET"
XDBCUSTOMER_6 "SYS_NC00006$"."gTownCountry"."TOWN_COUNTRY"
XDBCUSTOMER_7 "SYS_NC00006$"."gRelationCode"."mRelationCode"
XDBCUSTOMER_12 "SYS_NC00006$"."gOtherOfficer"."OTHER_OFFICER"
XDBCUSTOMER_20 "SYS_NC00006$"."gText"."TEXT"
XDBCUSTOMER_29 "SYS_NC00006$"."gPostCode"."POST_CODE"
XDBCUSTOMER_30 "SYS_NC00006$"."gCountry"."COUNTRY"
XDBCUSTOMER_39 "SYS_NC00006$"."gCustomerRating"."CUSTOMER_RATING"
XDBCUSTOMER_40 "SYS_NC00006$"."gLocalRef"."LOCAL_REF"
XDBCUSTOMER_41 "SYS_NC00006$"."gOverride"."OVERRIDE"
XDBCUSTOMER_44 "SYS_NC00006$"."gInputter"."INPUTTER"
XDBCUSTOMER_45 "SYS_NC00006$"."gDateTime"."DATE_TIME"

T24 XSD Schema Guide Page 55 of 56 March 2007


XSD Schema Generation

To display contents of nested table

SQL> select /*+nested_table_get_refs*/ * FROM XDBCUSTOMER_7;

m REL REL_CUSTOM REVERS_REL_CODE


---------- --- ---------- ----------------------------------
1 2 100172 12

2 1 499061 10

To directly display value from nested table

SQL> select /*+nested_table_get_refs*/ A.COLUMN_VALUE "Name_1" FROM XDBCUSTOMER_2 A;

Name_1
-----------------------------------
TEMENOS LONDON
TEMENOS HEMEL

T24 XSD Schema Guide Page 56 of 56 March 2007

You might also like