]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Updated Document, added some more choice settings and comments. Added an ArchType...
authorlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 3 Jun 2006 02:03:23 +0000 (02:03 +0000)
committerlhauch <lhauch@6f19259b-4bc3-4df7-8a09-765794883524>
Sat, 3 Jun 2006 02:03:23 +0000 (02:03 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@406 6f19259b-4bc3-4df7-8a09-765794883524

Tools/FrameworkWizardMinReq.doc
Tools/XMLSchema/FrameworkDataAttributes.xsd
Tools/XMLSchema/FrameworkDataElements.xsd

index 5ea01ecb70120317d5ac482a5fc0187a384cf0fd..8ce27ebbe1fa000af9a341f1d79ed1a1ba2b2737 100644 (file)
Binary files a/Tools/FrameworkWizardMinReq.doc and b/Tools/FrameworkWizardMinReq.doc differ
index 5cf392284703d4f19d718b59333b56d6e01f59c0..eccb3611289deb190db304af50ba49dad6cceffc 100644 (file)
         <xs:attribute name="ToolChain" type="ToolChains" use="optional"/>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
         <xs:attribute name="PackageName" type="BaseNameConvention" use="optional"/>\r
         <xs:attribute name="PackageVersion" type="VersionDataType" use="optional"/>\r
         <xs:attribute name="PackageGuid" type="GuidType" use="optional"/>\r
-        <xs:attribute name="Arch" type="SupportedArchitectures" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <xs:attribute name="PackageName" type="BaseNameConvention" use="optional"/>\r
         <xs:attribute name="PackageGuid" type="GuidType" use="optional"/>\r
         <xs:attribute name="BuildSequence" type="xs:int" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
     </xs:attributeGroup>\r
     <xs:attributeGroup name="OptionAttributes">\r
         <xs:attribute name="Platform" type="PlatformNamingConvention" use="optional"/>\r
         <xs:attribute name="Usage" type="PpiUsage" use="optional"/>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
         <xs:attribute name="Usage" type="PpiNotifyUsage" use="optional"/>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
         <xs:attribute name="Usage" type="ProtocolUsage" use="optional"/>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
         <xs:attribute name="Guid" type="GuidType" use="optional"/>\r
         <xs:attribute name="Usage" type="ProtocolNotifyUsage" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
         <xs:attribute name="Usage" type="VariableUsage" use="optional"/>\r
         <xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>\r
         <xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>\r
+        <xs:attribute name="ArchType" use="optional">\r
+            <xs:simpleType>\r
+                <xs:list itemType="SupportedArchitectures"/>\r
+            </xs:simpleType>\r
+        </xs:attribute>\r
         <xs:attribute name="OverrideID" type="xs:int" use="optional"/>\r
         <!-- DO NOT USE remove OverrideID from use -->\r
     </xs:attributeGroup>\r
index 67fd6a893d191d14dc34dd6b6729b9ec605a0284..ffa1e7441f5f95e53cf16ee826b95278d0f11e93 100644 (file)
                             </xs:simpleContent>\r
                         </xs:complexType>\r
                     </xs:element>\r
+                    <!-- Arch element should be removed - use Arch attributes to the above instead. -->\r
                     <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                         <xs:complexType>\r
                             <xs:sequence minOccurs="1">\r
             <xs:documentation xml:lang="en">Describe the valid Framework Component Type</xs:documentation>\r
         </xs:annotation>\r
     </xs:element>\r
-    <xs:element name="Condition">\r
-        <xs:annotation>\r
-            <xs:documentation xml:lang="en">A conditional expression that must be evaluated to determine whether a feature is implemented or not. The expression must be either numeric, string or boolean.</xs:documentation>\r
-        </xs:annotation>\r
-        <xs:complexType mixed="true">\r
-            <xs:sequence minOccurs="0" maxOccurs="1">\r
-                <xs:element minOccurs="0" maxOccurs="1" name="Condition" type="xs:normalizedString"/>\r
-            </xs:sequence>\r
-            <xs:attribute name="ConditionalTarget" type="ConditionalTarget" use="optional"/>\r
-        </xs:complexType>\r
-    </xs:element>\r
     <xs:element name="ConditionalExpression">\r
+        <!-- DO NOT USE remove and use FeatureFlag instead -->\r
         <xs:annotation>\r
             <xs:documentation xml:lang="en">A conditional expression that must be evaluated to determine whether a feature is implemented or not. The expression must be either numeric, string or boolean.</xs:documentation>\r
         </xs:annotation>\r
                         </xs:simpleContent>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- Remove Arch and use Arch Attribute for DataHubRecord instead. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                                 <xs:complexType>\r
                                     <xs:sequence>\r
                                         <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                                        <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                        <xs:choice minOccurs="0">\r
+                                            <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                            <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                                        </xs:choice>\r
                                     </xs:sequence>\r
                                     <xs:attributeGroup ref="EventAttributes"/>\r
                                 </xs:complexType>\r
                             </xs:element>\r
+                            <!-- Remove Arch Section and use Arch Attribute instead in above. -->\r
                             <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                                 <xs:complexType>\r
                                     <xs:sequence>\r
                                             <xs:complexType>\r
                                                 <xs:sequence>\r
                                                     <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                                                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                                    <xs:choice minOccurs="0">\r
+                                                        <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                                        <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                                                    </xs:choice>\r
                                                 </xs:sequence>\r
                                                 <xs:attributeGroup ref="EventAttributes"/>\r
                                             </xs:complexType>\r
                                 <xs:complexType>\r
                                     <xs:sequence>\r
                                         <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                                        <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                        <xs:choice minOccurs="0">\r
+                                            <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                            <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                                        </xs:choice>\r
                                     </xs:sequence>\r
                                     <xs:attributeGroup ref="EventAttributes"/>\r
                                 </xs:complexType>\r
                             </xs:element>\r
+                            <!-- Remove Arch and use Arch attribute in above -->\r
                             <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                                 <xs:complexType>\r
                                     <xs:sequence>\r
                                             <xs:complexType>\r
                                                 <xs:sequence>\r
                                                     <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                                                    <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
                                                 </xs:sequence>\r
                                                 <xs:attributeGroup ref="EventAttributes"/>\r
                                             </xs:complexType>\r
                         <xs:attributeGroup ref="ExternAttributes"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>\r
+                <!-- Remove Arch and use Arch Attribute in above. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
         <xs:complexType>\r
             <xs:sequence minOccurs="1">\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Filename"/>\r
+                <!-- DO NOT USE Arch remove it element and use Arch Attribute to Filename instead -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence minOccurs="1">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                             <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                            <xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>\r
+                            <xs:choice minOccurs="1">\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="unbounded" name="FeatureFlag" type="C_Name"/>\r
                         </xs:sequence>\r
                         <xs:attribute name="Name" type="xs:normalizedString" use="required"/>\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
                             <xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>\r
                             <xs:element minOccurs="0" maxOccurs="unbounded" ref="ConditionalExpression"/>\r
+                            <!-- DO NOT USE remove and use FeatureFlag instead -->\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="DefaultValue"/>\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="GuidAttributes"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- DO NOT USE Arch, Arch should be removed and the attribute Arch should be used in the above. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                                         <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
                                         <xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>\r
                                         <xs:element minOccurs="0" maxOccurs="unbounded" ref="ConditionalExpression"/>\r
+                                        <!-- DO NOT USE remove and use FeatureFlag instead -->\r
                                         <xs:element minOccurs="0" maxOccurs="1" ref="DefaultValue"/>\r
                                         <xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>\r
                                     </xs:sequence>\r
                         <xs:sequence>\r
                             <xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:normalizedString"/>\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="C_Name"/>\r
-                            <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                            <xs:choice minOccurs="0">\r
+                                <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
+                                <xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>\r
+                            </xs:choice>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="HobAttributes"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- DO NOT USE Arch, use attribute Arch for Hob in above -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
     <xs:element name="InstalledDate" type="DateType"/>\r
     <xs:element name="Libraries">\r
         <xs:annotation>\r
-            <xs:documentation xml:lang="en">Different (Module)  Instances of Libraries used ONLY in FPD Files.</xs:documentation>\r
+            <xs:documentation xml:lang="en">Different (Module) Instances of Libraries used ONLY in FPD Files.</xs:documentation>\r
         </xs:annotation>\r
         <xs:complexType>\r
             <xs:sequence minOccurs="1">\r
             </xs:annotation>\r
             <xs:sequence>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="ModuleName"/>\r
-                <xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>\r
+                <xs:choice minOccurs="1">\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="1" maxOccurs="1" ref="Version"/>\r
                 <xs:element minOccurs="1" maxOccurs="1" ref="Path"/>\r
             </xs:sequence>\r
                         <xs:attributeGroup ref="MsaAttributes"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- DO NOT USE Arch element, use attribute Arch in above. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence minOccurs="1">\r
         </xs:complexType>\r
     </xs:element>\r
     <xs:element name="PCDs">\r
+        <!-- PCDs section is going away to be replaced by something else TB Named later -->\r
         <xs:annotation>\r
             <xs:documentation xml:lang="en">Child of Module Surface Area documents, MSA and MBD files, Library Modules and Other Modules</xs:documentation>\r
             <xs:documentation xml:lang="en">One or more PcdData or PcdBuildData Elements Only one type is permitted</xs:documentation>\r
                     <xs:complexType>\r
                         <xs:sequence maxOccurs="unbounded">\r
                             <xs:element minOccurs="0" maxOccurs="1" ref="PackageName"/>\r
-                            <xs:choice minOccurs="1">\r
+                            <xs:choice minOccurs="0">\r
                                 <xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>\r
                                 <!-- DO NOT USE Guid should be removed, use PackageGuid instead -->\r
                                 <xs:element minOccurs="0" maxOccurs="1" name="PackageGuid" type="GuidType"/>\r
                             </xs:choice>\r
-                            <xs:choice minOccurs="1">\r
+                            <xs:choice minOccurs="0">\r
                                 <xs:element minOccurs="0" maxOccurs="1" ref="Version"/>\r
                                 <xs:element minOccurs="0" maxOccurs="1" name="PackageVersion" type="VersionDataType"/>\r
                             </xs:choice>\r
-                            <xs:element minOccurs="1" maxOccurs="1" ref="Path"/>\r
+                            <xs:choice minOccurs="1">\r
+                                <xs:element minOccurs="0" maxOccurs="1" ref="Path"/>\r
+                                <xs:element minOccurs="0" maxOccurs="1" ref="Filename"/>\r
+                            </xs:choice>\r
                             <xs:element minOccurs="1" maxOccurs="1" ref="InstalledDate"/>\r
                         </xs:sequence>\r
                         <xs:attributeGroup ref="PackageAttributes"/>\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:simpleContent>\r
                     </xs:complexType>\r
                 </xs:element>\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="Path"/>\r
-                <!--\r
-                <xs:element minOccurs="0" maxOccurs="1" ref="File"/>\r
-                    -->\r
+                <xs:choice minOccurs="0">\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Path"/>\r
+                    <xs:element minOccurs="0" maxOccurs="1" ref="Filename"/>\r
+                </xs:choice>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="InstalledDate"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>\r
                 <xs:element minOccurs="0" maxOccurs="1" name="AlternatePcdFile" type="FileNameConvention"/>\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                             <xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>\r
-                            <xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>\r
-                            <xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>\r
+                            <xs:choice>\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="unbounded" name="FeatureFlag" type="xs:normalizedString"/>\r
                         </xs:sequence>\r
                         <xs:attribute name="Name" type="xs:normalizedString" use="required"/>\r
                     </xs:complexType>\r
                         </xs:simpleContent>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- DO NOT USE Arch element, use Arch Attribute in above instead. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                     <xs:complexType>\r
                         <xs:sequence>\r
                             <xs:element minOccurs="1" maxOccurs="1" name="String" type="xs:normalizedString"/>\r
-                            <xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>\r
+                            <xs:choice minOccurs="1">\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" name="ByteOffset" type="HexWordDataType">\r
                                 <xs:annotation>\r
                                     <xs:documentation xml:lang="en">This entry represents the Hex Byte Offset {0x0, 0xn} to where the data starts.</xs:documentation>\r
                         <xs:attributeGroup ref="VariableAttributes"/>\r
                     </xs:complexType>\r
                 </xs:element>\r
+                <!-- DO NOT USE Arch element, use attribute Arch in above. -->\r
                 <xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">\r
                     <xs:complexType>\r
                         <xs:sequence>\r