Using a custom XML structure in the UserArea

If your custom data is too complex to fit in the standardProperty structure, you must use a custom XML structure.

By default, the UserArea elements in BODs are of type AnyType, because they can contain any data: standard properties, custom structures, or other elements. In these cases, you must define an XSD in the Data Catalog:

  • To select your properties in ION Connect for content-based routing or filtering.
  • To select your properties in an event monitor or an activation policy.

After you add the XSD to the Data Catalog, your custom elements are displayed in the attribute selection windows in ION.

For example, assume you must add this custom data in the BOD UserArea:

<UserArea>
                <AcmeCustomContacts>
                <Contact>
                <Name>Someone</Name>
                <Email>someone@acme.com</Email>
                </Contact>
                <Contact>
                <Name>Someone Else</Name>
                <Email>someone.else@somewhere.com</Email>
                </Contact>
                </AcmeCustomContacts>
                </UserArea>

In this case, you must complete these steps:

  1. Customize the connection point that sends the BOD to fill the UserArea as required. Customize the connection point that receives the BOD to handle the data.
  2. Create an XML Schema Definition (XSD) file to describe the added XML.
    For example, the AcmeCustomContacts.xsd file can contain this code:
    <?xml version="1.0" encoding="UTF-8"?>
                            <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
                            elementFormDefault="qualified" attributeFormDefault="unqualified">
                            <xs:element name="AcmeCustomContacts" type="AcmeCustomContactsType"/>
                            <xs:complexType name="AcmeCustomContactsType">
                            <xs:sequence>
                            <xs:element name="Contact" type="ContactType" maxOccurs="unbounded"/>
                            </xs:sequence>
                            </xs:complexType>
                            <xs:complexType name="ContactType">
                            <xs:sequence>
                            <xs:element name="Name" type="xs:string"/>
                            <xs:element name="Email" type="xs:string"/>
                            </xs:sequence>
                            </xs:complexType>
                            </xs:schema>
    Note: The XSD for a UserArea extension must have a single top-level element. To add multiple elements, group them under a single parent element.
  3. In ION, select Data Catalog > Schema Extensions > Schema Files and add the XSD file to the Data Catalog.
  4. In ION, select Data Catalog > Schema Extensions > Extensions, and map the schema file to the UserArea elements of the nouns that use the User Area Extension.
For further details, see the Infor OS User and Administration Library (Cloud) and select User > ION.