Custom Transformations
The custom transformations are used to add data to custom elements in the incoming and outgoing messages. The incoming and outgoing messages have custom elements defined in the message. These custom elements will refer to a custom XML schema. The main transformation invokes custom transformation.
Empty custom transformation and custom schemas are shipped with the product. The implementation team can add additional fields in the custom schema and map them using the custom transformations.
Using custom transformations will enable the implementation to define and pass additional data from source system to the target system.
Please note the following regarding implementing custom transformations:
Each process in the integration has its own XSD file. The messages have custom elements which can be used to pass additional data from one application to another or vice versa.
Each xsd has a corresponding CustomType xsd in which the complexType elements for each customElements tag are defined.
Some process which does not expect a response back only uses one xsd files while some process that expects a response uses two xsd files, one for the request message and one for the response message.
To pass additional elements in the customElements tag, the corresponding complexType needs to be modified in the customType xsd. Add the additional elements required in the complexType elements (xsd for the Oracle Utilities Customer to Meter application).
Each process has a main transformation which invokes custom templates. Each main transformation file has a corresponding custom xsl and the custom templates are defined in the custom xsl.
These custom templates are invoked at the location where each customElements tag is present.
The custom xsl can be modified to add transformation for the newly added elements in the custom xsd files.
The custom xsd files for the Oracle Utilities Customer to Meter application are located in the product install home under the directory C2M_NMS PRODUCT_HOME/MDS-Artifacts/AIAMetaData/ AIAComponents/ApplicationObjectLibrary/OUC2M/V1/schemas. The Oracle Utilities Network Management System application does not have custom xsds. Oracle Utilities Network Management System has defined user defined field in there stored procedure to be used for extension.
The custom xsl files are located in the product install home under the directory C2M_NMS PRODUCT_HOME/services/industry/Utilities/EBF/<Process Name>/xsl.
After updating the xsd and xsl files in the product install home, update MDS using the ant scripts and restart the SOA server.
Refer to the command for MDS update in the installation guide to update MDS.
Example: To modify the Job History Query process to pass another search criteria LandMark.
Example: From Oracle Utilities Customer to Meter to Oracle Utilities Network Management System, perform the following steps:
Map requestMessage/location/customElements/landmark element in Oracle Utilities Customer to Meter to FIELD1 element in Oracle Utilities Network Management System.
Complete the following steps:
1. Modify OUC2MJobHistoryQueryCustomType.xsd.
<xsd:complexType name="locationCustomType">
<xsd:sequence>
<xsd:element name="landmark" type="xsd:string"/>
</xsd:sequence>
<xsd:complexType>
 
2. Modify Transform_C2M_to_NMS_JobHistoryQuery_Custom.xsl.
<xsl:template name="InputParameters_customElements">
<!-- this template is use for Xformation of //InputParameters/
customElements in Request Message-->
<FIELD1>
<xsl:value-of select="/tns1: requestMessage/ tns1: location/ tns1:customElements/tns1:landmark"/>
</FIELD1>
</xsl:template>