configurationengine/source/cone/validation/implml_xsd/implml-template.xsd
author m2lahtel
Tue, 10 Aug 2010 14:29:28 +0300
changeset 3 e7e0ae78773e
permissions -rw-r--r--
ConE 1.2.11 release
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     2
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     3
           targetNamespace="http://www.symbianfoundation.org/xml/implml/1"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     4
           xmlns:implml="http://www.symbianfoundation.org/xml/implml/1"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     5
           {% for entry in data -%}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     6
           xmlns:{{entry.id}}="{{entry.namespace}}"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     7
           {% endfor -%}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     8
           elementFormDefault="qualified">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
     9
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    10
    {% for entry in data -%}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    11
    <xs:import namespace="{{entry.namespace}}"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    12
               schemaLocation="{{entry.filename}}" />
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    13
    {% endfor %}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    14
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    15
    <xs:element type="implml:containerType" name="container">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    16
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    17
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    18
                Defines the root implementation container for a multi-implementation ImplML file.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    19
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    20
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    21
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    22
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    23
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    24
    <!-- ======================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    25
    <!-- Implementation container -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    26
    <!-- ======================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    27
    <xs:complexType name="containerType">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    28
        <xs:choice minOccurs="0" maxOccurs="unbounded">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    29
            <xs:element ref="implml:phase"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    30
            <xs:element ref="implml:tag"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    31
            <xs:element ref="implml:settingRefsOverride"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    32
            <xs:element ref="implml:tempVariable"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    33
            <xs:element ref="implml:tempVariableSequence"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    34
            <xs:element ref="implml:outputRootDir"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    35
            <xs:element ref="implml:outputSubDir"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    36
            
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    37
            <xs:element name="container" type="implml:containerType">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    38
            <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    39
                <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    40
                    <![CDATA[
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    41
                    Defines an implementation container that can contain implementations and other containers.<br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    42
                    <br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    43
                    A container element can also contain other common elements affect all implementations defined
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    44
                    inside the container.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    45
                    ]]>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    46
                </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    47
            </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    48
            </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    49
            
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    50
            {% for entry in data -%}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    51
            <xs:element ref="{{entry.id}}:{{entry.root_elem_name}}"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    52
            {% endfor -%}
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    53
        </xs:choice>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    54
        <xs:attribute name="condition" type="xs:string" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    55
            <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    56
                <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    57
                    <![CDATA[
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    58
                    Specifies a condition that determines whether the implementation container is
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    59
                    entered during execution.<br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    60
                    <br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    61
                    The condition should be a simple ConfML setting reference enclosed with ${},
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    62
                    e.g. '${MyFeature.MySetting}'. If the value of the setting is equal to the
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    63
                    expected value (defined using the 'value' attribute), the implementation
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    64
                    container will be entered and the implementations inside executed. Note that
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    65
                    the condition is evaluated at the moment the decision to enter the container
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    66
                    or not is made.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    67
                    ]]>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    68
                </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    69
            </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    70
        </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    71
        <xs:attribute name="value" type="xs:string" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    72
            <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    73
                <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    74
                    Defines the expected value for the 'condition' attribute, defaults to 'true'.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    75
                </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    76
            </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    77
        </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    78
    </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    79
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    80
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    81
    <!-- ===== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    82
    <!-- Phase -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    83
    <!-- ===== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    84
    <xs:element name="phase">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    85
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    86
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    87
                Overrides the execution phase of the implementations inside the container.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    88
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    89
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    90
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    91
            <xs:attribute name="name" type="xs:string" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    92
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    93
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    94
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    95
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    96
    <!-- === -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    97
    <!-- Tag -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    98
    <!-- === -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
    99
    <xs:element name="tag">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   100
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   101
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   102
                Defines an implementation tag for the implementations inside the container.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   103
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   104
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   105
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   106
            <xs:attribute name="name" type="xs:string" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   107
            <xs:attribute name="value" type="xs:string" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   108
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   109
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   110
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   111
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   112
    <!-- =============================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   113
    <!-- Temporary variable and sequence -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   114
    <!-- =============================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   115
    <xs:element name="tempVariable">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   116
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   117
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   118
                <![CDATA[
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   119
                Defines a global temporary variable that can be used in all implementations.<br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   120
                <br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   121
                A temporary variable is an ordinary ConfML setting that can be used normally
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   122
                in implementations. Only the most basic ConfML setting types are supported.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   123
                ]]>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   124
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   125
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   126
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   127
            <xs:attribute name="ref" type="xs:string" use="required">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   128
                <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   129
                    <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   130
                        The ConfML setting reference of the temporary variable, e.g. 'TempFeature.SomeSetting'.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   131
                    </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   132
                </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   133
            </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   134
            <xs:attribute name="type" type="implml:tempVariableTypeType" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   135
                <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   136
                    <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   137
                        The type of the temporary variable, defaults to 'string'.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   138
                    </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   139
                </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   140
            </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   141
            <xs:attribute name="value" type="xs:string" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   142
                <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   143
                    <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   144
                        The initial value of the temporary variable, defaults to an empty string.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   145
                    </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   146
                </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   147
            </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   148
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   149
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   150
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   151
    <xs:simpleType name="tempVariableTypeType">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   152
        <xs:restriction base="xs:string">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   153
            <xs:enumeration value="string"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   154
            <xs:enumeration value="int"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   155
            <xs:enumeration value="real"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   156
            <xs:enumeration value="boolean"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   157
        </xs:restriction>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   158
    </xs:simpleType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   159
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   160
    <xs:element name="tempVariableSequence">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   161
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   162
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   163
                Defines a global temporary variable sequence that can be used in all implementations.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   164
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   165
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   166
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   167
            <xs:sequence>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   168
                <xs:element name="tempVariable" type="implml:tempVariableSequenceSubType"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   169
                            minOccurs="1" maxOccurs="unbounded">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   170
                    <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   171
                        <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   172
                            Defines a sub-setting for the temporary variable sequence.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   173
                        </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   174
                    </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   175
                </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   176
            </xs:sequence>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   177
            <xs:attribute name="ref" type="xs:string" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   178
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   179
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   180
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   181
    <xs:complexType name="tempVariableSequenceSubType">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   182
        <xs:attribute name="ref" type="xs:string" use="required">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   183
            <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   184
                <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   185
                    The ConfML setting reference of the temporary variable, e.g. 'SomeSubSetting'.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   186
                </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   187
            </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   188
        </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   189
        <xs:attribute name="type" type="implml:tempVariableTypeType" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   190
            <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   191
                <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   192
                    The type of the sub-setting, defaults to 'string'.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   193
                </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   194
            </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   195
        </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   196
    </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   197
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   198
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   199
    <!-- =========================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   200
    <!-- Setting references override -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   201
    <!-- =========================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   202
    <xs:element name="settingRefsOverride">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   203
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   204
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   205
                <![CDATA[
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   206
                Defines setting reference overrides for the implementations inside the container.<br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   207
                <br/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   208
                The override can either be a list of setting refences, or it can specify that setting
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   209
                references are irrelevant for implementation execution.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   210
                ]]>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   211
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   212
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   213
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   214
            <xs:sequence>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   215
                <xs:element name="settingRef" type="implml:settingRefType"
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   216
                            minOccurs="0" maxOccurs="unbounded">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   217
                    <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   218
                        <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   219
                            Specifies a single setting reference in the setting reference list.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   220
                        </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   221
                    </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   222
                </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   223
            </xs:sequence>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   224
            <xs:attribute name="refsIrrelevant" use="optional">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   225
                <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   226
                    <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   227
                        Specifies that setting references are irrelevant for the execution of the
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   228
                        implementation inside the container (i.e. they are never filtered out
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   229
                        based on setting references).
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   230
                    </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   231
                </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   232
                <xs:simpleType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   233
                    <xs:restriction base="xs:string">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   234
                        <xs:enumeration value="true"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   235
                    </xs:restriction>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   236
                </xs:simpleType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   237
            </xs:attribute>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   238
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   239
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   240
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   241
    <xs:complexType name="settingRefType">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   242
        <xs:attribute name="value" type="xs:string" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   243
    </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   244
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   245
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   246
    <!-- ========================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   247
    <!-- Output directory overrides -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   248
    <!-- ========================== -->
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   249
    <xs:element name="outputRootDir">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   250
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   251
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   252
                Overrides the output root directory of the implementations inside the container.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   253
                This can be used e.g. to always generate output under \epoc32\data\
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   254
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   255
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   256
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   257
            <xs:attribute name="value" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   258
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   259
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   260
    <xs:element name="outputSubDir">
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   261
        <xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   262
            <xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   263
                Overrides the output sub-directory of the implementations inside the container.
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   264
            </xs:documentation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   265
        </xs:annotation>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   266
        <xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   267
            <xs:attribute name="value" use="required"/>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   268
        </xs:complexType>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   269
    </xs:element>
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   270
    
e7e0ae78773e ConE 1.2.11 release
m2lahtel
parents:
diff changeset
   271
</xs:schema>