<?xml version='1.0'?>
<datamodel version="3.0" 
           xmlns="http://www.tresos.de/_projects/DataModel2/08/root.xsd" 
           xmlns:a="http://www.tresos.de/_projects/DataModel2/08/attribute.xsd" 
           xmlns:v="http://www.tresos.de/_projects/DataModel2/06/schema.xsd" 
           xmlns:d="http://www.tresos.de/_projects/DataModel2/06/data.xsd">
<!--
*   @file    IntegrationFramework.xdm
*   @version 1.0.0
*
*   @brief   AUTOSAR - IntegrationFramework - Tresos Studio plugin schema file
*   @details This file contains the schema configuration for and IntegrationFramework Tresos Studio plugin.
*            This file contains sample code only. It is not part of the production code deliverables
-->
<!--
====================================================================================================
*   Platform             : PA
*
*   Autosar Version      : 4.3.1
*   Autosar Revision     : ASR_REL_4_3_REV_0001
*   SW Version           : 1.0.0
*   Build Version        : MPC5777CXG_MCAL_1_0_0_RTM_ASR_REL_4_3_REV_0001_20190318

*   (c) Copyright 2006-2016 Freescale Semiconductor, Inc. 
*       Copyright 2017-2018 NXP
*   All Rights Reserved.
====================================================================================================
====================================================================================================
====================================================================================================
-->    
<d:ctr type="AUTOSAR" factory="autosar" 
    xmlns:ad="http://www.tresos.de/_projects/DataModel2/08/admindata.xsd" 
    xmlns:icc="http://www.tresos.de/_projects/DataModel2/08/implconfigclass.xsd" 
    xmlns:mt="http://www.tresos.de/_projects/DataModel2/11/multitest.xsd" >
    <d:lst type="TOP-LEVEL-PACKAGES">
        <d:ctr name="TS_T2D41M10I0R0" type="AR-PACKAGE">
            <d:lst type="ELEMENTS">
                <d:chc name="PlatformIntegration" type="AR-ELEMENT" value="MODULE-DEF">
                    <v:ctr type="MODULE-DEF">
                        <a:a name="DESC">
                           <a:v>
                                    <![CDATA[EN:<html>
                                        Configuration of the Generic integration applicaton components.
                                    </html>]]>
                           </a:v>
                        </a:a>
                        <a:a name="ADMIN-DATA" type="ADMIN-DATA">
                            <ad:ADMIN-DATA>
                               <ad:LANGUAGE>EN</ad:LANGUAGE>
                               <ad:DOC-REVISIONS>
                                  <ad:DOC-REVISION>
                                  <ad:REVISION-LABEL>1.0.0</ad:REVISION-LABEL>
                                  <ad:ISSUED-BY>NXP</ad:ISSUED-BY>
                                  <ad:DATE>2010-12-03</ad:DATE>
                                  </ad:DOC-REVISION>
                               </ad:DOC-REVISIONS>
                            </ad:ADMIN-DATA>
                        </a:a>
                        <a:a name="LOWER-MULTIPLICITY" value="1"/>
                        <a:a name="RELEASE" value="asc:4.3.1"/>
                        <a:a name="UPPER-MULTIPLICITY" value="1"/>
                        <a:a name="UUID" value="ECUC:aa293437-42fc-3434-b6a4-f8c4da165866"/>
                        <v:var name="IMPLEMENTATION_CONFIG_VARIANT" type="ENUMERATION">
                            <a:a name="LABEL" value="Config Variant"/>
                            <a:a name="UUID" value="ECUC:ef6ab642-a609-46f7-b4bc-2f16166ba3be"/>
                            <a:da name="DEFAULT" value="VariantPostBuild"/>
                            <a:da name="RANGE">
                                 <a:v>VariantPostBuild</a:v>
                                <a:v>VariantPostBuildSelectable</a:v>
                            </a:da>
                        </v:var>
                       
                        <v:ctr name="PlatformIntegrationGeneral" type="IDENTIFIABLE">
                            <a:a name="DESC" 
                                 value="EN: This container holds the general, pre-compile configuration parameters for the EcuMFlex."/>
                            <a:a name="UUID" value="ECUC:100d668b-c1c3-4833-9bd8-2ebcdc32b277"/>
                            
                            <v:var name="UseRTM" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the RTM is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:da name="DEFAULT" value="false"/>
                                <a:da name="EDITABLE" value="false"/>								
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89e8b-c07e-46f0-b346-dbf248bedc09"/>
                            </v:var>     
                            

                            <v:ctr name="RunTimeMeasurementConfig" type="IDENTIFIABLE">    
                                <a:a name="DESC" 
                                 value="EN: This container holds the general, pre-compile configuration parameters for the Runtime measurement."/>
                                <a:a name="UUID" value="ECUC:77714817-1bb4-4de7-a509-696449376327"/>
                                <a:da name="EDITABLE" type="XPath">
                                    <a:tst expr="node:value(../UseRTM) = 'true'"/>
                                </a:da>

                                <v:var name="RtmMaxCountValue" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value coresponding to Overflow limit of the HW Counter in use.
                                            </html> ]]>
                                        </a:v>
                                    </a:a> 
                                    <a:da name="EDITABLE" type="XPath">
                                       <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                    
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Maximum number of counted ticks"/>
                                    <a:a name="UUID" value="ECUC:ae7f2b9b-74ab-4a31-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="4294967295"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=4294967295"/>
                                        <a:tst expr="&gt;=0"/>
                                    </a:da>                                      
                                </v:var>

                                <v:var name="RtmUsedHardwareUnit" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value coresponding to the HW Unit that contain the HW Channel in use.
                                            </html> ]]>
                                        </a:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                        
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Used Hardware Unit index"/>
                                    <a:a name="UUID" value="ECUC:8c992b9b-74ab-4a31-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="0"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=1"/>
                                        <a:tst expr="&gt;=0"/>
                                    </a:da>                                      
                                </v:var>
                                
                                <v:var name="RtmUsedHardwareChannel" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value coresponding to the numerical HW Channel used for counting the time stamps.
                                            </html> ]]>
                                        </a:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                        
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Used Hardware Channel index"/>
                                    <a:a name="UUID" value="ECUC:ae7f4a31-74ab-4a31-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="2"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=3"/>
                                        <a:tst expr="&gt;=0"/>
                                    </a:da>
                                </v:var>
                                
                                <v:var name="RtmEnableMovingAverage" type="BOOLEAN">
                                    <a:a name="DESC" 
                                    value="EN: Switch to indicate if the moving average algorithm is used."/>
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS" 
                                    type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                        
                                    <a:a name="LABEL" value="Enable moving average"/>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:da name="DEFAULT" value='false'/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                    <a:a name="UUID" value="ECUC:28a89e8b-c07e-46f0-b346-4a3148bedc09"/>
                                </v:var>
                                
                                <v:var name="RtmEnableFixedPeriodMeasurements" type="BOOLEAN">
                                    <a:a name="DESC" 
                                    value="EN: Switch to indicate if the fixed period measuremnts is enabled or not."/>
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS" 
                                    type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>
                                    <a:da name="DEFAULT" value='false'/>
                                    <a:a name="LABEL" value="Enable fixed period measurements"/>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                    <a:a name="UUID" value="ECUC:28a84a31-c07e-46f0-b346-dbf248bedc09"/>
                                </v:var>                                
                                
                                <v:var name="RtmMaxMeasurementsNumber" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value coresponding to the maximum measurements started in the same sesion.
                                            </html> ]]>
                                        </a:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                    
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Maximum number of active measurements"/>
                                    <a:a name="UUID" value="ECUC:ae7f2b9b-4a31-4a31-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="1"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=4"/>
                                        <a:tst expr="&gt;=1"/>
                                    </a:da>
                                </v:var>
                                
                                <v:var name="RtmNonTrustedInterval" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value that define the insecure interval of the counter (where Overflow can be lost).
                                            </html> ]]>
                                        </a:v>
                                    </a:a>                                                
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Non-trusted measurements interval"/>
                                    <a:a name="UUID" value="ECUC:ae74a31b-74ab-4a31-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="2"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=3"/>
                                        <a:tst expr="&gt;=0"/>
                                    </a:da>
                                </v:var>
                                
                                <v:var name="RtmNumberOfMeasurements" type="INTEGER">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Value representing the number of consecutive measurements before calculate a new medium value.
                                            This is used only if the Moving Average algorithm is enabled
                                            </html> ]]>
                                        </a:v>
                                    </a:a>                                                
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                        <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../RtmEnableMovingAverage) = 'true'"/>
                                    </a:da>
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL"/>
                                    <a:a name="LABEL" value="Number of measurements used to calculate avg."/>
                                    <a:a name="UUID" value="ECUC:ae7f2b9b-74ab-9d76-9d76-7c4eca6f36ac"/>
                                    <a:da name="DEFAULT" value="2"/>
                                    <a:da name="INVALID" type="Range">
                                        <a:tst expr="&lt;=3"/>
                                        <a:tst expr="&gt;=0"/>
                                    </a:da>
                                </v:var>
                                
                                <v:ref name="RtmClockReference" type="REFERENCE">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Reference to a container of the type McuClockReferencePoint, to select an input clock.
                                            !!! Make sure the selected reference clock is done in accordance to the current hardware setup !!!
                                            </html>
                                            ]]>
                                        </a:v>
                                    </a:a>
                                    <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                        <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                        <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                    </a:a>
                                    <a:da name="EDITABLE" type="XPath">
                                        <a:tst expr="node:value(../../UseRTM) = 'true'"/>
                                    </a:da>                                    
                                    <a:a name="ORIGIN" value="NXP"/>
                                    <a:a name="SCOPE" value="LOCAL" />
                                    <a:a name="UUID" value="ECUC:c70d9d76-385a-48de-a90d-5745a7b836ab" />
                                    <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint" />
                                </v:ref>
                             </v:ctr>
                        </v:ctr>

                        <v:ctr name="PlatformApp_FeatureList" type="IDENTIFIABLE">
                            <a:a name="DESC" 
                             value="EN: This container holds the general, pre-compile configuration parameters for the EcuMFlex."/>
                            <a:a name="UUID" value="ECUC:100d9d76-c1c3-4833-9bd8-2eb9d762b277"/>

                            <v:var name="EnableVdrApp" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the VDR application is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:da name="DEFAULT" value="false"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89e8b-9d76-46f0-b346-db9d76bedc09"/>
                            </v:var>
                            
                            <v:var name="EnableLightingApp" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the Lighting Application is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:da name="DEFAULT" value="false"/>                                  
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89d76-c07e-100d-b346-dbf248bedc09"/>
                            </v:var>  
                            
                            <v:var name="EnableMotorControlApp" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the Motor Control Application is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:da name="DEFAULT" value="false"/>
                                <a:da name="EDITABLE" value="false"/>                              
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89e8b-c07e-46f0-b346-100d48bedc09"/>
                            </v:var>
                            
                            <v:var name="EnableRemoteRte" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether RTE uses double buffered data exchage method.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:da name="DEFAULT" value="false"/>
                                <a:da name="READONLY" value="true"/>                                    
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89d76-0d48-0d48-b346-dbf248bedc09"/>
                            </v:var> 
                            
                            <v:var name="EnableSingleTaskAppRunnable" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether all applications shall be called from a single task or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:da name="DEFAULT" value="false"/>  								
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a0d48b-c07e-46f0-b346-100d48be100d"/>
                            </v:var>

                            <v:var name="EnableDataLogging" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the Data Loggins in Fls/EEP is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:da name="DEFAULT" value="false"/>
                                <a:da name="EDITABLE" value="false"/>                                 
                                <a:a name="UUID" value="ECUC:28a89e8b-9d76-46f0-b346-db9d76bedc09"/>
                            </v:var>
                            
                            <v:var name="EnableMemDAL" type="BOOLEAN">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN:
                                        <html>
                                        This flag indicates whether the VDR application is used or not.
                                        </html> ]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                </a:a>
                                <a:da name="DEFAULT" value="false"/>                                
                                <a:da name="EDITABLE" value="false"/>	  								
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SCOPE" value="LOCAL"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:28a89e8b-9d76-46f0-b346-db9d76bedc09"/>
                            </v:var>
                        </v:ctr>                        
                        
                        <!-- @implements OcuConfigSet_Object -->
                        <v:ctr name="ApplicationRteConfig" type="IDENTIFIABLE">
                            <a:a name="DESC">
                                <a:v>
                                    <![CDATA[EN:
                                    <html>
                                         This container is the base of a Configuration Set, which contains the configured OCU channels. This way, different configuration sets can be defined for post-build process.
                                    </html> ]]>
                                </a:v>
                            </a:a>
                            <a:a name="UUID" value="ECUC:5ce51b69-fffb-4b87-863d-7463e09eeeb1"/>
 
                            <v:lst name="VirtualDataRouterApp" type="MAP">
                                <a:da name="EDITABLE" type="XPath">
                                    <a:tst expr="node:value(../../PlatformApp_FeatureList/EnableVdrApp) = 'true'"/>
                                </a:da>

                                <v:ctr name="VirtualDataRouterApp" type="IDENTIFIABLE">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            List of Application defined messages.                                  
                                            </html> ]]>
                                        </a:v>
                                    </a:a>
                                    <a:da name="LABEL" value="Sample App VDR Features"/>
                                    <a:a name="UUID" value="ECUC:de1adbaf-34dd-5f7e-89de-65775795e1b9"/>
                                                                                               
                                    <v:var name="VdrMessageId" type="INTEGER">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Message Id.
                                                Each Message ID must be unique for a given type of message. A different Rx message and a Tx message can have the same ID value but
                                                two different RX (or TX) messages shall have different IDs. 
                                                Message IDs must be consecutive and should have a value less the the total number of message of that type.
                                                </html> ]]>
                                            </a:v>
                                        </a:a>                                                
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS"  type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                            <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="LABEL" value="Message Id"/>
                                        <a:a name="UUID" value="ECUC:ae7f2b9b-eefa-4a31-9d76-7c4eceefa6ac"/>

                                        <a:da name="DEFAULT" type="XPath">
                                            <a:tst expr="num:i(
                                                                (num:i(node:fallback(./../VdrMessageType, 'RX_MESSAGE') != 'RX_MESSAGE') * num:i(count(node:fallback((node:current()/../../*/VdrMessageType[node:fallback(.,'RX_MESSAGE')!='RX_MESSAGE']), num:i(1))) - 1)) +
                                                                (num:i(node:fallback(./../VdrMessageType, 'RX_MESSAGE') = 'RX_MESSAGE') * num:i(count(node:fallback((node:current()/../../*/VdrMessageType[node:fallback(.,'RX_MESSAGE')='RX_MESSAGE']), num:i(1))) - 1))
                                                              )"/>
                                        </a:da>
                                        <a:da name="INVALID" type="XPath">
                                             <a:tst expr="(node:value(./../VdrMessageType) = 'RX_MESSAGE') and (node:value(.) &gt;= num:i(count(../../*/VdrMessageType[.='RX_MESSAGE'])))" 
                                                true="Rx message id must be smaller than the total number of RX messages."/>
                                             <a:tst expr="(node:value(./../VdrMessageType) != 'RX_MESSAGE') and (node:value(.) &gt;= num:i(count(../../*/VdrMessageType[.!='RX_MESSAGE'])))" 
                                                true="Tx message id must be smaller than the total number of TX messages."/>                                                                                      
                                        </a:da>
                                        
                                        <a:da name="INVALID" type="Range">
                                            <a:tst expr="&lt;=255"/>
                                            <a:tst expr="&gt;=0"/>
                                        </a:da>                                                        
                                                                                   
                                    </v:var>
                                    
                                    <v:var name="VdrMessageType" type="ENUMERATION">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Mssage type: RX, TX, TX_REPLY                                       
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                            <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="LABEL" value="Signal Direction"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:fffbb255-1f6b-9d91-acdf-977c9fc0cb23"/>                                       
                                        <a:da name="DEFAULT" value="RX_MESSAGE"/>
                                        <a:da name="RANGE">
                                            <a:v>RX_MESSAGE</a:v> 
                                            <a:v>TX_MESSAGE</a:v>
                                            <a:v>TX_REPLY</a:v>                                                                
                                        </a:da> 
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="((node:value(.) = 'TX_MESSAGE') and ((node:value(./../VdrMessageScope) != 'APP_EVENT_NOTIFICATION') and (node:value(./../VdrMessageScope) != 'APP_EVENT_FORWARD_MSG')))"
                                                 true="TX Messages requires EVENT type messages"/>
                                            <a:tst expr="((node:value(.) = 'TX_REPLY') and ((node:value(./../VdrMessageScope) = 'APP_EVENT_NOTIFICATION') or (node:value(./../VdrMessageScope) = 'APP_EVENT_FORWARD_MSG') or (node:value(./../VdrMessageScope) = 'APP_REQUEST_OUTPUT_UPDATE')))"
                                                 true="TX Replay Messages cannot have the message scope:APP_EVENT_NOTIFICATION or APP_REQUEST_OUTPUT_UPDATE"/>
                                            <a:tst expr="((node:value(.) = 'RX_MESSAGE') and  (node:value(./../VdrMessageScope) = 'APP_EVENT_NOTIFICATION') )"
                                                true="RX Messages requires VdrMessageScope must not be of  APP_EVENT_NOTIFICATION !"/>
                                            <a:tst expr="((node:value(.) = 'RX_MESSAGE') and  (node:value(./../VdrMessageScope) = 'APP_REQUEST_OUTPUT_UPDATE') and (node:refexists(../ReplaySignalRef)))"
                                                true="RX Messages requires that are used to 'REQUEST OUTPUT UPDATES' must not have any TX Reply reference configured"/>    
                                            <a:tst expr="((node:value(.) = 'RX_MESSAGE') and ((node:value(./../VdrMessageScope) != 'APP_REQUEST_OUTPUT_UPDATE') and (node:value(./../VdrMessageScope) != 'APP_EVENT_FORWARD_MSG')) and (node:value(node:ref(../ReplaySignalRef)/VdrMessageType) != 'TX_REPLY'))"
                                                true="The configured replay message must be of type: TX_REPLY"/>
                                            <a:tst expr="((node:value(.) = 'RX_MESSAGE') and (node:ref(./../ComdalSignalRef)/ComChannelDirection = 'RX_CHANNEL')) or 
                                                          (node:value(.) != 'RX_MESSAGE') and ((node:ref(./../ComdalSignalRef)/ComChannelDirection = 'TX_CHANNEL'))"
                                                false="RX Messages requires underlaying communication channel to be of type RECEIVE,
                                                      TX Messages requires underlaying communication channel to be of type TRANSMIT!"/>
                                            <!--a:tst expr="((node:value(.) = 'RX_MESSAGE') and ((node:ref(./../ComdalSignalRef)/ComChannelType = 'CAN' and node:value(node:ref(node:ref(./../ComdalSignalRef)/CanHwObjectRef)/CanObjectType) = 'RECEIVE') or (node:ref(./../ComdalSignalRef)/ComChannelType = 'UART' and node:value(node:ref(node:ref(./../ComdalSignalRef)/UartHwUnitRef)/UartSignalDirection) = 'RX_SIGNAL') or (node:ref(./../ComdalSignalRef)/ComChannelType = 'NFC' and node:value(node:ref(node:ref(./../ComdalSignalRef)/AnfcChannelRef)/NFCAccessType) = 'COMDAL_RXCHANNEL'))) or
                                                         (node:value(.) != 'RX_MESSAGE') and ((node:ref(./../ComdalSignalRef)/ComChannelType = 'CAN' and node:value(node:ref(node:ref(./../ComdalSignalRef)/CanHwObjectRef)/CanObjectType) = 'TRANSMIT') or (node:ref(./../ComdalSignalRef)/ComChannelType = 'UART' and node:value(node:ref(node:ref(./../ComdalSignalRef)/UartHwUnitRef)/UartSignalDirection) = 'TX_SIGNAL')or (node:ref(./../ComdalSignalRef)/ComChannelType = 'NFC' and node:value(node:ref(node:ref(./../ComdalSignalRef)/AnfcChannelRef)/NFCAccessType) = 'COMDAL_TXCHANNEL'))"
                                                false="RX Messages requires underlaying communication channel to be of type RECEIVE,
                                                      TX Message requires underlaying communication channel to be of type TRANSMIT!"/-->
                                        </a:da>                                                             
                                    </v:var> 

                                    <v:var name="VdrMessageScope" type="ENUMERATION">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Vdr Message Scope.                                      
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                            <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="LABEL" value="Signal Type"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:fffbb255-1f6b-9d91-acdf-977c9fc0cb23"/>                                       
                                        <a:da name="DEFAULT" value="APP_EVENT_NOTIFICATION"/>
                                        <a:da name="RANGE">
                                            <a:v>APP_EVENT_NOTIFICATION</a:v>
                                            <a:v>APP_EVENT_FORWARD_MSG</a:v>                                                        
                                            <a:v>APP_REQUEST_STATUS</a:v>
                                            <a:v>APP_REQUEST_MSG_FORWARD</a:v>
                                            <a:v>APP_REQUEST_OUTPUT_UPDATE</a:v>
                                            <a:v>APP_REQUEST_CHANGE_HW_VARIANT</a:v>
                                            <a:v>APP_REQUEST_CHANGE_RUN_MODE</a:v>
                                            <a:v>APP_REQUEST_RTM_VALUES</a:v>
                                            <a:v>APP_REQUEST_DISCOVERY</a:v>
                                        </a:da>
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="(((node:value(.) = 'APP_REQUEST_CHANGE_RUN_MODE') or ((node:value(.) = 'APP_REQUEST_CHANGE_RUN_MODE'))) and 
                                                          ((node:value(../../../../PlatformApp_FeatureList/EnablePowerManagement) = 'false') and (node:value(../../../../PlatformApp_FeatureList/EnableWdgResetTest) = 'false')))"
                                                 true="TX Messages requires EVENT type messages"/>                                                
                                            
                                        </a:da>                                        
                                    </v:var>                                                          
                            
                                    <v:var name="DefaultTxData" type="STRING">
                                        <a:a name="LABEL" value="Default Tx Data"/>
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Default Tx Data.                                                                                                                                                                               
                                                Each Tx Data Byte must be writen as integer value and need to be separated by a comma (',').
                                                Lenght of the TX data string must be equal or less the the (DefaultDataLength - 1).                                                                
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                            <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:42bbb2ee-2af5-9dc1-aeef-977c9fcfcb23"/>
                                        <!--a:da name="INVALID" type="XPath">
                                            <a:tst expr="(node:value(./../VdrMessageType) != 'TX_MESSAGE')"
                                                 true="TX Messages requires EVENT Notification type signals (VdrMessageScope = APP_EVENT_NOTIFICATION)"/>                                                                                                                     
                                        </a:da-->
                                        <a:da name="EDITABLE" type="XPath">
                                            <a:tst expr="(node:value(./../VdrMessageType) = 'TX_MESSAGE') and  (node:value(./../VdrMessageScope) = 'APP_EVENT_FORWARD_MSG')"/>                                                                     
                                        </a:da>                                                            
                                    </v:var>
                                    
                                     <v:var name="DefaultDataLength" type="INTEGER">
                                        <a:a name="LABEL" value="Default Data Length"/>
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Default Data Lengt for the given message. 
                                                When the message references a CAN port, the default Data Length can be calculated automatically.
                                                For UART ports, the user must define the Data Length manually and the value configured must be equal or less the the configured UART data payload.
                                                
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                            <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>                                                    
                                        <a:da name="DEFAULT" type="XPath">
                                            <a:tst expr="num:i( 
                                                                 (number(node:fallback('->node:value(node:ref(./../ComdalSignalRef)/ComChannelType)', 'CAN') = 'CAN') *
                                                                 number(substring-before(substring-after(node:fallback(/AUTOSAR/TOP-LEVEL-PACKAGES/Can/ELEMENTS/Can/CanGeneral/MBDSR, ''),'_'), '_'))) +
                                                                 (number(node:fallback('->node:value(node:ref(./../ComdalSignalRef)/ComChannelType)', 'CAN') = 'UART') *
                                                                 num:i(number(node:fallback(/AUTOSAR/TOP-LEVEL-PACKAGES/ComDal/ELEMENTS/ComDal/ComDalBswConfig/ComExtDevices/*/UartDriverConfig/*/UartPayloadSize, num:i(0)))))
                                                              )"/>
                                        </a:da>
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="(
                                                           ( 
                                                             (node:value(node:fallback(node:path(node:ref(./../ComdalSignalRef)/ComChannelType), 'CAN')) = 'CAN') and 
                                                             ((num:i(number(substring-before(substring-after(node:fallback(/AUTOSAR/TOP-LEVEL-PACKAGES/Can/ELEMENTS/Can/CanGeneral/MBDSR, 'CAN_8_BYTES_PAYLOAD'),'_'), '_')))) != node:value(.))
                                                           )
                                                           or
                                                           (
                                                              (node:value(node:fallback(node:path(node:ref(./../ComdalSignalRef)/ComChannelType), 'UART')) = 'UART')   and
                                                              ((num:i((node:value(/AUTOSAR/TOP-LEVEL-PACKAGES/ComDal/ELEMENTS/ComDal/ComDalBswConfig/ComExtDevices/*/UartDriverConfig/*/UartPayloadSize)))) &lt;= num:i(node:value(.) - 1) )
                                                           )
                                                         )"                                                                                                                   
                                                   true="The data length (payload) is configured in underlaying driver (CAN, UART, NFC) that handles the message. 
                                                             Note. For UART message the payload may be smaller than the maximum payload size configured in UART driver."/>                                                                                   
                                                  
                                            <a:tst expr="(node:value(./../VdrMessageScope) = 'APP_EVENT_NOTIFICATION') and (node:value(./../VdrMessageType) = 'TX_MESSAGE') and (node:value(.) &lt;= ((((count(node:ref(./../ApplicationInstaceRef)/./LightingChannels/*))) * num:i(17)) + num:i(5)))"
                                                  true="The payload size for TX EVENT NOTIFICATION messages shall take into account the number of channels in the instance for which the Notification is requested using the formula: ((N-channels * 17 bytes) + 5 bytes)
                                                       Please configure the underlaying driver accordingly."/>
                                         

                                        </a:da>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:42bbb2ee-2af5-9dc1-aeef-977c9fcfcb23"/>                                                                    
                                    </v:var>
                                    
                                    <v:ref name="ComdalSignalRef" type="REFERENCE">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Refence to Comdal Port used for comunication.
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="LABEL" value="Communication Port"/>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                            <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:6fc493da-1d18-4bfe-84fb-12f19390af28"/>
                                        <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/ComDal/ComDalBswConfig/ComDescriptors"/>
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="node:refexists(.) and text:uniq(../../*/ComdalSignalRef, .)"                                   
                                                false="Reference to the underlaying comunication driver must be unique."/>  
                                        </a:da>                                                        
                                   </v:ref>

                                    
                                    <v:ref name="ApplicationInstaceRef" type="REFERENCE">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Refence to the application instance using the given message.
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="LABEL" value="Reference to Used Application Instance"/>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                            <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="OPTIONAL" value="true"/>
                                        <a:a name="UUID" value="ECUC:2f2453da4-1318-c523-8875-12f11390af28"/>  
                                        <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/PlatformIntegration/ApplicationRteConfig/LightingControlApp"/>
                                    </v:ref>
                                        
                                    <v:ref name="ReplaySignalRef" type="REFERENCE">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                Refence to the replay message if the current message requires a reply.
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:da name="EDITABLE" type="XPath">
                                            <a:tst expr="node:value(./../VdrMessageType) = 'RX_MESSAGE' and ((node:value(./../VdrMessageScope) != 'APP_REQUEST_OUTPUT_UPDATE') and (node:value(./../VdrMessageScope) != 'APP_EVENT_FORWARD_MSG') and (node:value(./../VdrMessageScope) != 'APP_EVENT_NOTIFICATION'))"/>                             
                                        </a:da>
                                        <a:a name="LABEL" value="Replay message reference"/>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                            <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                        </a:a>
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="node:value(./../VdrMessageType) = 'RX_MESSAGE' and ((node:value(./../VdrMessageScope) != 'APP_REQUEST_OUTPUT_UPDATE') and (node:value(./../VdrMessageScope) != 'APP_EVENT_FORWARD_MSG') and (node:value(./../VdrMessageScope) != 'APP_EVENT_NOTIFICATION')) and 
                                                         (not(node:refexists(.)) or (node:name(node:ref(.)) = node:name(../.)))"                                   
                                                true="Reference to the reply message must be defined, must be unique and must not point to itself."/>  
                                        </a:da>  
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:2fc453da-1318-c523-85fb-12f19390af28"/>
                                        <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/PlatformIntegration/ApplicationRteConfig/VirtualDataRouterApp"/>
                                        
                                    </v:ref>                                                            
                            
                                </v:ctr>                                          
                            </v:lst>

                            <v:lst name="LightingControlApp" type="MAP">
                                <a:da name="EDITABLE" type="XPath">
                                    <a:tst expr="node:value(../../PlatformApp_FeatureList/EnableLightingApp) = 'true'"/>
                                </a:da>

                                <v:ctr name="LightingControlApp" type="IDENTIFIABLE">
                                    <a:a name="DESC">
                                        <a:v>
                                            <![CDATA[EN:
                                            <html>
                                            Configuration for the lighting application instance.
                                            </html> ]]>
                                        </a:v>
                                    </a:a>
                                    <a:da name="LABEL" value="Lighting Control Features"/>
                                    <a:a name="UUID" value="ECUC:390adbaf-34dd-5f7e-89de-65775795e1b9"/>                                            

                                    <v:var name="LightCtrlOutputSignalType" type="ENUMERATION">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                 <html>
                                                 Ouptut control tpye for current instance.
                                                 Each instance shall have only one type of output: PWM, DIG_OUT and one tpye of input: ANALOG, DIG_IN, COM                                                                 
                                                 </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                            <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                            <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                        </a:a>
                                        <a:a name="ORIGIN" value="NXP"/>
                                        <a:a name="LABEL" value="Output Signal Type"/>
                                        <a:a name="SCOPE" value="LOCAL"/>
                                        <a:a name="UUID" value="ECUC:42ccb255-1f6b-9d91-390a-977c9fc0cb23"/>                                       
                                        <a:da name="DEFAULT" value="PWM"/>
                                        <a:da name="RANGE">
                                            <a:v>DIGITAL_OUTPUT</a:v> 
                                            <a:v>PWM</a:v>
                                            <a:v>OCU</a:v>
                                        </a:da>
                                        <a:da name="INVALID" type="XPath">
                                            <a:tst expr="((node:value(.) != 'PWM') 
                                            and (node:value(../LightCtrlUserInterface/LightCtrlInputSignalType) != 'DIGITAL_INPUT') and (node:value(../../../../PlatformApp_FeatureList/EnableLightingApp) = 'true'))"
                                               true="Only PWM output allowed for ANALOG input signals and Communication Control Signals"/>                           
                                        </a:da>
                                    </v:var>                                            


                                    <v:ctr name="LightCtrlUserInterface" type="IDENTIFIABLE">
                                        <a:a name="DESC">
                                            <a:v>
                                                <![CDATA[EN:
                                                <html>
                                                List of HW interrupts available for the entire platform.                                       
                                                </html> ]]>
                                            </a:v>
                                        </a:a>
                                        <a:da name="LABEL" value="Sample App IO Features"/>
                                        <a:a name="UUID" value="ECUC:de1a390a-34dd-5f7e-89de-65775795e1b9"/> 

                                        <v:var name="LightCtrlInputSignalType" type="ENUMERATION">
                                            <a:a name="DESC">
                                                <a:v>
                                                    <![CDATA[EN:
                                                    <html>
                                                    Input control tpye for current instance.
                                                    Each instance shall have only one type of output: PWM, DIG_OUT and one tpye of input: ANALOG, DIG_IN, COM                                     
                                                    </html> ]]>
                                                </a:v>
                                            </a:a>
                                            <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                                <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                            </a:a>
                                            <a:a name="ORIGIN" value="NXP"/>
                                            <a:a name="LABEL" value="Comand (input) Signal Type"/>
                                            <a:a name="SCOPE" value="LOCAL"/>
                                            <a:a name="UUID" value="ECUC:42ccb255-1f6b-9d91-acdf-977c9fc0cb23"/>                                       
                                            <a:da name="DEFAULT" value="DIGITAL_INPUT"/>
                                            <a:da name="RANGE">
                                                <a:v>DIGITAL_INPUT</a:v>
                                                <a:v>ANALOG_INPUT</a:v>
                                                <a:v>COM_MESSAGE</a:v>
                                            </a:da>
                                        </v:var>


                                        <v:ref name="LightControlInput" type="REFERENCE">
                                            <a:a name="DESC">
                                                <a:v>
                                                    <![CDATA[EN:
                                                    <html>
                                                    Iodal Reference to the control input for the given instance.
                                                    </html> ]]>
                                                </a:v>
                                            </a:a>
                                            <a:a name="LABEL" value="Input Channel ref"/>                                             
                                            <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                            </a:a>
                                            <a:da name="EDITABLE" type="XPath">
                                                <a:tst expr="node:value(../LightCtrlInputSignalType) != 'COM_MESSAGE'"/>                           
                                            </a:da>
                                            <a:da name="INVALID" type="XPath">
                                                <a:tst expr="((node:value(../LightCtrlInputSignalType) != 'COM_MESSAGE') and (not(node:refexists(.)))and (node:value(../../../../../../../../../PlatformApp_FeatureList/EnableLightingApp) = 'true'))"
                                                    true="Select a valid ADC channel"/>
                                                <a:tst expr="(node:value(../LightCtrlInputSignalType) = 'ANALOG_INPUT') and 
                                                            (not((node:value(node:ref(../LightControlInput)/ReferenceType))='Analog'))"
                                                    true="Select an Analog Channel. Check configuration in IO Driver Abstraction Layer."/>
                                                <a:tst expr="(node:value(../LightCtrlInputSignalType) = 'DIGITAL_INPUT') and 
                                                            (((node:value(node:ref(../LightControlInput)/ReferenceType))!='Digital') or ((node:value(node:ref(../LightControlInput)/ReferenceDirection))!='Input')) "
                                                    true="Select an Digital Input Channel. Check configuration in IO Driver Abstraction Layer."/>                                                                    
                                            </a:da>
                                            <a:a name="ORIGIN" value="NXP"/>
                                            <a:a name="SCOPE" value="LOCAL"/>
                                            <a:a name="UUID" value="ECUC:6fc493da-1d18-af28-84fb-12f19390af28"/>
                                            <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                        </v:ref>

                                    </v:ctr>

                                    <v:lst name="LightingChannels" type="MAP">
                                        <v:ctr name="LightingChannels" type="IDENTIFIABLE">
                                            <v:ref name="LightOutputChannel" type="REFERENCE">
                                                <a:a name="DESC">
                                                    <a:v>
                                                        <![CDATA[EN:
                                                        <html>
                                                        Iodal Reference to the output signal for the given channel of the current instance.
                                                        </html> ]]>
                                                    </a:v>
                                                </a:a> 
                                                <a:a name="LABEL" value="Output Channel ref"/>                                                   
                                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                    <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                                </a:a>
   
                                                <a:da name="INVALID" type="XPath">
                                                    <a:tst expr="(((node:value(../../../LightCtrlOutputSignalType) = 'DIGITAL_OUTPUT') or (node:value(../../../LightCtrlOutputSignalType) = 'PWM')) and (not(node:refexists(.))) and (node:value(../../../../../../../../../../PlatformApp_FeatureList/EnableLightingApp) = 'true'))"
                                                        true="Select a valid IODAL channel"/>  
                                                    <a:tst expr="(node:value(../../../LightCtrlOutputSignalType) = 'DIGITAL_OUTPUT') and
                                                                ((not((node:value(node:ref(.)/ReferenceDirection))='Output'))or
                                                                (not((node:value(node:ref(.)/ReferenceType))='Digital')))"
                                                          true="Select a Digital Output Channel. Check configuration in IO Driver Abstraction Layer."/>
                                                     <a:tst expr="(node:value(../../../LightCtrlOutputSignalType) = 'PWM') and
                                                                ((not((node:value(node:ref(.)/ReferenceDirection))='Output'))or
                                                                (not((node:value(node:ref(.)/ReferenceType))='Pwm')))"
                                                            true="Select a Pwm Channel. Check configuration in IO Driver Abstraction Layer."/>
                                                    
                                                </a:da>
                                                <a:a name="ORIGIN" value="NXP"/>
                                                <a:a name="SCOPE" value="LOCAL"/>
                                                <a:a name="UUID" value="ECUC:6fc493da-af28-4bfe-84fb-12f19390af28"/>
                                               <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                            </v:ref>                                            

                                            <v:var name="ChannelHasFeedback" type="BOOLEAN">
                                               <a:a name="DESC">
                                                    <a:v>
                                                        <![CDATA[EN:
                                                        <html>
                                                        Configuration flag that indicates if the current channels has feedback or not.
                                                        </html> ]]>
                                                    </a:v>
                                                </a:a> 
                                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                    <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                </a:a>
                                                <a:a name="ORIGIN" value="NXP"/>
                                                <a:a name="SCOPE" value="LOCAL"/>
                                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                                <a:a name="UUID" value="ECUC:28a8fc49-fc49-46f0-b346-dbf248bedc09"/>
                                            </v:var> 

                                            <v:ref name="LightFeedbackChannel" type="REFERENCE">
                                                <a:a name="DESC">
                                                    <a:v>
                                                        <![CDATA[EN:
                                                        <html>
                                                        Iodal Reference to the feedback signal for the given channel of the current instance.
                                                        </html> ]]>
                                                    </a:v>
                                                </a:a>    
                                                <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                    <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                    <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                                </a:a>
                                                <a:a name="LABEL" value="Feedback Channel ref"/>   
                                                <a:da name="EDITABLE" type="XPath">
                                                    <a:tst expr="node:value(../ChannelHasFeedback) = 'true'"/>                           
                                                </a:da>
                                                <a:da name="INVALID" type="XPath">
                                                    <a:tst expr="((node:value(../ChannelHasFeedback) = 'true') and (not(node:refexists(.))) and (node:value(../../../../../../../../../../PlatformApp_FeatureList/EnableLightingApp) = 'true'))"
                                            true="Select a valid ADC channel"/> 
                                                    <a:tst expr="(node:value(../ChannelHasFeedback) = 'true') and
                                                                ((not((node:value(node:ref(.)/ReferenceDirection))='Input'))or
                                                                (not((node:value(node:ref(.)/ReferenceType))='Analog')))"
                                                    true="Select an Analog Channel. Check configuration in IO Driver Abstraction Layer."/>
                                                </a:da>
                                                <a:a name="ORIGIN" value="NXP"/>
                                                <a:a name="SCOPE" value="LOCAL"/>
                                                <a:a name="UUID" value="ECUC:6ffc49da-1d18-fc49-84fb-12f19390af28"/>
                                                <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                            </v:ref>
                                        </v:ctr>     
                                    </v:lst>    
                                </v:ctr>        
                            </v:lst>

                            <v:lst name="MotorControlApp" type="MAP">

                                 <a:da name="EDITABLE" type="XPath">
                                       <a:tst expr="node:value(../../PlatformApp_FeatureList/EnableMotorControlApp) = 'true'"/>
                                 </a:da>                                   
                                 <v:ctr name="MotorControlApp" type="IDENTIFIABLE">
                                     <v:ctr name="MotorCtrlUserInterface" type="IDENTIFIABLE">
                                         <a:a name="DESC">
                                             <a:v>
                                                 <![CDATA[EN:
                                                 <html>
                                                 Configuration for the Motor controll application.                                    
                                                 </html> ]]>
                                             </a:v>
                                         </a:a>
                                         <a:da name="LABEL" value="Sample App IO Features"/>
                                         <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-65775795e1b9"/> 

                                         <v:var name="MotorCtrlInputSignalType" type="ENUMERATION">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     Id of the HW interrupt service routine available platform wide and usable by the Ocu module.                                       
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                                 <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                             </a:a>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="LABEL" value="Signal Type"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:42ccb255-5775-9d91-acdf-977c9fc0cb23"/>                                       
                                             <a:da name="DEFAULT" value="COM_MESSAGE"/>
                                             <a:da name="RANGE">
                                                 <a:v>DIGITAL_INPUT</a:v>
                                                 <a:v>COM_MESSAGE</a:v>
                                                 <a:v>ANALOG_INPUT</a:v>
                                             </a:da>                                       
                                         </v:var>


                                         <v:var name="MotorType" type="ENUMERATION">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     Parameter describes the type of the motor used.                                      
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v vclass="PreCompile">VariantPreCompile</icc:v>
                                                 <icc:v vclass="PreCompile">VariantPostBuild</icc:v>
                                             </a:a>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="LABEL" value="Motor Type"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:42cc5775-1f6b-9d91-acdf-977c9fc0cb23"/>                                       
                                             <a:da name="DEFAULT" value="BRDC"/>
                                             <a:da name="RANGE">
                                                 <a:v>BLDC</a:v> 
                                                 <a:v>BRDC</a:v>
                                                 <a:v>STEPPER</a:v>                                                    
                                             </a:da>                                       
                                         </v:var>                    

                                         <!--v:ref name="MotorControlButtons" type="REFERENCE">
                                             <a:a name="LABEL" value="Motor Control Sensing Device"/>
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../MotorCtrlInputSignalType) = 'DIGITAL_INPUT'"/>                           
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:6fc493da-1d18-4bfe-5775-12f19390af28"/>
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                         </v:ref-->

                                         <v:ref name="MotorControlInput" type="REFERENCE">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../MotorCtrlInputSignalType) != 'COM_MESSAGE'"/>                           
                                             </a:da>
                                             <a:da name="INVALID" type="XPath">
                                                 <a:tst expr="(not(node:refexists(.))) and
                                                              (node:value(../MotorCtrlInputSignalType) != 'COM_MESSAGE')"                                                              
                                                     true="Select a valid IO channel"/>
                                                 <a:tst expr="node:refexists(.) and
                                                              ((node:value(node:ref(.)/ReferenceDirection) != 'Input') or
                                                              ((node:value(../MotorCtrlInputSignalType) = 'ANALOG_INPUT') and 
                                                               (node:value(node:ref(.)/ReferenceType) != 'Analog')) or
                                                              ((node:value(../MotorCtrlInputSignalType) = 'DIGITAL_INPUT') and 
                                                               (node:value(node:ref(.)/ReferenceType) != 'ExtSensDev')))"
                                                     true="Select a valid Analog Input channel"/>
                                             </a:da>                                             
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:6fc45775-1d18-4bfe-84fb-12f19390af28"/>
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                         </v:ref>

                                         <v:ref name="MotorControlComDALMsg" type="REFERENCE">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../MotorCtrlInputSignalType) = 'COM_MESSAGE'"/>                           
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:657753da-1d18-4bfe-84fb-12f19390af28"/>
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/ComDal/ComDalBswConfig/ComDescriptors"/>
                                         </v:ref>
                                     </v:ctr>

                                     <v:ctr name="MotorCtrlOutputConfig" type="IDENTIFIABLE">
                                         <a:a name="DESC">
                                             <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                             </a:v>
                                         </a:a>
                                         <a:da name="LABEL" value="Sample App IO Features"/>
                                         <a:a name="UUID" value="ECUC:de1a1939-34dd-5f7e-89de-65775795e1b9"/>


                                         <v:ref name="MotorCtrlBridge" type="REFERENCE">
                                             <a:da name="LABEL" value="Motor Control Output Device"/>
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:6fc41939-1d18-4bfe-1939-12f19390af28"/>
                                             <a:da name="INVALID" type="XPath">
                                                 <a:tst expr="(not(node:refexists(.)))"                                                              
                                                     true="Select a valid IO channel"/>
                                             </a:da>         
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>                                        
                                         </v:ref>

                                         <v:var name="MotorHasCurrentFeedback" type="BOOLEAN">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a> 
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:da name="DEFAULT" value="false"/>                                
                                             <a:a name="SYMBOLICNAMEVALUE" value="false"/>                                
                                             <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1561d7a1df4a"/>                                                
                                         </v:var>


                                         <v:var name="MotorHasRotationFeedback" type="BOOLEAN">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a> 
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:da name="DEFAULT" value="false"/>                                
                                             <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                             <a:a name="UUID" value="ECUC:659680f5-9859-680f-f126-156680f1df4a"/>                                                
                                         </v:var>                                        

                                         <v:ref name="RotationFeedbackRef" type="REFERENCE">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../MotorHasRotationFeedback) = 'true'"/>                           
                                             </a:da>
                                             <a:da name="INVALID" type="XPath">
                                                 <a:tst expr="(not(node:refexists(.))) and
                                                              (node:value(../MotorHasRotationFeedback) = 'true')"
                                                         true="Select a valid IODAL channel"/>              
                                                 <a:tst expr="node:refexists(.) and
                                                              ((node:value(node:ref(.)/ReferenceType) != 'Icu') or
                                                              (node:value(node:ref(.)/ReferenceDirection) != 'Input'))"
                                                  true="Select a valid ICU channel"/>
                                                 <a:tst expr="node:refexists(.) and
                                                              ((node:value(node:ref(.)/ReferenceType) = 'Icu') and
                                                              (node:value(node:ref(node:value(node:ref(.)/IcuRef))/IcuMeasurementMode) != 'ICU_MODE_SIGNAL_MEASUREMENT'))"
                                                  true="RPM feedback requires ICU channel to be configured in SIGNAL MEASUREMENT"/>                                                  
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:680f93da-1d18-680f-84fb-12f19390af28"/>
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                         </v:ref>

                                         <v:ref name="AnalogFeedbackRef" type="REFERENCE">
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:
                                                     <html>
                                                     TO DO.
                                                     </html> ]]>
                                                 </a:v>
                                             </a:a>    
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PostBuild">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>                                        
                                             </a:a>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../MotorHasCurrentFeedback) = 'true'"/>                           
                                             </a:da>
                                             <a:da name="INVALID" type="XPath">
                                                 <a:tst expr="(not(node:refexists(.))) and
                                                              (node:value(../MotorHasCurrentFeedback) = 'true')"
                                                    true="Select a valid IODAL channel"/>
                                                <a:tst expr="node:refexists(.) and
                                                             ((node:value(node:ref(.)/ReferenceType) != 'Analog') or
                                                             (node:value(node:ref(.)/ReferenceDirection) != 'Input'))"
                                                    true="Select a valid Analog channel"/>
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             <a:a name="SCOPE" value="LOCAL"/>
                                             <a:a name="UUID" value="ECUC:6680f3da-1d18-4bfe-84fb-12f19390af28"/>
                                             <a:da name="REF" value="ASPathDataOfSchema:/AUTOSAR/EcucDefs/IoDal/IoDalBswConfig/IoDescriptors"/>
                                         </v:ref>
                                     </v:ctr>                            
                                     
                                     <v:ctr name="MotorControlLoopConfig" type="IDENTIFIABLE">
                                         <a:da name="LABEL" value="Motor Control loop configuration"/>
                                         <a:a name="ORIGIN" value="NXP"/>
                                         <a:a name="DESC">
                                             <a:v>
                                                 <![CDATA[EN:<html> Configuration for the motor control loop. </html> ]]>
                                             </a:v>
                                         </a:a>
                                         <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-65775792e1b9"/>
                                          <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                             <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                             <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                          </a:a>
                                              <v:var name="ProportionalComponent" type="BOOLEAN">
                                              <a:da name="LABEL" value="Proportional Component"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Enables Kp Component. </html> ]]>
                                                     </a:v>
                                                 </a:a> 
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>
                                                 <a:a name="ORIGIN" value="NXP"/>
                                                 <a:a name="SCOPE" value="LOCAL"/>
                                                 <a:da name="DEFAULT" value="false"/>                                
                                                 <a:a name="SYMBOLICNAMEVALUE" value="false"/> 
                                             </v:var>
                                         
                                             <v:var name="IntegralComponent" type="BOOLEAN">
                                                 <a:da name="LABEL" value="Integral Component"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Enables Ki Component. </html> ]]>
                                                     </a:v>
                                                 </a:a> 
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>
                                                 <a:a name="SCOPE" value="LOCAL"/>
                                                 <a:da name="DEFAULT" value="false"/>                                
                                                 <a:a name="SYMBOLICNAMEVALUE" value="false"/>                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1562d7a1234a"/>  
                                                 <a:a name="ORIGIN" value="NXP"/>
                                             </v:var>
                                         
                                             <v:var name="PropGain" type="FLOAT">
                                                 <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../ProportionalComponent) = 'true'"/>
                                                 </a:da>
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>
                                                 <a:a name="ORIGIN" value="NXP"/>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1531d7a1234a"/>   
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Proportional Gain (Kp)"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Proportional Gain, fractional format normalized to fit into -2^16, 2^16.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;=-1"/>
                                                     <a:tst expr="&lt;=1"/>
                                                 </a:da> 
                                             </v:var>                                                        
                                         
                                             <v:var name="PropGainShift" type="INTEGER">
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d7a1234a"/> 
                                                 <a:a name="ORIGIN" value="NXP"/>                                                                
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Proportional Gain shift"/>
                                                 <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../ProportionalComponent) = 'true'"/>
                                                 </a:da>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Proportional Gain Shift, integer format.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;= 0"/>
                                                     <a:tst expr="&lt;= 31"/>
                                                 </a:da> 
                                             </v:var> 
                                             
                                             <v:var name="IntegralGain" type="FLOAT">
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d751334a"/>
                                                 <a:a name="ORIGIN" value="NXP"/>
                                                 <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../IntegralComponent) = 'true'"/>
                                                 </a:da>
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Integral Gain (Ki)"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Integral Gain, fractional format normalized to fit into - 2^16, 2^16.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;=-1"/>
                                                     <a:tst expr="&lt;=1"/>
                                                 </a:da> 
                                             </v:var>                                                        
                                             
                                             <v:var name="IntGainShift" type="INTEGER">
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="ORIGIN" value="NXP"/>                                                              
                                             <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d7a1334a"/>   
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../IntegralComponent) = 'true'"/>
                                             </a:da>
                                             <a:da name="DEFAULT" value="0"/>
                                             <a:da name="LABEL" value="Integral Gain shift"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Integral Gain Shift, integer format.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;=0"/>
                                                     <a:tst expr="&lt;=31"/>
                                                 </a:da> 
                                             </v:var>                                                        
                                         
                                             <v:var name="UpperLimit" type="FLOAT">
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Controller Upper Limit"/>
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-15a4d7a1531a"/>
                                                 <a:a name="ORIGIN" value="NXP"/>  
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Upper Limit of the controller, fractional format normalized to fit into - 2^16, 2^16.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;=-1"/>
                                                     <a:tst expr="&lt;= 1"/>
                                                 </a:da> 
                                             </v:var>                                                        
                                                 
                                             <v:var name="LowerLimit" type="FLOAT">
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>
                                                 <a:a name="ORIGIN" value="NXP"/>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d7a2554a"/>  
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Controller Lower Limit"/>
                                                     <a:a name="DESC">
                                                         <a:v>
                                                             <![CDATA[EN:<html> Lower Limit of the controller, fractional format normalized to fit into - 2^16, 2^16.</html> ]]>
                                                         </a:v>
                                                     </a:a>
                                                     <a:da name="INVALID" type="Range">
                                                         <a:tst expr="&gt;=-1"/>
                                                         <a:tst expr="&lt;=1"/>
                                                         <a:tst expr="&lt;=node:value(../UpperLimit)"/>
                                                     </a:da> 
                                             </v:var>
                                         
                                             <v:var name="AntiWindupLimit" type="FLOAT">
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>
                                                 <a:a name="ORIGIN" value="NXP"/>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d7a13a4a"/>  
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Anti Windup Limit"/>
                                                     <a:a name="DESC">
                                                         <a:v>
                                                             <![CDATA[EN:<html> Required output of the controller, in case limitation has been reached.</html> ]]>
                                                         </a:v>
                                                     </a:a>
                                                     <a:da name="INVALID" type="Range">
                                                         <a:tst expr="&gt;=-1"/>
                                                         <a:tst expr="&lt;=1"/>
                                                     </a:da> 
                                             </v:var>
                                         
                                             <v:var name="InitialError" type="FLOAT">
                                                 <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                     <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                     <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                                 </a:a>                                                                
                                                 <a:a name="UUID" value="ECUC:659680f5-680f-4f0a-f126-1564d7a2134a"/> 
                                                 <a:a name="ORIGIN" value="NXP"/>                                                                                                                                
                                                 <a:da name="DEFAULT" value="0"/>
                                                 <a:da name="LABEL" value="Initial controller error"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html>Input error signal to the controller is a 16-bit number normalized between - 2^16, 2^16.</html> ]]>
                                                     </a:v>
                                                 </a:a>
                                                 <a:da name="INVALID" type="Range">
                                                     <a:tst expr="&gt;=-1"/>
                                                     <a:tst expr="&lt;=1"/>
                                                 </a:da> 
                                             </v:var>
                                     </v:ctr>

                                     <v:ctr name="MotorCharacteristics" type="IDENTIFIABLE">
                                         <a:a name="DESC">
                                             <a:v>
                                                 <![CDATA[EN:<html>Motor rotation and current characteristics.</html> ]]>
                                             </a:v>
                                         </a:a>
                                         <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                             <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                             <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                         </a:a>                                                                
                                         <a:da name="LABEL" value="Motor rotation and current characteristics"/>
                                         <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-65775792e1b9"/>
                                         <a:a name="ORIGIN" value="NXP"/>     

                                         <v:var name="MaxRPM" type="INTEGER">
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-62775792e1b9"/> 

                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../../MotorCtrlOutputConfig/MotorHasRotationFeedback) = 'true'"/>
                                             </a:da>
                                             <a:da name="DEFAULT" value="0"/>
                                             <a:da name="LABEL" value="Maximum Revolutions per Minute"/>
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN: <html> Maximum possible RPM as described in motor's datasheet.</html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:da name="INVALID" type="Range">
                                                 <a:tst expr="&gt;=0"/>
                                                 <a:tst expr="&gt;=node:value(../MinRPM)"/>
                                             </a:da> 
                                             <a:a name="ORIGIN" value="NXP"/>
                                         </v:var>                                                        
                                         
                                         <v:var name="MinRPM" type="INTEGER">
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-62775795e1b9"/> 
                                             <a:da name="DEFAULT" value="0"/>
                                             <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../../MotorCtrlOutputConfig/MotorHasRotationFeedback) = 'true'"/>
                                                 </a:da>
                                             <a:da name="LABEL" value="Minimum Revolutions per Minute"/>
                                                 <a:a name="DESC">
                                                     <a:v>
                                                         <![CDATA[EN:<html> Minimum possible RPM as described in motor's datasheet.</html> ]]>
                                                     </a:v>
                                             </a:a>
                                             <a:da name="INVALID" type="Range">
                                                 <a:tst expr="&gt;=0"/>
                                                 <a:tst expr="&lt;=node:value(../MaxRPM)"/>
                                             </a:da> 
                                             <a:a name="ORIGIN" value="NXP"/>
                                         </v:var>                                                        
                                         
                                         <v:var name="SignalTicksPerRev" type="INTEGER">
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-62773795e1b9"/>
                                             <a:da name="EDITABLE" type="XPath">
                                                 <a:tst expr="node:value(../../MotorCtrlOutputConfig/MotorHasRotationFeedback) = 'true'"/>
                                             </a:da>
                                             <a:da name="DEFAULT" value="1"/>
                                             <a:da name="LABEL" value="Encoder ticks per revolution"/>
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN: <html> Encoder ticks per one revolution.</html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:da name="INVALID" type="Range">
                                                 <a:tst expr="&gt;=1"/>
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>                                                            
                                         </v:var>  
                                         
                                         <v:var name="MaximumInputCurrent" type="INTEGER">
                                             <a:da name="DEFAULT" value="0"/>
                                             <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../../MotorCtrlOutputConfig/MotorHasCurrentFeedback) = 'true'"/>
                                                 </a:da>
                                             <a:da name="LABEL" value="Maximum Input Current (mA)"/>
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-62773799e1b9"/>
                                             <a:a name="DESC">
                                                 <a:v>
                                                     <![CDATA[EN:<html>Maximum possible input current as described in motor's datasheet.</html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:da name="INVALID" type="Range">
                                                 <a:tst expr="&gt;=0"/>
                                                 <a:tst expr="&gt;=node:value(../MinimumInputCurrent)"/>
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                             
                                         </v:var>                                                        
                                          
                                         <v:var name="MinimumInputCurrent" type="INTEGER">
                                             <a:da name="DEFAULT" value="0"/>
                                             <a:da name="EDITABLE" type="XPath">
                                                     <a:tst expr="node:value(../../MotorCtrlOutputConfig/MotorHasCurrentFeedback) = 'true'"/>
                                                 </a:da>
                                             <a:da name="LABEL" value="Minimum Input Current (mA)"/>
                                             <a:a name="DESC">
                                                 <a:v> 
                                                     <![CDATA[EN:<html>Minimum possible input current as described in motor's datasheet.</html> ]]>
                                                 </a:v>
                                             </a:a>
                                             <a:a name="IMPLEMENTATIONCONFIGCLASS" type="IMPLEMENTATIONCONFIGCLASS">
                                                 <icc:v class="PreCompile">VariantPostBuild</icc:v>
                                                 <icc:v class="PreCompile">VariantPreCompile</icc:v>
                                             </a:a>  
                                             <a:a name="UUID" value="ECUC:5775dbaf-34dd-5f7e-89de-62773a99e1b9"/>
                                             <a:da name="INVALID" type="Range">
                                                 <a:tst expr="&gt;=0"/>
                                                 <a:tst expr="&lt;=node:value(../MaximumInputCurrent)"/>
                                             </a:da>
                                             <a:a name="ORIGIN" value="NXP"/>
                                         </v:var>
                                     </v:ctr>
                                 </v:ctr>                                
                             </v:lst>                        
                        </v:ctr>

                        <v:ctr name="CommonPublishedInformation" type="IDENTIFIABLE">
                            <a:a name="DESC">
                                <a:v>
                                    <![CDATA[EN: 
                                      Common container, aggregated by all modules. It contains published information about vendor and versions.
                                    ]]>
                                </a:v>
                            </a:a>
                            <a:a name="UUID" value="ECUC:f7a92bc0-df21-48a8-8bcc-eb9df292f1b2"/>
                            <v:var name="ArReleaseMajorVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                         Major version number of AUTOSAR specification on which the appropriate implementation is based on.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:55930215-d177-41b2-8660-bc960723a9cb"/>
                                <a:da name="DEFAULT" value="4"/>                   
                            </v:var>

                            <v:var name="ArReleaseMinorVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Minor version number of AUTOSAR specification on which the appropriate implementation is based on.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:d2dc342f-2834-4cc0-bd45-9aebf96876ce"/>
                                <a:da name="DEFAULT" value="2"/>                  
                            </v:var>

                            <v:var name="ArReleaseRevisionVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Revision version number of AUTOSAR specification on which the appropriate implementation is based on.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:7dd3874a-e6e9-4035-bd38-14299176aa46"/>
                                <a:da name="DEFAULT" value="2"/>                  
                            </v:var>

                            <v:var name="ModuleId" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Module ID of this module from Module List.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:bd6d918d-03f9-4da3-9131-75c1d6b4cad1"/>
                                <a:da name="DEFAULT" value="100"/>                 
                            </v:var>

                            <v:var name="SwMajorVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Major version number of the vendor specific implementation of the module. The numbering is vendor specific.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:e02435a3-0cbf-4209-9908-d147ed439d34"/>
                                <a:da name="DEFAULT" value="1"/>                  
                            </v:var>

                            <v:var name="SwMinorVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Minor version number of the vendor specific implementation of the module. The numbering is vendor specific.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:5eefadd2-c509-423a-9ed8-6e587eb683f2"/>
                                <a:da name="DEFAULT" value="0"/>
                 
                            </v:var>

                            <v:var name="SwPatchVersion" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                        Patch level version number of the vendor specific implementation of the module. The numbering is vendor specific.
                                        ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:41425ebf-876a-47e0-9569-fad6d5db22c1"/>
                                <a:da name="DEFAULT" value="0"/>                
                            </v:var>

                            <v:var name="VendorApiInfix" type="STRING_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                In driver modules which can be instantiated several times on a single ECU, BSW00347 requires that the name of APIs is extended by the VendorId and a vendor specific name. 
                                This parameter is used to specify the vendor specific name. In total, the implementation specific name is generated as follows:
                                &lt;ModuleName&gt;_&gt;VendorId&gt;_&lt;VendorApiInfix&gt;&lt;Api name from SWS&gt;.
                                E.g.  assuming that the VendorId of the implementor is 123 and the implementer chose a VendorApiInfix of &quot;v11r456&quot; a api name Can_Write defined in the SWS will translate to Can_123_v11r456Write. 
                                This parameter is mandatory for all modules with upper multiplicity &gt; 1. It shall not be used for modules with upper multiplicity =1.]]>
                                    </a:v>
                                </a:a>
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:79eb6936-7081-44cd-bf5f-7adb993f72ba"/>
                                <a:da name="DEFAULT" value=""/>
                                <a:a name="OPTIONAL" value="true"/>
                                <a:da name="ENABLE" value="false"/>
                            </v:var>

                            <v:var name="VendorId" type="INTEGER_LABEL">
                                <a:a name="DESC">
                                    <a:v>
                                        <![CDATA[EN: 
                                          Vendor ID of the dedicated implementation of this module according to the AUTOSAR vendor list.
                                          ]]>
                                    </a:v>
                                </a:a>              
                                <a:a name="IMPLEMENTATIONCONFIGCLASS" value="PublishedInformation"/>
                                <a:a name="ORIGIN" value="NXP"/>
                                <a:a name="SYMBOLICNAMEVALUE" value="false"/>
                                <a:a name="UUID" value="ECUC:839d446a-ffad-4105-a647-2816e258f21e"/>
                                <a:da name="DEFAULT" value="43"/>
                                <a:da name="INVALID" type="Range">
                                    <a:tst expr="&gt;=43"/>
                                    <a:tst expr="&lt;=43"/>
                                </a:da>                    
                            </v:var>
                        </v:ctr>
                    </v:ctr>
                    </d:chc>

                    <d:chc name="IntegrationApp_EcuParameterDefinition" type="AR-ELEMENT" value="ECU_PARAMETER_DEFINITION">                   
                        <d:ctr type="AR-ELEMENT">
                            <a:a name="UUID" value="ECUC:781016ba-cac9-4286-95f6-6c2e5f2d5180"/>
                            <a:a name="DEF"  value="ASPath:/AR_PACKAGE_SCHEMA/ECU_PARAMETER_DEFINITION"/>
                            <d:lst name="MODULE_REF">
                                <d:ref type="MODULE_REF" value="ASPath:/TS_T2D47M10I0R0/IntegrationApp"/>
                            </d:lst>
                        </d:ctr>
                    </d:chc>


                    <d:chc name="IntegrationApp_ModuleDescription" type="AR-ELEMENT" value="BSW_MODULE_DESCRIPTION">
                        <d:ctr type="AR-ELEMENT">
                            <a:a name="DEF" value="ASPath:/AR_PACKAGE_SCHEMA/BSW_MODULE_DESCRIPTION"/>
                            <d:var name="MODULE_ID" type="INTEGER" >
                                <a:a name="EDITABLE" value="false"/>
                                <a:a name="IMPORTER_INFO" value="@DEF"/>
                            </d:var>
                            <d:ref type="RECOMMENDED_CONFIGURATION" >
                                <a:a name="EDITABLE" value="false"/>
                                <a:a name="IMPORTER_INFO" value="@DEF"/>
                            </d:ref>
                            <d:ref type="PRE_CONFIGURED_CONF" >
                                <a:a name="EDITABLE" value="false"/>
                                <a:a name="IMPORTER_INFO" value="@DEF"/>
                            </d:ref>
                            <d:ref type="VENDOR_SPECIFIC_MODULE_DEF" value="ASPath:/TS_T2D47M10I0R0/IntegrationApp"/>
                        </d:ctr>
                    </d:chc>
                </d:lst>
            </d:ctr>
        </d:lst>
    </d:ctr>

</datamodel>
