]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Several changes - add <PcdIsDriver> optional element to <Externs> Changed FlashDevice...
authorlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 1 Jun 2006 03:23:09 +0000 (03:23 +0000)
committerlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>
Thu, 1 Jun 2006 03:23:09 +0000 (03:23 +0000)
Added comments (and wrapped some elements in <xs:choice> for new elements) and minor tweaks.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@363 6f19259b-4bc3-4df7-8a09-765794883524

Tools/XMLSchema/FrameworkDataElements.xsd
Tools/XMLSchema/FrameworkDataTypes.xsd
Tools/XMLSchema/FrameworkHeaders.xsd
Tools/XMLSchema/FrameworkPlatformDataElements.xsd

index 1d34b49e13d4b1e19c2b4dbf651f9989704e45e1..52e5c1cc07303cc8e0e29fcf3af614e8c62e0d0b 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://www.TianoCore.org/2006/Edk2.0" targetNamespace="http://www.TianoCore.org/2006/Edk2.0">\r
 <?xml version="1.0" encoding="UTF-8"?>\r
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns="http://www.TianoCore.org/2006/Edk2.0" targetNamespace="http://www.TianoCore.org/2006/Edk2.0">\r
-  <!--\r
+    <!--\r
     Filename: FrameworkDataElements.xsd\r
     \r
     Copyright (c) 2006, Intel Corp.\r
     Filename: FrameworkDataElements.xsd\r
     \r
     Copyright (c) 2006, Intel Corp.\r
     WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
     \r
   -->\r
     WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
     \r
   -->\r
-  <xs:annotation>\r
-    <xs:documentation xml:lang="en"> This schema defines EFI and Framework Data Elements </xs:documentation>\r
-  </xs:annotation>\r
-  <xs:include schemaLocation="NamingConvention.xsd"/>\r
-  <xs:include schemaLocation="FrameworkDataTypes.xsd"/>\r
-  <xs:include schemaLocation="FrameworkDataAttributes.xsd"/>\r
-  <xs:element name="Abstract">\r
     <xs:annotation>\r
     <xs:annotation>\r
-      <xs:documentation xml:lang="en">Abstract is valid for all Description Files</xs:documentation>\r
-      <xs:documentation xml:lang="en">This section is required. This is a single sentence to describe the module and will be used in sample files as the abstract data in the header comment section.</xs:documentation>\r
+        <xs:documentation xml:lang="en"> This schema defines EFI and Framework Data Elements </xs:documentation>\r
     </xs:annotation>\r
     </xs:annotation>\r
