Final Check-for TRUNK transition schema that handles both old and new elements.

This will handle both.  I will start doing the Branch stripped out version with only new stuff in it now.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@451 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
lhauch 2006-06-09 05:51:19 +00:00
parent 5c5b48998b
commit 2bf4e0a163
6 changed files with 66 additions and 48 deletions

View File

@ -367,6 +367,10 @@
<!-- DO NOT USE remove OverrideID from use -->
<xs:attribute name="OverrideID" type="xs:int" use="optional"/>
</xs:attributeGroup>
<xs:attributeGroup name="PcdBuildDefinitionAttributes">
<xs:attribute name="SupArchList" type="ArchListType" use="optional"/>
<xs:attribute name="ItemType" type="PcdItemTypes" use="required"/>
</xs:attributeGroup>
<xs:attributeGroup name="PcdDeclarationAttributes">
<xs:attribute name="SupArchList" type="ArchListType" use="optional"/>
<xs:attribute name="FeatureFlag" type="xs:normalizedString" use="optional"/>

View File

@ -1293,16 +1293,22 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="HexDoubleWordDataType"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>
<xs:element minOccurs="0" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>
<xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>
<xs:group minOccurs="0" maxOccurs="1" ref="SkuGroup"/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:group minOccurs="0" maxOccurs="1" ref="HiiEnable"/>
<xs:group minOccurs="0" maxOccurs="1" ref="VpdEnable"/>
</xs:choice>
<xs:element minOccurs="1" maxOccurs="1" name="DatumSize" type="DatumSizeLimitation"/>
<xs:element minOccurs="1" maxOccurs="1" name="Value" type="xs:normalizedString"/>
<xs:element minOccurs="0" maxOccurs="1" name="MaxDatumSize" type="DatumSizeLimitation"/>
<xs:element minOccurs="1" maxOccurs="unbounded" name="SkuInfo">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" name="SkuId" type="xs:nonNegativeInteger"/>
<xs:choice>
<xs:group minOccurs="0" maxOccurs="1" ref="HiiEnable"/>
<xs:group minOccurs="0" maxOccurs="1" ref="VpdEnable"/>
<xs:group minOccurs="0" maxOccurs="1" ref="DefaultGroup"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="PcdAttributes"/>
</xs:complexType>
@ -1320,23 +1326,22 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="HexDoubleWordDataType"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>
<xs:element minOccurs="0" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>
<xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>
<xs:group minOccurs="0" maxOccurs="1" ref="SkuGroup"/>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:group minOccurs="0" maxOccurs="1" ref="HiiEnable"/>
<xs:group minOccurs="0" maxOccurs="1" ref="VpdEnable"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="1" name="DatumSize" type="DatumSizeLimitation"/>
<xs:element minOccurs="0" maxOccurs="1" name="Value" type="xs:normalizedString"/>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Value" type="xs:normalizedString"/>
</xs:sequence>
<xs:attributeGroup ref="PcdAttributes"/>
<xs:attributeGroup ref="PcdBuildDefinitionAttributes"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:group name="DefaultGroup">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="Value" type="xs:normalizedString"/>
</xs:sequence>
</xs:group>
<xs:group name="HiiEnable">
<xs:annotation>
<xs:documentation xml:lang="en">If HiiEnable group is specified, then HiiEnable is default true</xs:documentation>
@ -1355,21 +1360,6 @@
<xs:element minOccurs="0" maxOccurs="1" name="VpdOffset" type="Hex64BitDataType"/>
</xs:sequence>
</xs:group>
<xs:group name="SkuGroup">
<xs:sequence>
<xs:element default="0x00" minOccurs="0" maxOccurs="1" name="SkuSet" type="SkuListType"/>
<xs:element default="0x00" minOccurs="0" maxOccurs="1" name="SkuList" type="SkuListType"/>
<xs:element default="false" minOccurs="0" maxOccurs="1" name="SkuDataArrayEnable" type="xs:boolean"/>
<xs:element minOccurs="0" maxOccurs="unbounded" name="SkuData">
<xs:complexType>
<xs:sequence minOccurs="1">
<xs:element name="Id" type="xs:int"/>
<xs:element name="Value" type="xs:normalizedString"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:group>
<xs:element name="PcdCoded">
<xs:annotation>
<xs:documentation xml:lang="en">Child of Module Surface Area Description (MSA)</xs:documentation>
@ -1406,7 +1396,7 @@
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="C_Name"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="Token"/>
<xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>
<xs:element minOccurs="1" maxOccurs="1" name="TokenSpaceGuid" type="GuidType"/>
<xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>
<xs:element minOccurs="1" maxOccurs="1" name="ValidUsage" type="PcdListType"/>

