Updated Document, added some more choice settings and comments. Added an ArchType attribute list of: SupportedArchitectures.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@406 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
lhauch 2006-06-03 02:03:23 +00:00
parent 348e1ac1db
commit 3a0a3d3878
3 changed files with 100 additions and 31 deletions

Binary file not shown.

View File

@ -71,6 +71,11 @@
<xs:attribute name="ToolChain" type="ToolChains" use="optional"/>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>
@ -126,7 +131,11 @@
<xs:attribute name="PackageName" type="BaseNameConvention" use="optional"/>
<xs:attribute name="PackageVersion" type="VersionDataType" use="optional"/>
<xs:attribute name="PackageGuid" type="GuidType" use="optional"/>
<xs:attribute name="Arch" type="SupportedArchitectures" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
@ -149,6 +158,11 @@
<xs:attribute name="PackageName" type="BaseNameConvention" use="optional"/>
<xs:attribute name="PackageGuid" type="GuidType" use="optional"/>
<xs:attribute name="BuildSequence" type="xs:int" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
</xs:attributeGroup>
<xs:attributeGroup name="OptionAttributes">
<xs:attribute name="Platform" type="PlatformNamingConvention" use="optional"/>
@ -206,6 +220,11 @@
<xs:attribute name="Usage" type="PpiUsage" use="optional"/>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>
@ -214,6 +233,11 @@
<xs:attribute name="Usage" type="PpiNotifyUsage" use="optional"/>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>
@ -222,6 +246,11 @@
<xs:attribute name="Usage" type="ProtocolUsage" use="optional"/>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>
@ -229,6 +258,11 @@
<xs:attribute name="Guid" type="GuidType" use="optional"/>
<xs:attribute name="Usage" type="ProtocolNotifyUsage" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>
@ -271,6 +305,11 @@
<xs:attribute name="Usage" type="VariableUsage" use="optional"/>
<xs:attribute default="true" name="EnableFeature" type="xs:boolean" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>
<xs:attribute name="ArchType" use="optional">
<xs:simpleType>
<xs:list itemType="SupportedArchitectures"/>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
<!-- DO NOT USE remove OverrideID from use -->
</xs:attributeGroup>

View File