-      <xs:complexType>\r
-        <xs:simpleContent>\r
-          <xs:extension base="Sentence">\r
-            <xs:attribute name="URL" type="xs:anyURI" use="optional"/>\r
-          </xs:extension>\r
-        </xs:simpleContent>\r
-      </xs:complexType>\r
-  </xs:element>\r
-  <xs:element name="AntCmd">\r
-    <xs:annotation>\r
-      <xs:documentation xml:lang="en">This is a sub-element of AntTask</xs:documentation>\r
-      <xs:documentation xml:lang="en">This is an ant command that will be inserted into a biuld sequence. Since ant commands are valid XML statements, special care must be taken to use the correct tokens for reserved words and escape quote characters.</xs:documentation>\r
-    </xs:annotation>\r
-    <xs:complexType>\r
-      <xs:sequence>\r
-        <xs:element minOccurs="0" name="Id" type="xs:int"/>\r
-          <xs:element name="ExecutionOrder">\r
-            <xs:simpleType>\r
-              <xs:list itemType="xs:normalizedString"/>\r
-            </xs:simpleType>\r
-          </xs:element>\r
-        </xs:sequence>\r
-        <xs:attributeGroup ref="SectionAttributes"/>\r
-      </xs:complexType>\r
+    <xs:include schemaLocation="NamingConvention.xsd"/>\r
+    <xs:include schemaLocation="FrameworkDataTypes.xsd"/>\r
+    <xs:include schemaLocation="FrameworkDataAttributes.xsd"/>\r
+    <xs:element name="Abstract">\r
+        <xs:annotation>\r
+            <xs:documentation xml:lang="en">Abstract is valid for all Description Files</xs:documentation>\r
+            <xs:documentation xml:lang="en">This section is required. This is a single sentence to describe the module and will be used in sample files as the abstract data in the header comment section.</xs:documentation>\r
+        </xs:annotation>\r
+        <xs:complexType>\r
+            <xs:simpleContent>\r
+                <xs:extension base="Sentence">\r
+                    <xs:attribute name="URL" type="xs:anyURI" use="optional"/>\r
+                </xs:extension>\r
+            </xs:simpleContent>\r
+        </xs:complexType>\r
+    </xs:element>\r
+    <xs:element name="AntCmd">\r
+        <xs:annotation>\r
+            <xs:documentation xml:lang="en">This is a sub-element of AntTask</xs:documentation>\r
+            <xs:documentation xml:lang="en">This is an ant command that will be inserted into a biuld sequence. Since ant commands are valid XML statements, special care must be taken to use the correct tokens for reserved words and escape quote characters.</xs:documentation>\r
+        </xs:annotation>\r
+        <xs:complexType>\r
+            <xs:sequence>\r
+                <xs:element minOccurs="0" name="Id" type="xs:int"/>\r
+                <xs:element name="ExecutionOrder">\r
+                    <xs:simpleType>\r
+                        <xs:list itemType="xs:normalizedString"/>\r
+                    </xs:simpleType>\r
+                </xs:element>\r
+            </xs:sequence>\r
+            <xs:attributeGroup ref="SectionAttributes"/>\r
+        </xs:complexType>\r
     </xs:element>\r
     <xs:element name="AntTask">\r
         <xs:annotation>\r
     </xs:element>\r
     <xs:element name="AntTask">\r
         <xs:annotation>\r
             <xs:documentation xml:lang="en">This is a list of Extern statements, right now, only Driver Binding information is provided.</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:documentation xml:lang="en">This is a list of Extern statements, right now, only Driver Binding information is provided.</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
-            <xs:sequence minOccurs="1" maxOccurs="unbounded">\r
-                <xs:element name="Extern">\r
+            <xs:sequence minOccurs="1">\r
+                <xs:element minOccurs="0" maxOccurs="1" name="PcdIsDriver" type="PcdDriverTypes"/>\r
+                <xs:element minOccurs="0" maxOccurs="unbounded" name="Extern">\r
                     <xs:complexType>\r
                         <xs:choice minOccurs="1">\r
                             <xs:sequence minOccurs="0" maxOccurs="1">\r
                     <xs:complexType>\r
                         <xs:choice minOccurs="1">\r
                             <xs:sequence minOccurs="0" maxOccurs="1">\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
-                        <xs:attribute name="PcdIsDriver" use="optional" />\r
+                        <xs:attribute name="PcdIsDriver" use="optional"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
                         <xs:attribute name="PcdIsDriver">\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
                         <xs:attribute name="PcdIsDriver">\r
-                           <xs:simpleType>\r
-                             <xs:annotation>\r
-                               <xs:documentation xml:lang="en">This is an enumerated data type that will be used for DYNAMIC_EX, PEIM or DXE only</xs:documentation>\r
-                             </xs:annotation>\r
-                             <xs:restriction base="UCNameType">\r
-                               <xs:enumeration value="PEI_PCD_DRIVER"/>\r
-                               <xs:enumeration value="DXE_PCD_DRIVER"/>\r
-                             </xs:restriction>\r
-                           </xs:simpleType>\r
-                         </xs:attribute>\r
+                            <xs:simpleType>\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This is an enumerated data type that will be used for DYNAMIC_EX, PEIM or DXE only</xs:documentation>\r
+                                </xs:annotation>\r
+                                <xs:restriction base="UCNameType">\r
+                                    <xs:enumeration value="PEI_PCD_DRIVER"/>\r
+                                    <xs:enumeration value="DXE_PCD_DRIVER"/>\r
+                                </xs:restriction>\r
+                            </xs:simpleType>\r
+                        </xs:attribute>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:choice>\r
         </xs:complexType>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:choice>\r
         </xs:complexType>\r