View File

@ -429,6 +429,10 @@
<xs:simpleType name="Token">
<xs:union memberTypes="GuidArrayType GuidNamingConvention HexDoubleWordDataType"/>
</xs:simpleType>
<!-- TokenDataType is xs:nonNegativeInteger in final -->
<xs:simpleType name="TokenDataType">
<xs:union memberTypes="HexDoubleWordDataType xs:nonNegativeInteger"/>
</xs:simpleType>
<xs:simpleType name="ToolChains">
<xs:restriction base="UCNameType">
<xs:enumeration value="MSFT"/>

View File

@ -188,29 +188,32 @@
<xs:element minOccurs="0" maxOccurs="1" ref="GuidValue"/>
<!-- GuidValue needs to be required -->
</xs:choice>
<!-- Version needs to be xs:decimal in final -->
<xs:element minOccurs="0" maxOccurs="1" ref="Version"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Abstract"/>
<xs:element minOccurs="1" maxOccurs="1" ref="Description"/>
<xs:element minOccurs="0" maxOccurs="1" ref="Copyright"/>
<xs:element minOccurs="0" maxOccurs="1" ref="License"/>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:element minOccurs="0" maxOccurs="1" ref="Created"/>
<!-- DO NOT USE Created needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="Created"/>
<!-- DO NOT USE CreatedDate needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="CreatedDate"/>
<!-- CreatedDate needs to be required -->
</xs:choice>
<xs:element minOccurs="0" maxOccurs="1" ref="CreatedBy"/>
<!-- DO NOT USE CreatedBy needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="CreatedBy"/>
<xs:choice>
<xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>
<!-- DO NOT USE Updated needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="Updated"/>
<!-- DO NOT USE ModifiedDate needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="ModifiedDate"/>
</xs:choice>
<xs:element minOccurs="0" maxOccurs="1" ref="PackageType"/>
<!-- DO NOT USE PackageType needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" ref="PackageType"/>
<!-- DO NOT USE BuildTarget needs to be removed -->
<xs:element minOccurs="0" maxOccurs="1" name="BuildTarget" type="BuildTargets"/>
<!-- Specification needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052 -->
<xs:element minOccurs="0" maxOccurs="unbounded" ref="Specification"/>
<!-- Specification needs to be required - FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00090000 -->
</xs:sequence>
</xs:complexType>
</xs:element>

View File

@ -259,8 +259,20 @@
<xs:element minOccurs="0" maxOccurs="1" ref="Formsets"/>
<!-- DO NOT USE! REMOVE Guids in FINAL -->
<xs:element minOccurs="0" maxOccurs="1" ref="Guids"/>
<!-- EXTERNS stays in FINAL -->
<xs:element minOccurs="0" maxOccurs="1" ref="Externs"/>
<xs:choice minOccurs="0">
<!-- DO NOT USE! REMOVE Externs stays in FINAL -->
<xs:element minOccurs="0" maxOccurs="1" ref="Externs"/>
<xs:element minOccurs="0" maxOccurs="1" name="Extern">
<xs:annotation>
<xs:documentation xml:lang="en">Only specification is allow here. We need to let this be an addtion OR, if the WORD portion exists, this entry takes precedence.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="unbounded" ref="Specification"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:choice>
<!-- DO NOT USE! REMOVE PcdBuildDeclarations in FINAL -->
<xs:element minOccurs="0" maxOccurs="1" ref="PcdBuildDeclarations"/>
@ -320,12 +332,17 @@
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="SEC" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="PEI_CORE" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="PEIM" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="DXE_CORE" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="DXE_DRIVERS" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="OTHER_COMPONENTS" type="Components"/>
<xs:choice>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="SEC" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="PEI_CORE" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="PEIM" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="DXE_CORE" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="DXE_DRIVERS" type="Components"/>
<xs:element minOccurs="0" maxOccurs="1" name="OTHER_COMPONENTS" type="Components"/>
</xs:sequence>
<xs:element minOccurs="1" maxOccurs="unbounded" ref="ModuleSA"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>

View File

@ -184,7 +184,7 @@
<xs:annotation>
<xs:documentation xml:lang="en"> This defines what a Platform Name is: Alphanumeric characters and optional underscore (_) or dash (-) characters, followed by a dot and more alphanumeric characters. </xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:restriction base="xs:NCName">
<xs:pattern value="(([a-zA-Z][a-zA-Z0-9]*)(_)*(.)*)+"/>
</xs:restriction>
</xs:simpleType>