The document structures defined in the XSD are converted to regular BPM components.
For each complex XSD type, a new BPM Component is generated. XML elements and XML attributes become attributes of the BPM components. All generated XSD components inherit from the standard Fuego.Xml.XMLObject component (refer to the Oracle BPM Components Reference).
If the type of an XML element is complex, then the type of the associated component attribute will be of that of the component created for that complex type. For example, if a complex <customer> element includes a complex <address> element, you get two BPM components (Customer and Address) and the Customer component contains an attribute named address of type Address.
The naming conventions on Java and PBL dictate that component names should start with uppercase letters and attribute names should start with lowercase letters. All names should use "camel-case" to separate words and not use underscores ("_").
When cataloging XSDs, the generated components' attributes will follow Java conventions and the original XML element and attribute names will be converted if necessary.
For example, if an XSD defines an type named purchase_order, the corresponding BPM component is named PurchaseOrder.
| XSD Type | PBL Type |
|---|---|
| base64Binary | Binary |
| hexBinary | Binary |
| anyURI | String |
| anguage | String |
| normalizedString | String |
| string | String |
| token | String |
| byte | Int(8) |
| decimal | Decimal |
| double | Real |
| float | Real(32) |
| int | Int |
| integer | int(64) |
| long | int(64) |
| negativeInteger | Int(64) |
| nonNegativeInteger | Int(64) |
| nonPositiveInteger | Int(64) |
| positiveInteger | Int(64) |
| short | Int(16) |
| unsignedByte | Int(8) |
| unsignedInt | Int |
| unsignedLong | Int(64) |
| unsignedShort | Int(16) |
| date | Time |
| dateTime | Time |
| duration | Interval |
| gDay | Int |
| gMonth | Int |
| gMonthDay | Time |
| gYear | Int(16) |
| gYearMonth | Time |
| time | Time |
| anyType | Fuego.Xml.XMLObject |
| anySimpleType | String |
| Name | String |
| NCName | String |
| NOTATION | String |
| QName | String |
| ENTITY | String |
| ENTITIES | String[] |
| ID | String |
| IDREF | String |
| IDREFS | String[] |
| NMTOKEN | String |
| NMTOKENS | String[] |