-    </xs:element> <!-- PcdBuildDeclarations -->\r
-  <xs:element name="PcdDynamicBuildDeclarations">\r
-    <xs:annotation>\r
-      <xs:documentation xml:lang="en">Child of Framework Platform Description (FPD)</xs:documentation>\r
-        <xs:documentation xml:lang="en">We permit the FPD to use an external XML file for PCD information or else the information must be contained within the XML data element, PcdBuildData.</xs:documentation>\r
-      </xs:annotation>\r
-      <xs:complexType>\r
-        <xs:sequence>\r
-          <xs:element minOccurs="0" maxOccurs="unbounded" name="PcdBuildData">\r
-            <xs:annotation>\r
-              <xs:documentation xml:lang="en">Child of PcdBuildDeclarations</xs:documentation>\r
-              <xs:documentation xml:lang="en">This is date element is used in the platform build description file and contains valid data for a Platform Build</xs:documentation>\r
-              <xs:documentation xml:lang="en">There is ONE required Attribute, ItemType</xs:documentation>\r
-            </xs:annotation>\r
-            <xs:complexType>\r
-              <xs:sequence>\r
-                <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>\r
-                <xs:element minOccurs="1" maxOccurs="1" name="Token">\r
-                  <xs:annotation>\r
-                    <xs:documentation xml:lang="en">This as a unique identifier defined for either this name space.</xs:documentation>\r
-                    <xs:documentation xml:lang="en">The Target Attribute may be used to define a Target name space, such as PCI.</xs:documentation>\r
-                  </xs:annotation>\r
-                  <xs:complexType>\r
-                    <xs:simpleContent>\r
-                      <xs:extension base="HexDoubleWordDataType">\r
-                        <xs:attribute name="Target" type="C_Name" use="optional"/>\r
-                      </xs:extension>\r
-                    </xs:simpleContent>\r
-                  </xs:complexType>\r
-                </xs:element>\r
-                <xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes">\r
-                  <xs:annotation>\r
-                    <xs:documentation xml:lang="en">This specifies the size of the Pcd Datum. It is either 8, 16, 32 or 64 bits for values, 1 bit for BOOLEAN and variable length for elements defined as VOID*</xs:documentation>\r
-                  </xs:annotation>\r
-                </xs:element>\r
-                <xs:element default="false" minOccurs="1" maxOccurs="1" name="HiiEnable" type="xs:boolean">\r
-                  <xs:annotation>\r
-                    <xs:documentation xml:lang="en">This Bit means that the Variable data is associated with HII</xs:documentation>\r
-                  </xs:annotation>\r
-                </xs:element>\r
-                <xs:element default="false" minOccurs="1" maxOccurs="1" name="VpdEnable" type="xs:boolean">\r
-                  <xs:annotation>\r
-                    <xs:documentation xml:lang="en">This bit enables the Vital Product Data area within flash for maintaining PCD information</xs:documentation>\r
-                  </xs:annotation>\r
-                </xs:element>\r
-                <xs:element default="false" minOccurs="1" maxOccurs="1" name="AlternateNameSpaceEnable" type="xs:boolean">\r
-                  <xs:annotation>\r
-                    <xs:documentation>This is only applicable to ItemType DYNAMIC_EX</xs:documentation>\r
-                  </xs:annotation>\r
-                </xs:element>\r
-                <xs:element default="false" minOccurs="1" maxOccurs="1" name="SkuEnable" type="xs:boolean"/>\r
-                  <xs:element default="false" minOccurs="1" maxOccurs="1" name="SkuDataArrayEnable" type="xs:boolean"/>\r
-                    <xs:choice minOccurs="0">\r
-                      <xs:element minOccurs="0" maxOccurs="1" name="SkuDataArray">\r
-                        <xs:annotation>\r
-                          <xs:documentation xml:lang="en">This element is a list of two entries per line, the first should be an integer, while the second entry should be a string value</xs:documentation>\r
-                        </xs:annotation>\r
-                        <xs:simpleType>\r
-                          <xs:list itemType="xs:normalizedString"/>\r
-                        </xs:simpleType>\r
-                     </xs:element>\r
-                     <xs:element minOccurs="0" maxOccurs="unbounded" name="SkuData">\r
-                       <xs:annotation>\r
-                         <xs:documentation xml:lang="en">This section is for a list of SkuData Elements, ID and Value</xs:documentation>\r
-                       </xs:annotation>\r
-                       <xs:complexType>\r
-                         <xs:sequence minOccurs="1">\r
-                           <xs:element name="Id" type="xs:int"/>\r
-                           <xs:element name="Value" type="xs:normalizedString"/>\r
-                         </xs:sequence>\r
-                       </xs:complexType>\r
-                     </xs:element>\r
-                   </xs:choice>\r
-                   <xs:element default="0x00" minOccurs="1" maxOccurs="1" name="MaxSku" type="HexByteDataType">\r
-                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">This value comes from a production line database, and has nothing to do with the number of SkuData IDs that have been defined.</xs:documentation>\r
-                     </xs:annotation>\r
-                   </xs:element>\r
-                   <xs:element default="0x00" minOccurs="1" maxOccurs="1" name="SkuId" type="HexByteDataType">\r
-                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">This is the specific Sku ID for this build.</xs:documentation>\r
-                     </xs:annotation>\r
-                   </xs:element>\r
-                   <xs:element minOccurs="1" maxOccurs="1" name="DatumSize">\r
-                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">Max Number of Bytes of the data.</xs:documentation>\r
-                     </xs:annotation>\r
-                     <xs:simpleType>\r
-                       <xs:restriction base="xs:int">\r
-                         <xs:minInclusive value="1"/>\r
-                         <xs:maxInclusive value="16777215"/>\r
-                       </xs:restriction>\r
-                     </xs:simpleType>\r
-                   </xs:element>\r
-                   <xs:element minOccurs="1" maxOccurs="1" name="VariableGuid" type="VariableGuidType">\r
-                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">This is the Variable's GUID if and only if HII is enabled.</xs:documentation>\r
-                     </xs:annotation>\r
-                   </xs:element>\r
-                   <xs:element minOccurs="1" maxOccurs="1" name="VariableName" type="xs:normalizedString">\r
-                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">This is the C Name for the Variable, and is valid if and only HII is enabled.</xs:documentation>\r
-                     </xs:annotation>\r
-                   </xs:element>\r
-                   <xs:element minOccurs="0" maxOccurs="1" name="VariableValueDefault" type="xs:normalizedString"/>\r
-                   <xs:element minOccurs="1" maxOccurs="1" name="DataOffset" type="Hex64BitDataType">\r
+    </xs:element>\r
+    <!-- PcdBuildDeclarations -->\r
+    <xs:element name="PcdDynamicBuildDeclarations">\r
+        <xs:annotation>\r
+            <xs:documentation xml:lang="en">Child of Framework Platform Description (FPD)</xs:documentation>\r
+            <xs:documentation xml:lang="en">We permit the FPD to use an external XML file for PCD information or else the information must be contained within the XML data element, PcdBuildData.</xs:documentation>\r
+        </xs:annotation>\r
+        <xs:complexType>\r
+            <xs:sequence>\r
+                <xs:element minOccurs="0" maxOccurs="unbounded" name="PcdBuildData">\r
+                    <xs:annotation>\r
+                        <xs:documentation xml:lang="en">Child of PcdBuildDeclarations</xs:documentation>\r
+                        <xs:documentation xml:lang="en">This is date element is used in the platform build description file and contains valid data for a Platform Build</xs:documentation>\r
+                        <xs:documentation xml:lang="en">There is ONE required Attribute, ItemType</xs:documentation>\r
+                    </xs:annotation>\r
+                    <xs:complexType>\r
+                        <xs:sequence>\r
+                            <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
+                            <xs:element minOccurs="0" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="Token">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This as a unique identifier defined for either this name space.</xs:documentation>\r
+                                    <xs:documentation xml:lang="en">The Target Attribute may be used to define a Target name space, such as PCI.</xs:documentation>\r
+                                </xs:annotation>\r
+                                <xs:complexType>\r
+                                    <xs:simpleContent>\r
+                                        <xs:extension base="HexDoubleWordDataType">\r
+                                            <xs:attribute name="Target" type="C_Name" use="optional"/>\r
+                                        </xs:extension>\r
+                                    </xs:simpleContent>\r
+                                </xs:complexType>\r
+                            </xs:element>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This specifies the size of the Pcd Datum. It is either 8, 16, 32 or 64 bits for values, 1 bit for BOOLEAN and variable length for elements defined as VOID*</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element default="false" minOccurs="1" maxOccurs="1" name="HiiEnable" type="xs:boolean">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This Bit means that the Variable data is associated with HII</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element default="false" minOccurs="1" maxOccurs="1" name="VpdEnable" type="xs:boolean">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This bit enables the Vital Product Data area within flash for maintaining PCD information</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element default="false" minOccurs="1" maxOccurs="1" name="AlternateNameSpaceEnable" type="xs:boolean">\r
+                                <xs:annotation>\r
+                                    <xs:documentation>This is only applicable to ItemType DYNAMIC_EX</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element default="false" minOccurs="1" maxOccurs="1" name="SkuEnable" type="xs:boolean"/>\r
+                            <xs:element default="false" minOccurs="1" maxOccurs="1" name="SkuDataArrayEnable" type="xs:boolean"/>\r
+                            <xs:choice minOccurs="0">\r
+                                <xs:element minOccurs="0" maxOccurs="1" name="SkuDataArray">\r
+                                    <xs:annotation>\r
+                                        <xs:documentation xml:lang="en">This element is a list of two entries per line, the first should be an integer, while the second entry should be a string value</xs:documentation>\r
+                                    </xs:annotation>\r
+                                    <xs:simpleType>\r
+                                        <xs:list itemType="xs:normalizedString"/>\r
+                                    </xs:simpleType>\r
+                                </xs:element>\r
+                                <xs:element minOccurs="0" maxOccurs="unbounded" name="SkuData">\r
+                                    <xs:annotation>\r
+                                        <xs:documentation xml:lang="en">This section is for a list of SkuData Elements, ID and Value</xs:documentation>\r
+                                    </xs:annotation>\r
+                                    <xs:complexType>\r
+                                        <xs:sequence minOccurs="1">\r
+                                            <xs:element name="Id" type="xs:int"/>\r
+                                            <xs:element name="Value" type="xs:normalizedString"/>\r
+                                        </xs:sequence>\r
+                                    </xs:complexType>\r
+                                </xs:element>\r
+                            </xs:choice>\r
+                            <xs:element default="0x00" minOccurs="1" maxOccurs="1" name="MaxSku" type="HexByteDataType">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This value comes from a production line database, and has nothing to do with the number of SkuData IDs that have been defined.</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element default="0x00" minOccurs="1" maxOccurs="1" name="SkuId" type="HexByteDataType">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This is the specific Sku ID for this build.</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="DatumSize">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">Max Number of Bytes of the data.</xs:documentation>\r
+                                </xs:annotation>\r
+                                <xs:simpleType>\r
+                                    <xs:restriction base="xs:int">\r
+                                        <xs:minInclusive value="1"/>\r
+                                        <xs:maxInclusive value="16777215"/>\r
+                                    </xs:restriction>\r
+                                </xs:simpleType>\r
+                            </xs:element>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="VariableGuid" type="VariableGuidType">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This is the Variable's GUID if and only if HII is enabled.</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="VariableName" type="xs:normalizedString">\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This is the C Name for the Variable, and is valid if and only HII is enabled.</xs:documentation>\r
+                                </xs:annotation>\r
+                            </xs:element>\r
+                            <xs:element minOccurs="0" maxOccurs="1" name="VariableValueDefault" type="xs:normalizedString"/>\r
+                            <xs:element minOccurs="1" maxOccurs="1" name="DataOffset" type="Hex64BitDataType">\r
                                 <xs:annotation>\r
                                     <xs:documentation xml:lang="en">If HII is enabled, This is the offset into the variable data entry, If Vpd is enabled, then it's the Offset into the VPD area of the image defined by platform manufacturer, if neither HII nor Vpd are enabled, it's the offset into the PCD Data Area. HII and VPD can never be enabled at the same time (as of the date of this document.)</xs:documentation>\r
                                 </xs:annotation>\r
                                 <xs:annotation>\r
                                     <xs:documentation xml:lang="en">If HII is enabled, This is the offset into the variable data entry, If Vpd is enabled, then it's the Offset into the VPD area of the image defined by platform manufacturer, if neither HII nor Vpd are enabled, it's the offset into the PCD Data Area. HII and VPD can never be enabled at the same time (as of the date of this document.)</xs:documentation>\r
                                 </xs:annotation>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
                         <xs:attribute name="PcdIsDriver">\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PcdAttributes"/>\r
                         <xs:attribute name="PcdIsDriver">\r
