How to Make Transformation Maps Extension Aware How to Make the Transformation Template Industry Extensible

23-6 Developers Guide for Oracle Application Integration Architecture Foundation Pack Source Schema Type_to_Destination Schema Type.xsl Example: CreateOrderEBM_to_CreateOrderSiebelABO.xsl

23.3 Making Transformation Maps Extension Aware

Every component in the EBM, including the EBM header, contains a custom area that can be configured to add the necessary elements. You should develop the core transformation XSL file to provide extension capabilities using the guidelines in the following section. For more information about the EBM header, see Section 23.6, Introducing EBM Header Concepts .

23.3.1 How to Make Transformation Maps Extension Aware

To make transformation maps extension aware: 1. Create an extension XSL file for every transformation. An example of a core transformation XSL file: PurchaseOrder_to_ PurchaseOrder.xsl Every core XSL file name has one extension XSL file, for example: PurchaseOrder_to_PurchaseOrder_Custom.xsl. 2. Define empty named templates in the extension file for every component in the message. 3. Include the extension file in the core transformation file. 4. Add a call-template for each component in core transformation. 5. Enable the transformation to accommodate transformations for custom element as shown in Example 23–7 . Example 23–7 Transformation Enabled to Accommodate Transformations for Custom Element -XSL template to transform Address-- xsl: template name=Core_AddressTemplate xsl:param name = context select =. xsl:param name = contextType select =CORE address1xsl:value-of select=contextaddress1address1 address2xsl:value-of select=contextaddress1address2 cityxsl:value-of select=contextcitycity statexsl:value-of select=contextstatestate zipxsl:value-of select=contextzipzip xsl:if test=contextType=CORE xsl:call-template name=Vertical_AddressTemplate xsl:with-param name=context select=context xsl:with-param name=contextType select=contextType xsl:call-template xsl:if xsl: template Working with Message Transformations 23-7

23.3.2 How to Make the Transformation Template Industry Extensible

Mapping rules pertaining to customer-specific schema extensions are defined in these xsl extension templates. To make the transformation template industry extensible: 1. Put the extension templates into a separate transformation file. 2. Import from the main transformation file. Example 23–8 shows the industry extensible transformation template. Example 23–8 Industry Extensible Transformation Template xsl: template name=Core_AddressTemplate xsl:param name = context select =. xsl:param name = contextType select =CORE address1xsl:value-of select=contextaddress1address1 address2xsl:value-of select=contextaddress1address2 cityxsl:value-of select=contextcitycity statexsl:value-of select=contextstatestate zipxsl:value-of select=contextzipzip xsl:if test=contextType=CORE xsl:call-template name=Vertical_AddressTemplate xsl:with-param name=context select=context xsl:with-param name=contextType select=contextType xsl:call-template xsl:if xsl: template

23.4 Working with DVMs and Cross-References