XSD schemas for objects

Use the XML export functionality to create XSD schema files for objects. There is a separate XSD file for each symbol. It is possible to combine XSD files for the reports.

Do not export XML data to your report unless you plan to use it. You may get invalid data in your report. The XML file uses more disk space and building the database from XML is slower.

Update the XSD every time you make changes to a symbol, such as new custom fields. You can run a report with an obsolete XSD, but the changes are not included in the report.

For more Information about the Export XML form, see the Infor PLM for Process Application Configuration Guide.

Sample Object XSD file

These files contain tagged elements of Optiva. Later, you use Crystal Reports to specify the elements you want in the report. When you run a report, the XSD definitions are used to generate XML values, which are displayed in the report according to the design of the report templates.

This example shows sections of the formula XSD.

Schema header

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="fsxml"
xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:msprop="urn:schemas-microsoft-com:xml-msprop"
<xs:element name="fsxml" msdata:IsDataSet="true">
<xs:complexType>
<xs:choice maxOccurs="unbounded">

Object name, details, and some header fields

<xs:element name="FSFORMULA"><xs:complexType><xs:sequence>
<xs:element name="FORMULA_CODE" default="@DFLTGLOBAL" msdata:Ordinal="0">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="32" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="VERSION" default="@DFLT" msdata:Ordinal="1">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="10" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="DESCRIPTION" default="." msdata:Ordinal="2">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="90" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="UOM_CODE" default="KG" msdata:Ordinal="3">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="10" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="ITEM_CODE" minOccurs="0" msdata:Ordinal="4">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="50" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="YIELD" type="xs:double" default="100" msdata:Ordinal="5" />
<xs:element name="YIELD_PCT" type="xs:double" default="100" msdata:Ordinal="6"/>
<xs:element name="PHANTOM_IND" type="xs:short" default="0" msdata:Ordinal="7" />

Each tab and its contents are assigned element names.

Custom tab

<xs:element name="C_CUST" minOccurs="0" msdata:Ordinal="44">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="50" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="C_GMO" minOccurs="0" msdata:Ordinal="45">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="14" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="C_NATURAL" minOccurs="0" msdata:Ordinal="46">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
</xs:restriction></xs:simpleType>
</xs:element>
...

Parameters tab

<xs:element name="FSFORMULATPALL" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="FORMULA_ID" type="xs:int" default="10" />
<xs:element name="LINE_TYPE" type="xs:short" default="0" />
<xs:element name="LINE_ID" type="xs:short" default="0" />
<xs:element name="CALC_LEVEL" type="xs:short" default="0" />
<xs:element name="PVALUE" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="40" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="PARAM_CODE" default="">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="DECDIGIT" type="xs:short" minOccurs="0" />
<xs:element name="TEST_CODE" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
...

Item Lines tab

<xs:element name="FSFORMULAINGR" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="FORMULA_ID" type="xs:int" default="10" />
<xs:element name="LINE_TYPE" type="xs:short" default="0" />
<xs:element name="LINE_ID" type="xs:short" default="0" />
<xs:element name="ITEM_CODE" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="50" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="QUANTITY" type="xs:double" minOccurs="0" />
<xs:element name="UOM_CODE" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="10" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="ITEM_FORMULA_ID" type="xs:int" default="0" />
<xs:element name="LINE_BREAK_CODE" minOccurs="0">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="10" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="MATERIAL_PCT" type="xs:double" default="0" />
<xs:element name="SCALE_IND" type="xs:short" default="0" />
<xs:element name="SUBFORMULA_IND" type="xs:short" default="0" />
...

Reference data

<xs:element name="FSFORMULAREF" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="R_OBJECT_TYPE" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="R_OBJECT_KEY" default="0"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="50" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="R_OBJECT_IND" default="0"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="5" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="R_OBJECT_DESC" minOccurs="0"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="90" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="REF_CODE" minOccurs="0"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="REF_STATUS" minOccurs="0"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="50" />
</xs:restriction></xs:simpleType></xs:element>
...

Security data

<xs:element name="FSFORMULAPER" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="GROUP_CODE" type="xs:string" minOccurs="0" />
<xs:element name="OWNER_CODE" type="xs:string" minOccurs="0" />
<xs:element name="GROUP_SECURITY" type="xs:short" minOccurs="0" />
<xs:element name="OWNER_SECURITY" type="xs:short" minOccurs="0" />
<xs:element name="ROLE_SECURITY" type="xs:short" minOccurs="0" />
<xs:element name="SECURITY_CLASS" type="xs:string" minOccurs="0" />
<xs:element name="FORMULA_ID" type="xs:int" default="10" />
<xs:element name="SRVROW_ID" msprop:readonly="True" type="xs:short"
minOccurs="0" />
<xs:element name="GROUP_CODE_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="OWNER_CODE_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="GROUP_SECURITY_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="OWNER_SECURITY_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="ROLE_SECURITY_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="SECURITY_CLASS_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
</xs:sequence></xs:complexType>
</xs:element>