-                           <xs:simpleType>\r
-                             <xs:annotation>\r
-                               <xs:documentation xml:lang="en">This is an enumerated data type that will be used for DYNAMIC_EX, PEIM or DXE only</xs:documentation>\r
-                             </xs:annotation>\r
-                             <xs:restriction base="UCNameType">\r
-                               <xs:enumeration value="PEI_PCD_DRIVER"/>\r
-                               <xs:enumeration value="DXE_PCD_DRIVER"/>\r
-                             </xs:restriction>\r
-                           </xs:simpleType>\r
-                         </xs:attribute>\r
+                            <xs:simpleType>\r
+                                <xs:annotation>\r
+                                    <xs:documentation xml:lang="en">This is an enumerated data type that will be used for DYNAMIC_EX, PEIM or DXE only</xs:documentation>\r
+                                </xs:annotation>\r
+                                <xs:restriction base="UCNameType">\r
+                                    <xs:enumeration value="PEI_PCD_DRIVER"/>\r
+                                    <xs:enumeration value="DXE_PCD_DRIVER"/>\r
+                                </xs:restriction>\r
+                            </xs:simpleType>\r
+                        </xs:attribute>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
         </xs:complexType>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
         </xs:complexType>\r
-    </xs:element> <!-- PcdDynamicBuildDeclarations -->\r
+    </xs:element>\r
+    <!-- PcdDynamicBuildDeclarations -->\r
     <xs:element name="PcdDefinitions">\r
         <xs:annotation>\r
             <xs:documentation xml:lang="en">Child of Package Surface Area Description (SPD)</xs:documentation>\r
     <xs:element name="PcdDefinitions">\r
         <xs:annotation>\r
             <xs:documentation xml:lang="en">Child of Package Surface Area Description (SPD)</xs:documentation>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="Updated" type="DateType"/>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="Updated" type="DateType"/>\r
