Skip Headers
Oracle® Retail Functional Artifacts Guide
Release 14.1
E57325-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

7 Localizing Retail Business Objects

The deployment of Oracle Retail applications across the globe often drive requirements to localize the messages that flow among the Oracle Retail applications to support the region specific requirements (such as tax laws).

As localization of Business Objects is performed as part of the localization process, where the end-point APIs are changed or added to per region specific business requirements, localizations are meant to be performed by Oracle Retail or Partners. The localization points are not for use by customers. However, localization customization is possible for use by customers.

This chapter demonstrates the standards used to create and manage functional artifacts as they relate to the localization and extension of the base business objects (XSDs).

The Functional Artifact Generator tool called the Template Creator is used to create the localization objects and hooks as described in the following example. The Template Generator is recommended for performing the basic steps of creating placeholders and imports.


Note:

For a step-by-step example, see the Oracle Retail Functional Artifact Generator Guide.

Business Objects Localization

Business Object localization is defined as extensions of the base XSDS made by Oracle Retail or partners to satisfy region specific business requirements.

Localization Hooks in Base Business Objects

The following table describes the hooks in base Business Objects.

Reference Description Example
Every Base BO XSD imports a LocOf<BO> XSD. A new placeholder XSD is created for each base Business Object. Every Business Object XSD imports the LocOf<BO> XSD.
<xs:import
        namespace="http://www.oracle.com/retail/integration/custom/bo/ExtOfASNInDesc/v1" schemaLocation="../../../../custom/bo/ExtOfASNInDesc/v1/ExtOfASNInDesc.xsd">
        <retailDoc:annotation>
            <retailDoc:documentation>It's a referenced element. For detailed description, please refer referenced element doc.</retailDoc:documentation>
        </retailDoc:annotation>
    </xs:import>
    <xs:import
        namespace="http://www.oracle.com/retail/integration/base/bo/LocOfASNInDesc/v1" schemaLocation="../../../../base/bo/LocOfASNInDesc/v1/LocOfASNInDesc.xsd">
        <retailDoc:annotation>
            <retailDoc:documentation>It's a referenced element. For detailed description, please refer referenced element doc.</retailDoc:documentation>
        </retailDoc:annotation>
    </xs:import>
Every Base BO XSD complex type has a localization point. Within each base Business Object, every complex type contains a reference to a placeholder for that complex type within the LocOf for that Business Object.
<xs:element name="ASNInItem">        <retailDoc:annotation>            <retailDoc:documentation>Description is not available.</retailDoc:documentation>        </retailDoc:annotation>        <xs:complexType>            <xs:sequence>            ...            ...                <xs:element maxOccurs="1" minOccurs="0" ref="ExtOfASNInDesc:ExtOfASNInItem">                    <retailDoc:annotation>                        <retailDoc:documentation>Provide an extension hook to customize ASNInItem.</retailDoc:documentation>                    </retailDoc:annotation>                </xs:element>                <xs:element maxOccurs="1" minOccurs="0" ref="LocOfASNInDesc:LocOfASNInItem">                    <retailDoc:annotation>                        <retailDoc:documentation>Provide an extension hook to localize ASNInItem.</retailDoc:documentation>                    </retailDoc:annotation>                </xs:element>                            </xs:sequence>        </xs:complexType>

Region Specific Placeholders

The following table describes region specific placeholders.

Reference Description Example
LocOfBO imports All Specific Locals The LocOf XSD is the point at which all specific localization XSDs are imported and referred to. There is one for each region (such as Brazil, India, and China).
The ISO standard alpha-2 country code is used as the identifier.
<xs:schema elementFormDefault="qualified"    targetNamespace="http://www.oracle.com/retail/integration/base/bo/LocOfASNInDesc/v1"    version="1.0"    xmlns="http://www.oracle.com/retail/integration/base/bo/LocOfASNInDesc/v1"    xmlns:BrASNInDesc="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1"    xmlns:InASNInDesc="http://www.oracle.com/retail/integration/localization/bo/InASNInDesc/v1"    xmlns:retailDoc="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">    <retailDoc:annotation>        <retailDoc:documentation>This is root element of this document which contains name space definitions for the document elements.</retailDoc:documentation>    </retailDoc:annotation>    <xs:import        namespace="http://www.oracle.com/retail/integration/localization/bo/InASNInDesc/v1" schemaLocation="../../../../localization/bo/InASNInDesc/v1/InASNInDesc.xsd">        <retailDoc:annotation>            <retailDoc:documentation>It's a referenced element. For detailed description, please refer referenced element doc.</retailDoc:documentation>        </retailDoc:annotation>    </xs:import>       <xs:import
namespace="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1" schemaLocation="../../../../localization/bo/BrASNInDesc/v1/BrASNInDesc.xsd">
        <retailDoc:annotation>
            <retailDoc:documentation>It's a referenced element. For detailed description, please refer referenced element doc.</retailDoc:documentation>
        </retailDoc:annotation>
    </xs:import>
</xs:schema>
Each of the specific localization XSDs will resolve the references with the actual localization specific elements. For each of the complex types in the region specific XSD, the place to perform the actual localizations.
<xs:schema elementFormDefault="qualified"    targetNamespace="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1"    version="1.0"    xmlns="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1"    xmlns:retailDoc="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">    <xs:import        namespace="http://www.oracle.com/retail/integration/custom/bo/EOfBrASNInDesc/v1" schemaLocation="../../../../custom/bo/EOfBrASNInDesc/v1/EOfBrASNInDesc.xsd">        <retailDoc:annotation>            <retailDoc:documentation>It's a referenced element.</retailDoc:documentation>        </retailDoc:annotation>    </xs:import>    <xs:element name="BrASNInItem">        <xs:complexType>           <xs:sequence>             ...             ...           </xs:sequence>     </xs:element></xs:schema>

Localization Customization

The following table describes the hook for localization customization.

Reference Description Example
Each specific localization XSD complex type contains a customiza-
tion hook.
In each of the specific localizations, a hook back to the customization of that complex type is referenced.
<xs:schema elementFormDefault="qualified"
    targetNamespace="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1"
    version="1.0"
    xmlns="http://www.oracle.com/retail/integration/localization/bo/BrASNInDesc/v1"
    xmlns:retailDoc="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import
        namespace="http://www.oracle.com/retail/integration/custom/EOfBrASNInDesc/v1" schemaLocation="../../../../custom/EOfBrASNInDesc/v1/EOfBrASNInDesc.xsd">
        <retailDoc:annotation>
            <retailDoc:documentation>It's a referenced element.</retailDoc:documentation>
        </retailDoc:annotation>
    </xs:import>
    <xs:element name="BrASNInItem">
        <xs:complexType>
           <xs:sequence>
             ...
             ...
             <xs:element maxOccurs="1" minOccurs="0" ref="EOfBrASNInDesc:EOfBrASNInItem">
               <retailDoc:annotation>
                 <retailDoc:documentation>Provide an extension hook to customize ASNInItem
                 </retailDoc:documentation>
               </retailDoc:annotation>
             </xs:element>
          </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Adding Localization Fields

To add the localization specific fields in a placeholder, the first step is to determine the region specific XSD, which follows the naming convention below.

<CC><BO>.xsd (for exampleBrASNInDesc), where CC = 2 char ISO country code.

Determine the complex type fields that must be added. Add the fields and generate payloads using the Artifact Generator tool.


Note:

For more information, see the Oracle Retail Functional Artifact Generator Guide.

Adding Localization Customization Fields

Customization of localization Business Objects follows the same process required for base Business Objects customization.