Go to primary content
Oracle® Retail Integration Cloud Service Implementation Guide
Release 19.0.000
F25439-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

15 RIB Localization - 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).

This chapter provides a detailed description of localization implementation at the Business Objects level. Localization hooks provided in base Business Objects and placeholders for adding implements are covered elsewhere in this guide.

As localization of Business Objects is performed as part of the localization process, where the end-point API's 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 ispossible for use by customers.

Prerequisites for RIB Localization

The tools used for localization extension of the RIB are separately documented. The primary tool is the Retail Functional Artifact Generator. The message (payload) structure and packaging is covered in the Oracle Retail Functional Artifacts Guide.

The following documents are referenced in this chapter and are required for the localization effort:

  • Oracle Retail Functional Artifacts Guide

  • Oracle Retail Functional Artifact Generator Guide

Business Objects Localization

Business Object localization is defined as extensions of the base XSDS made by the 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 contain 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 point where all the specific localization XSDs are imported and referred to. There exists one for each region (e.g. Brazil, India, China, etc.). 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.

Localization team add implements here.

<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 contain a customization 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 is follows 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:

See the Oracle Retail Functional Artifact Generator Guide and the Oracle Retail Functional Artifacts Guide.

Adding Localization Customization Fields

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

Packaging

Retail Functional Artifact packaging is extended to provide the regional localization placeholders and the region specific XSD. The placeholders for localization customization also are provided.


Note:

See the Oracle Retail Functional Artifact Generator Guide and the Oracle Retail Functional Artifacts Guide.