+    <xs:element name="UpdatedDate" type="DateType"/>\r
     <xs:element name="URL" type="xs:anyURI"/>\r
     <xs:element name="URI" type="xs:anyURI"/>\r
     <xs:element name="UserDefinedAntTasks">\r
     <xs:element name="URL" type="xs:anyURI"/>\r
     <xs:element name="URI" type="xs:anyURI"/>\r
     <xs:element name="UserDefinedAntTasks">\r
index 38e16395fd51fd0aec92df2ebdf7e71a98694c8c..87889e911d59ad86d5bca04926d38189383e6b80 100644 (file)
             </xs:enumeration>\r
         </xs:restriction>\r
     </xs:simpleType>\r
             </xs:enumeration>\r
         </xs:restriction>\r
     </xs:simpleType>\r
+    <xs:simpleType name="PcdDriverTypes">\r
+        <xs:restriction base="NameConvention">\r
+            <xs:enumeration value="PEI_PCD_DRIVER"/>\r
+            <xs:enumeration value="DXE_PCD_DRIVER"/>\r
+        </xs:restriction>\r
+    </xs:simpleType>\r
     <xs:simpleType name="PcdDataTypes">\r
         <xs:restriction base="xs:normalizedString">\r
             <xs:enumeration value="UINT8"/>\r
     <xs:simpleType name="PcdDataTypes">\r
         <xs:restriction base="xs:normalizedString">\r
             <xs:enumeration value="UINT8"/>\r