Status data

<xs:element name="FSFORMULASTATUS" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="STATUS_IND" type="xs:short"minOccurs="0" />
<xs:element name="HOLD_CODE" type="xs:string" minOccurs="0" />
<xs:element name="APPROVAL_CODE" type="xs:string" minOccurs="0" />
<xs:element name="EFF_START_DATE" type="xs:dateTime" minOccurs="0" />
<xs:element name="EFF_END_DATE" type="xs:dateTime" minOccurs="0" />
<xs:element name="FORMULA_ID" type="xs:int" default="10" />
<xs:element name="OBJECTSYMBOL" msprop:readonly="True" type="xs:string"
minOccurs="0"/>
<xs:element name="CREATION_DATE" type="xs:dateTime"
default="2006-06-09T14:48:11.3680250-04:00" />
<xs:element name="CREATED_BY" default="">
xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="MODIFY_DATE" type="xs:dateTime" minOccurs="0" />
<xs:element name="MODIFY_BY" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
...

Context data

<xs:element name="FSFORMULACONTEXT" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="FORMULA_ID" type="xs:int" default="10" />
<xs:element name="ATTRIB_CODE" type="xs:string" default="" />
<xs:element name="ATTRIB_VAL" type="xs:string" default="" />
<xs:element name="DESCRIPTION" type="xs:string" minOccurs="0" />
<xs:element name="ATTRIB_ORDER" type="xs:short" minOccurs="0" />
<xs:element name="ATTRIB_KEY" type="xs:string" default="@DFLT" />
<xs:element name="SRVROW_ID" msprop:readonly="True" type="xs:short"
minOccurs="0" />
<xs:element name="ATTRIB_CODE_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
<xs:element name="ATTRIB_VAL_LABEL" msprop:readonly="True" type="xs:string"
minOccurs="0" />
</xs:sequence></xs:complexType>
</xs:element>

Document Attachments data

<xs:element name="FSDOC" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="DOC_ID" type="xs:int" default="0" />
<xs:element name="FUNCTION_CODE" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="30" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="TEXT_DATA" default="">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="1073741823" />
</xs:restriction></xs:simpleType></xs:element>
<xs:element name="ATTCH_CNT" type="xs:short" default="0" />
<xs:element name="ATTCH_TYPE" type="xs:short" default="0" />
<xs:element name="BLOB_ID" type="xs:int" minOccurs="0" />
<xs:element name="PUBLISHIND" msprop:readonly="True"
type="xs:string"minOccurs="0" />
<xs:element name="SRVROW_ID" msprop:readonly="True"
type="xs:short" minOccurs="0" />
<xs:element name="FUNCTION_CODE_LABEL" msprop:readonly="True"
type="xs:string" minOccurs="0" />
xs:element name="FSEMBEDDEDOBJECTS" minOccurs="0" maxOccurs="unbounded">
<xs:complexType><xs:sequence>
<xs:element name="BLOB_ID" type="xs:int" minOccurs="0" />
<xs:element name="DESCRIPTION" minOccurs="0">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="50" />
</xs:restriction></xs:simpleType></xs:element>

Other database data

<xs:element name="CHECKOUT_BY" minOccurs="0" msdata:Ordinal="35">\\
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="20" />\
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="CHECKOUT_DATE" type="xs:dateTime" minOccurs="0" msdata:Ordinal="36" />
<xs:element name="CHANGE_CNT" type="xs:int" default="2" msdata:Ordinal="37" />
<xs:element name="SECURITY_CLASS" minOccurs="0" msdata:Ordinal="38"><xs:simpleType>
<xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="TYPE_IND" type="xs:short" default="0" msdata:Ordinal="39" />
<xs:element name="LOGICAL_DELETE" type="xs:short" default="0" msdata:Ordinal="40" />
<xs:element name="CALC_MODE" type="xs:short" default="0" msdata:Ordinal="41" />
<xs:element name="ADJUST_PARAM" minOccurs="0" msdata:Ordinal="42">
<xs:simpleType><xs:restriction base="xs:string"><xs:maxLength value="20" />
</xs:restriction></xs:simpleType>
</xs:element>
<xs:element name="MATERIAL_CHANGE" type="xs:short" default="0" msdata:Ordinal="43" />