diff --git a/Tools/XMLSchema/FrameworkDataAttributes.xsd b/Tools/XMLSchema/FrameworkDataAttributes.xsd
index eb82e73da6..a699cea199 100644
--- a/Tools/XMLSchema/FrameworkDataAttributes.xsd
+++ b/Tools/XMLSchema/FrameworkDataAttributes.xsd
@@ -17,13 +17,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
@@ -38,7 +82,7 @@
-
+
@@ -51,7 +95,7 @@
-
+
@@ -62,7 +106,7 @@
-
+
@@ -72,7 +116,7 @@
-
+
@@ -86,7 +130,7 @@
-
+
@@ -96,16 +140,23 @@
-
+
+
+
+
+
+
+
+
-
+
@@ -117,18 +168,24 @@
+
-
+
+
+
-
+
+
+
+
@@ -143,7 +200,7 @@
-
+
@@ -170,7 +227,7 @@
-
+
@@ -195,7 +252,7 @@
-
+
@@ -205,7 +262,7 @@
-
+
@@ -216,9 +273,12 @@
+
+
+
-
+
@@ -228,7 +288,7 @@
-
+
@@ -245,7 +305,7 @@
Only NON FEATURE_FLAG PCDS should have the FeatureFlag attribute set.
-
+
@@ -261,8 +321,9 @@
+
-
+
@@ -271,21 +332,31 @@
+
+
+
+
+
+
+
-
+
+
+
-
+
+
@@ -293,7 +364,7 @@
-
+
@@ -301,9 +372,15 @@
+
+
+
+
+
+
-
+
@@ -337,7 +414,7 @@
-
+
@@ -350,7 +427,7 @@
-
+
diff --git a/Tools/XMLSchema/FrameworkDataElements.xsd b/Tools/XMLSchema/FrameworkDataElements.xsd
index cc9302a53b..f38f47211d 100644
--- a/Tools/XMLSchema/FrameworkDataElements.xsd
+++ b/Tools/XMLSchema/FrameworkDataElements.xsd
@@ -17,6 +17,7 @@
+
@@ -516,6 +517,9 @@
+
+ This is a child of PackageSurfaceArea (SPD)
+
@@ -526,9 +530,9 @@
-
+
-
+
@@ -602,7 +606,6 @@
-
@@ -872,21 +875,14 @@
+
Surface Area Package Description (SPD) list of Module Surface Area files
-
-
-
-
-
-
-
-
-
+
@@ -964,11 +960,23 @@
- This defines the minimum header file needed to support a given ModuleType.
+ This is a child of PackageSurfaceArea (SPD)
-
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1473,6 +1481,9 @@
+
+ This is a child of PackageSurfaceArea (SPD)
+
@@ -1480,12 +1491,13 @@
+
-
+
-
+
@@ -1545,16 +1557,22 @@
+
+ This is a child of PackageSurfaceArea (SPD)
+
-
-
+
+
+
+
+
-
+
@@ -1680,14 +1698,14 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/Tools/XMLSchema/FrameworkDataTypes.xsd b/Tools/XMLSchema/FrameworkDataTypes.xsd
index af67ab0b19..dae8f8e605 100644
--- a/Tools/XMLSchema/FrameworkDataTypes.xsd
+++ b/Tools/XMLSchema/FrameworkDataTypes.xsd
@@ -217,6 +217,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Tools/XMLSchema/FrameworkPlatformDataElements.xsd b/Tools/XMLSchema/FrameworkPlatformDataElements.xsd
index d9da5f79b9..1cab356b2f 100644
--- a/Tools/XMLSchema/FrameworkPlatformDataElements.xsd
+++ b/Tools/XMLSchema/FrameworkPlatformDataElements.xsd
@@ -19,6 +19,7 @@
+
@@ -343,62 +344,6 @@
-
-
- The list of EFI_FLASH_AREA Attributes
-
-
-
-
-
-
-
-
-
- The list of valid EFI Area Types
-
-
-
-
-
-
-
-
-
-
-
-
-
- Right now, only EFI_FLASH_MAP_HOB_GUID is defined
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -465,47 +410,4 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Tools/XMLSchema/FrameworkPlatformDataTypes.xsd b/Tools/XMLSchema/FrameworkPlatformDataTypes.xsd
new file mode 100644
index 0000000000..c77ee639e0
--- /dev/null
+++ b/Tools/XMLSchema/FrameworkPlatformDataTypes.xsd
@@ -0,0 +1,76 @@
+
+
+
+
+ This schema defines EFI and Framework Platform Data Types.
+
+
+
+
+
+
+ The list of EFI_FLASH_AREA Attributes
+
+
+
+
+
+
+
+
+
+ The list of valid EFI Area Types
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Right now, only EFI_FLASH_MAP_HOB_GUID is defined
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Tools/XMLSchema/SurfaceArea.xsd b/Tools/XMLSchema/SurfaceArea.xsd
index 7b0c08c78f..796e9b4984 100644
--- a/Tools/XMLSchema/SurfaceArea.xsd
+++ b/Tools/XMLSchema/SurfaceArea.xsd
@@ -178,7 +178,9 @@
+
+