index 7b1f9556841c5d4ba6bcc9aa4b135026adf0183e..aeae77b144ceb1a527031d4466d1eb9d95d4f744 100644 (file)
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="DatabaseName"/>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="DatabaseName"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                <xs:choice minOccurs="1" maxOccurs="1">\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                    <!-- Guid needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                    <!-- GuidValue needs to be required -->\r
+                </xs:choice>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
+                <!-- Version is the version of this file -->\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Path"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Path"/>\r
+                <!-- Path needs to be removed -->\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <!-- Created needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <!-- CreatedDate needs to be required -->\r
+                </xs:choice>\r
+                <xs:choice minOccurs="0">\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
+                    <!-- Updated needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="UpdatedDate"/>\r
                 </xs:choice>\r
                 </xs:choice>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
+                <xs:element minOccurs="0" maxOccurs="1" ref="Specification"/>\r
+                <!-- Specificatoin needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00090000 -->\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MbdHeader">\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MbdHeader">\r
+        <!-- MbdHeader needs to be removed -->\r
         <xs:annotation>\r
         <xs:annotation>\r
-            <xs:documentation xml:lang="en">This is the header for the Component Module Build Description (MBD) file. NOTE: The GUID may be different from the GUID in the MSA file, as the Guid is updated every time the file is changed, as the Guid may change if the contents of the file are changed.</xs:documentation>\r
+            <xs:documentation xml:lang="en">DO NOT USE! This is the header for the Component Module Build Description (MBD) file. NOTE: The GUID may be different from the GUID in the MSA file, as the Guid is updated every time the file is changed, as the Guid may change if the contents of the file are changed.</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
                 </xs:choice>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 </xs:choice>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Modified"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Modified"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
                 </xs:choice>\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MbdLibHeader">\r
                 </xs:choice>\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MbdLibHeader">\r
