]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/XMLSchema/FrameworkDataTypes.xsd
changed back to old Abstract and Version in SpdHeader for ModuleEditor and PackageEdi...
[mirror_edk2.git] / Tools / XMLSchema / FrameworkDataTypes.xsd
index af67ab0b19234b062b1dc9c8e53d0b9dc918a1fb..b99fd2b495a6cfc97989fb0b2845b5dbe3bdc6d0 100644 (file)
             <xs:enumeration value="SOMETIMES_PRODUCED"/>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="ModuleListType">\r
+        <xs:list itemType="FrameworkModuleTypes"/>\r
+    </xs:simpleType>    \r
+    <xs:simpleType name="IntermediateOutputType">\r
+        <xs:restriction base="UCNameType">\r
+            <xs:enumeration value="MODULE"/>\r
+            <xs:enumeration value="UNIFIED"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>    \r
     <xs:simpleType name="BuildTargets">\r
         <xs:restriction base="xs:NCName">\r
             <xs:enumeration value="DEBUG"/>\r
             <xs:enumeration value="BOTH"/>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="BuildTargetList">\r
+        <xs:union memberTypes="UCNameType DEBUG RELEASE"/>\r
+    </xs:simpleType>\r
+    <xs:simpleType name="DEBUG">\r
+        <xs:restriction base="UCNameType">\r
+            <xs:pattern value="DEBUG"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>\r
+    <xs:simpleType name="RELEASE">\r
+        <xs:restriction base="UCNameType">\r
+            <xs:pattern value="RELEASE"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>    \r
     <xs:simpleType name="ComponentExecutionPhase">\r
         <xs:restriction base="UCNameType">\r
             <xs:enumeration value="MDE"/>\r
             <xs:enumeration value="USER_DEFINED"/>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="GuidTypes">\r
+        <xs:restriction base="UCNameType">\r
+            <xs:enumeration value="DATA_HUB_RECORD"/>\r
+            <xs:enumeration value="EFI_EVENT"/>\r
+            <xs:enumeration value="EFI_SYSTEM_CONFIGURATION_TABLE"/>\r
+            <xs:enumeration value="EFI_VARIABLE"/>\r
+            <xs:enumeration value="HII_PACKAGE_LIST"/>\r
+            <xs:enumeration value="HOB"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>\r
+    <xs:simpleType name="GuidListType">\r
+        <xs:list itemType="GuidTypes"/>\r
+    </xs:simpleType>\r
     <xs:simpleType name="GuidUsage">\r
         <xs:restriction base="NameConvention">\r
             <xs:enumeration value="ALWAYS_CONSUMED"/>\r
             <xs:enumeration value="PRIVATE"/>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="HexWordArrayType">\r
+      <xs:restriction base="xs:normalizedString">\r
+         <xs:pattern value="((( )?0x[a-fA-F0-9]{4})(,)?)+( )?"/>\r
+      </xs:restriction>\r
+    </xs:simpleType>\r
     <xs:simpleType name="HiiPackageUsage">\r
         <xs:restriction base="NameConvention">\r
             <xs:enumeration value="ALWAYS_PRODUCED"/>\r
     <xs:simpleType name="Token">\r
         <xs:union memberTypes="GuidArrayType GuidNamingConvention HexDoubleWordDataType"/>\r
     </xs:simpleType>\r
+    <!-- TokenDataType is xs:nonNegativeInteger in final -->\r
+    <xs:simpleType name="TokenDataType">\r
+        <xs:union memberTypes="HexDoubleWordDataType  xs:nonNegativeInteger"/>\r
+    </xs:simpleType>\r
     <xs:simpleType name="ToolChains">\r
         <xs:restriction base="UCNameType">\r
             <xs:enumeration value="MSFT"/>\r
             <xs:pattern value="L(:)?(&quot;)(\w+)*((\W*)*(\s*)*(\w*)*)*(&quot;)"/>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="VariableNameDataType">\r
+        <xs:list itemType="HexWordArrayType"/>\r
+    </xs:simpleType>\r
     <xs:simpleType name="UsageTypes">\r
         <xs:restriction base="NameConvention">\r
             <xs:enumeration value="ALWAYS_CONSUMED"/>\r
             <xs:element name="ToolArgs" type="xs:string"/>\r
         </xs:sequence>\r
     </xs:complexType>\r
+    <xs:simpleType name="FfsNameType">\r
+        <xs:annotation>\r
+            <xs:documentation xml:lang="en"> This defines what an FFS Name can consist of.</xs:documentation>\r
+        </xs:annotation>\r
+        <xs:restriction base="xs:string">\r
+            <xs:pattern value="[a-zA-Z][_\-a-zA-Z0-9]*(.)?[a-zA-Z0-9]*"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>\r
+    <xs:simpleType name="FeatureFlagExpressionType">\r
+        <xs:restriction base="xs:normalizedString">\r
+            <xs:pattern value="(\w*\W*)*"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>    \r
 </xs:schema>\r