@ -112,6 +112,7 @@
</xs:simpleContent>
</xs:complexType>
</xs:element>
<!-- Arch element should be removed - use Arch attributes to the above instead. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence minOccurs="1">
@ -148,18 +149,8 @@
<xs:documentation xml:lang="en">Describe the valid Framework Component Type</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Condition">
<xs:annotation>
<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>
</xs:annotation>
<xs:complexType mixed="true">
<xs:sequence minOccurs="0" maxOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" name="Condition" type="xs:normalizedString"/>
</xs:sequence>
<xs:attribute name="ConditionalTarget" type="ConditionalTarget" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="ConditionalExpression">
<!-- DO NOT USE remove and use FeatureFlag instead -->
<xs:annotation>
<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>
</xs:annotation>
@ -190,6 +181,7 @@
</xs:simpleContent>
</xs:complexType>
</xs:element>
<!-- Remove Arch and use Arch Attribute for DataHubRecord instead. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -254,11 +246,15 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="EventAttributes"/>
</xs:complexType>
</xs:element>
<!-- Remove Arch Section and use Arch Attribute instead in above. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -266,7 +262,10 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="EventAttributes"/>
</xs:complexType>
@ -288,11 +287,15 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="EventAttributes"/>
</xs:complexType>
</xs:element>
<!-- Remove Arch and use Arch attribute in above -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -300,7 +303,6 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
</xs:sequence>
<xs:attributeGroup ref="EventAttributes"/>
</xs:complexType>
@ -363,6 +365,8 @@
<xs:attributeGroup ref="ExternAttributes"/>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>
<!-- Remove Arch and use Arch Attribute in above. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -449,6 +453,7 @@
<xs:complexType>
<xs:sequence minOccurs="1">
<xs:element minOccurs="0" maxOccurs="unbounded" ref="Filename"/>
<!-- DO NOT USE Arch remove it element and use Arch Attribute to Filename instead -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence minOccurs="1">
@ -519,7 +524,10 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:normalizedString" use="required"/>
@ -541,12 +549,14 @@
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
<xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="ConditionalExpression"/>
<!-- DO NOT USE remove and use FeatureFlag instead -->
<xs:element minOccurs="0" maxOccurs="1" ref="DefaultValue"/>
<xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>
</xs:sequence>
<xs:attributeGroup ref="GuidAttributes"/>
</xs:complexType>
</xs:element>
<!-- DO NOT USE Arch, Arch should be removed and the attribute Arch should be used in the above. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -560,6 +570,7 @@
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
<xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="ConditionalExpression"/>
<!-- DO NOT USE remove and use FeatureFlag instead -->
<xs:element minOccurs="0" maxOccurs="1" ref="DefaultValue"/>
<xs:element minOccurs="0" maxOccurs="1" ref="HelpText"/>
</xs:sequence>
@ -587,11 +598,15 @@
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:normalizedString"/>
<xs:element minOccurs="0" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
</xs:sequence>
<xs:attributeGroup ref="HobAttributes"/>
</xs:complexType>
</xs:element>
<!-- DO NOT USE Arch, use attribute Arch for Hob in above -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -644,7 +659,7 @@
<xs:element name="InstalledDate" type="DateType"/>
<xs:element name="Libraries">
<xs:annotation>
<xs:documentation xml:lang="en">Different (Module) Instances of Libraries used ONLY in FPD Files.</xs:documentation>
<xs:documentation xml:lang="en">Different (Module) Instances of Libraries used ONLY in FPD Files.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="1">
@ -756,7 +771,10 @@
</xs:annotation>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="ModuleName"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
<xs:element minOccurs="1" maxOccurs="1" ref="Version"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Path"/>
</xs:sequence>
@ -806,6 +824,7 @@
<xs:attributeGroup ref="MsaAttributes"/>
</xs:complexType>
</xs:element>
<!-- DO NOT USE Arch element, use attribute Arch in above. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence minOccurs="1">
@ -866,6 +885,7 @@
</xs:complexType>
</xs:element>
<xs:element name="PCDs">
<!-- PCDs section is going away to be replaced by something else TB Named later -->
<xs:annotation>
<xs:documentation xml:lang="en">Child of Module Surface Area documents, MSA and MBD files, Library Modules and Other Modules</xs:documentation>
<xs:documentation xml:lang="en">One or more PcdData or PcdBuildData Elements Only one type is permitted</xs:documentation>
@ -950,16 +970,19 @@
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element minOccurs="0" maxOccurs="1" ref="PackageName"/>
<xs:choice minOccurs="1">
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<!-- DO NOT USE Guid should be removed, use PackageGuid instead -->
<xs:element minOccurs="0" maxOccurs="1" name="PackageGuid" type="GuidType"/>
</xs:choice>
<xs:choice minOccurs="1">
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Version"/>
<xs:element minOccurs="0" maxOccurs="1" name="PackageVersion" type="VersionDataType"/>
</xs:choice>
<xs:element minOccurs="1" maxOccurs="1" ref="Path"/>
<xs:choice minOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" ref="Path"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Filename"/>
</xs:choice>
<xs:element minOccurs="1" maxOccurs="1" ref="InstalledDate"/>
</xs:sequence>
<xs:attributeGroup ref="PackageAttributes"/>
@ -1009,7 +1032,6 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="0" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token">
<xs:annotation>
<xs:documentation xml:lang="en">This as a unique identifier defined for either this name space.</xs:documentation>
@ -1332,10 +1354,10 @@
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="1" ref="Path"/>
<!--
<xs:element minOccurs="0" maxOccurs="1" ref="File"/>
-->
<xs:choice minOccurs="0">
<xs:element minOccurs="0" maxOccurs="1" ref="Path"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Filename"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="1" ref="InstalledDate"/>
<xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>
<xs:element minOccurs="0" maxOccurs="1" name="AlternatePcdFile" type="FileNameConvention"/>
@ -1351,8 +1373,11 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="C_Name"/>
<xs:choice>
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="unbounded" name="FeatureFlag" type="xs:normalizedString"/>
</xs:sequence>
<xs:attribute name="Name" type="xs:normalizedString" use="required"/>
</xs:complexType>
@ -1384,6 +1409,7 @@
</xs:simpleContent>
</xs:complexType>
</xs:element>
<!-- DO NOT USE Arch element, use Arch Attribute in above instead. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>
@ -1599,7 +1625,10 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="String" type="xs:normalizedString"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Guid"/>
<xs:choice minOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" ref="Guid"/>
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="1" name="ByteOffset" type="HexWordDataType">
<xs:annotation>
<xs:documentation xml:lang="en">This entry represents the Hex Byte Offset {0x0, 0xn} to where the data starts.</xs:documentation>
@ -1631,6 +1660,7 @@
<xs:attributeGroup ref="VariableAttributes"/>
</xs:complexType>
</xs:element>
<!-- DO NOT USE Arch element, use attribute Arch in above. -->
<xs:element minOccurs="0" maxOccurs="unbounded" name="Arch">
<xs:complexType>
<xs:sequence>