+        <!-- MbdLibHeader needs to be removed -->\r
         <xs:annotation>\r
         <xs:annotation>\r
-            <xs:documentation xml:lang="en">This is the header for the Library Module Build Description (MBD) file. NOTE: The Guid may be different from the Guid in the MSA file, as the Guid may change when the contents of the file are changed..</xs:documentation>\r
+            <xs:documentation xml:lang="en">DO NOT USE! This is the header for the Library Module Build Description (MBD) file. NOTE: The Guid may be different from the Guid in the MSA file, as the Guid may change when the contents of the file are changed..</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
                 </xs:choice>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 </xs:choice>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Modified"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Modified"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
                 </xs:choice>\r
             </xs:sequence>\r
         </xs:complexType>\r
                 </xs:choice>\r
             </xs:sequence>\r
         </xs:complexType>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="BaseName"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="ModuleType"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="ComponentType"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="BaseName"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="ModuleType"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="ComponentType"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                <xs:choice>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                    <!-- Guid needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                    <!-- GuidValue needs to be required -->\r
+                </xs:choice>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <!-- Created needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <!-- CreatedDate needs to be required -->\r
+                </xs:choice>\r
+                <xs:choice>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
+                    <!-- Updated needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
                 </xs:choice>\r
                 </xs:choice>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Specification"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Specification"/>\r
+                <!-- Specification needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00090000 -->\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MsaLibHeader">\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="MsaLibHeader">\r
+        <!-- MsaLibHeader needs to be removed -->\r
         <xs:annotation>\r
         <xs:annotation>\r
-            <xs:documentation xml:lang="en">This is the Library Module Surface Area Description Header - a replacement for INF files. The Guid may change when the contents of the file are changed.</xs:documentation>\r
+            <xs:documentation xml:lang="en">DO NOT USE! This is the Library Module Surface Area Description Header - a replacement for INF files. The Guid may change when the contents of the file are changed.</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Specification"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Specification"/>\r
                     </xs:annotation>\r
                 </xs:element>\r
                 <xs:choice>\r
                     </xs:annotation>\r
                 </xs:element>\r
                 <xs:choice>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Guid">\r
-                    <xs:annotation>\r
-                      <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
-                    </xs:annotation>\r
-                  </xs:element>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid">\r
+                        <!-- Guid needs to be removed -->\r
+                        <xs:annotation>\r
+                            <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
+                        </xs:annotation>\r
+                    </xs:element>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                    <!-- GuidValue needs to be required -->\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created">\r
-                    <xs:annotation>\r
-                      <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
-                    </xs:annotation>\r
-                  </xs:element>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created">\r
+                        <!-- Created needs to be removed -->\r
+                        <xs:annotation>\r
+                            <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
+                        </xs:annotation>\r
+                    </xs:element>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <!-- CreatedDate needs to be required -->\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="CreatedBy">\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="CreatedBy">\r
-                   <xs:annotation>\r
-                       <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
-                   </xs:annotation>\r
-                </xs:element>\r
-                <xs:choice>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Updated">\r
+                    <!-- CreatedBy needs to be removed -->\r
                     <xs:annotation>\r
                     <xs:annotation>\r
-                       <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
+                        <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
                     </xs:annotation>\r
                     </xs:annotation>\r
-                  </xs:element>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
+                </xs:element>\r
+                <xs:choice>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Updated">\r
+                        <!-- Updated needs to be removed -->\r
+                        <xs:annotation>\r
+                            <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
+                        </xs:annotation>\r
+                    </xs:element>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="PackageType">\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="PackageType">\r
-                  <xs:annotation>\r
-                    <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
-                  </xs:annotation>\r
+                    <!-- PackageType needs to be removed -->\r
+                    <xs:annotation>\r
+                        <xs:documentation xml:lang="en">DO NOT USE! removing from XMLSchema</xs:documentation>\r
+                    </xs:annotation>\r
                 </xs:element>\r
                 <xs:element minOccurs="0" maxOccurs="1" name="BuildTarget">\r
                 </xs:element>\r
                 <xs:element minOccurs="0" maxOccurs="1" name="BuildTarget">\r
-                  <xs:simpleType>\r
-                    <xs:restriction base="xs:NCName">\r
-                      <xs:enumeration value="DEBUG"/>\r
-                      <xs:enumeration value="RELEASE"/>\r
-                      <xs:enumeration value="BOTH"/>\r
-                    </xs:restriction>\r
-                  </xs:simpleType>\r
+                    <!-- BuildTarget needs to be required -->\r
+                    <xs:simpleType>\r
+                        <xs:restriction base="xs:NCName">\r
+                            <xs:enumeration value="DEBUG"/>\r
+                            <xs:enumeration value="RELEASE"/>\r
+                            <xs:enumeration value="BOTH"/>\r
+                        </xs:restriction>\r
+                    </xs:simpleType>\r
                 </xs:element>\r
                 </xs:element>\r
+                <xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>\r
+                <!-- Specification needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00090000 -->\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="PackageName"/>\r
         <xs:complexType>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="PackageName"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                <xs:choice minOccurs="1" maxOccurs="1">\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                    <!-- Guid needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                </xs:choice>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Description"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Copyright"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="License"/>\r
                 <xs:choice minOccurs="1" maxOccurs="1">\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
-                  <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Created"/>\r
+                    <!-- Created needs to be removed -->\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="E-Mail"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="E-Mail"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="ReadOnly"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="RePackage"/>\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="ReadOnly"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="RePackage"/>\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>\r
+                <!-- Specification needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00090000 -->\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="OutputDirectory"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="OutputDirectory"/>\r
+                <!-- OutputDirectory needs to be removed -->\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
index 348dd0deacb52dbb5b6658f53a411fedc9ed29fa..188ea9015c64f6e20e205bc6b2eabc56e21bc05b 100644 (file)
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
                     </xs:complexType>\r
                 </xs:element>\r
             </xs:sequence>\r
-            <xs:attributeGroup ref="BlockAttributes"/>\r
+            <xs:attributeGroup ref="FlashDeviceInfoAttributes"/>\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="FlashDeviceOverrideImage">\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="FlashDeviceOverrideImage">\r