]>
Commit | Line | Data |
---|---|---|
878ddf1f | 1 | <?xml version="1.0" encoding="UTF-8"?>\r |
2 | <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 | |
92fb4401 | 3 | <!--\r |
878ddf1f | 4 | Filename: FrameworkDataElements.xsd\r |
5 | \r | |
6 | Copyright (c) 2006, Intel Corp.\r | |
7 | All rights reserved. This program and the accompanying materials\r | |
8 | are licensed and made available under the terms and conditions of the BSD License\r | |
9 | which may be found at http://opensource.org/licenses/bsd-license.php\r | |
10 | \r | |
11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
13 | \r | |
14 | -->\r | |
92fb4401 | 15 | <xs:annotation>\r |
16 | <xs:documentation xml:lang="en"> This schema defines EFI and Framework Data Elements </xs:documentation>\r | |
17 | </xs:annotation>\r | |
18 | <xs:include schemaLocation="NamingConvention.xsd"/>\r | |
19 | <xs:include schemaLocation="FrameworkDataTypes.xsd"/>\r | |
20 | <xs:include schemaLocation="FrameworkPlatformDataTypes.xsd"/>\r | |
21 | <xs:include schemaLocation="FrameworkDataAttributes.xsd"/>\r | |
22 | <xs:element name="Abstract" type="Sentence">\r | |
878ddf1f | 23 | <xs:annotation>\r |
92fb4401 | 24 | <xs:documentation xml:lang="en">Abstract is valid for all Description Files</xs:documentation>\r |
25 | <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 | |
878ddf1f | 26 | </xs:annotation>\r |
92fb4401 | 27 | </xs:element>\r |
28 | <xs:element name="AntTask">\r | |
29 | <xs:annotation>\r | |
30 | <xs:documentation xml:lang="en">This is a sub-element of UserDefinedAntTasks</xs:documentation>\r | |
31 | <xs:documentation xml:lang="en">Define a file that contains one or more ant tasks that are to be added into or replacing of sequences of build steps. These files will be called using the ant-call task on a file name. These files must be valid apache-ant formatted task files.</xs:documentation>\r | |
32 | </xs:annotation>\r | |
33 | <xs:complexType>\r | |
34 | <xs:sequence>\r | |
35 | <xs:element minOccurs="0" maxOccurs="1" name="AntCmdOptions" type="xs:normalizedString"/>\r | |
36 | <xs:element minOccurs="0" maxOccurs="1" name="Filename" type="PathAndFilename"/>\r | |
37 | </xs:sequence>\r | |
38 | <xs:attribute name="Id" type="xs:int" use="required"/>\r | |
39 | </xs:complexType>\r | |
40 | </xs:element>\r | |
41 | <xs:element name="BootModes">\r | |
42 | <xs:annotation>\r | |
43 | <xs:documentation xml:lang="en">BootModes is valid for all Description Files</xs:documentation>\r | |
44 | <xs:documentation xml:lang="en">This is a list of BootModes Supported by the Module</xs:documentation>\r | |
45 | </xs:annotation>\r | |
46 | <xs:complexType>\r | |
47 | <xs:sequence>\r | |
48 | <xs:element minOccurs="1" maxOccurs="unbounded" name="BootMode">\r | |
49 | <xs:complexType>\r | |
50 | <xs:sequence minOccurs="0">\r | |
51 | <xs:element name="HelpText" type="Paragraph"/>\r | |
52 | </xs:sequence>\r | |
53 | <xs:attributeGroup ref="BootModeAttributes"/>\r | |
54 | </xs:complexType>\r | |
55 | </xs:element>\r | |
56 | </xs:sequence>\r | |
57 | </xs:complexType>\r | |
58 | </xs:element>\r | |
59 | <xs:element name="BuildOptions">\r | |
60 | <xs:annotation>\r | |
61 | <xs:documentation xml:lang="en">BuildOptions is valid for FPD files.</xs:documentation>\r | |
62 | </xs:annotation>\r | |
63 | <xs:complexType>\r | |
64 | <xs:sequence>\r | |
65 | <xs:element minOccurs="0" maxOccurs="1" ref="UserDefinedAntTasks"/>\r | |
66 | <xs:element minOccurs="0" maxOccurs="1" ref="Options"/>\r | |
67 | <xs:element minOccurs="0" maxOccurs="unbounded" ref="UserExtensions"/>\r | |
68 | <!-- The following sections are legacy and will be removed -->\r | |
92fb4401 | 69 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Ffs">\r |
70 | <xs:complexType>\r | |
878ddf1f | 71 | <xs:sequence>\r |
92fb4401 | 72 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Attribute">\r |
73 | <xs:complexType>\r | |
74 | <xs:attribute name="Name" type="C_NameType"/>\r | |
ccb4cab3 | 75 | <xs:attribute name="Value" type="xs:string"/>\r |
92fb4401 | 76 | </xs:complexType>\r |
77 | </xs:element>\r | |
78 | <xs:element minOccurs="0" maxOccurs="1" name="Sections">\r | |
79 | <xs:complexType>\r | |
80 | <xs:sequence minOccurs="1">\r | |
81 | <xs:element name="Section" minOccurs="0" maxOccurs="unbounded">\r | |
82 | <xs:complexType>\r | |
83 | <xs:sequence>\r | |
84 | <xs:element ref=" Filenames " minOccurs="0"/>\r | |
85 | <xs:element name="Args" type=" ArgsType " minOccurs="0"/>\r | |
86 | <xs:element name="OutFile" type=" FileNameConvention " minOccurs="0"/>\r | |
87 | <xs:element name="OutputFileExtension" type=" xs:string " minOccurs="0"/>\r | |
88 | <xs:element name="ToolName" type=" ToolType " minOccurs="0"/>\r | |
89 | </xs:sequence>\r | |
90 | <xs:attributeGroup ref=" SectionsAttributes "/>\r | |
91 | </xs:complexType>\r | |
878ddf1f | 92 | </xs:element>\r |
92fb4401 | 93 | <xs:element name="Sections" minOccurs="0" maxOccurs="unbounded">\r |
94 | <xs:complexType>\r | |
878ddf1f | 95 | <xs:sequence minOccurs="1" maxOccurs="unbounded">\r |
92fb4401 | 96 | <xs:element name="Section">\r |
97 | <xs:complexType>\r | |
98 | <xs:sequence>\r | |
99 | <xs:element ref=" Filenames " minOccurs="0"/>\r | |
100 | <xs:element name="Args" type=" ArgsType " minOccurs="0"/>\r | |
101 | <xs:element name="OutFile" type=" FileNameConvention " minOccurs="0"/>\r | |
102 | <xs:element name="OutputFileExtension" type=" xs:string " minOccurs="0"/>\r | |
103 | <xs:element name="ToolName" type=" ToolType " minOccurs="0"/>\r | |
104 | </xs:sequence>\r | |
105 | <xs:attributeGroup ref="SectionsAttributes"/>\r | |
106 | </xs:complexType>\r | |
107 | </xs:element>\r | |
108 | </xs:sequence>\r | |
109 | <xs:attributeGroup ref=" SectionsAttributes "/>\r | |
110 | </xs:complexType>\r | |
111 | </xs:element>\r | |
112 | </xs:sequence>\r | |
113 | <xs:attributeGroup ref=" SectionsAttributes "/>\r | |
114 | </xs:complexType>\r | |
115 | </xs:element>\r | |
116 | </xs:sequence>\r | |
117 | <xs:attribute name="FfsKey" type="KeywordType" use="optional"/>\r | |
118 | </xs:complexType>\r | |
119 | </xs:element>\r | |
92fb4401 | 120 | </xs:sequence>\r |
121 | </xs:complexType>\r | |
122 | </xs:element>\r | |
123 | <xs:element name="Copyright" type="Paragraph"/>\r | |
124 | <xs:element name="DataHubs">\r | |
125 | <xs:annotation>\r | |
126 | <xs:documentation xml:lang="en">This is a list of DataHubRecord elements.</xs:documentation>\r | |
127 | </xs:annotation>\r | |
128 | <xs:complexType>\r | |
129 | <xs:sequence>\r | |
130 | <xs:element minOccurs="1" maxOccurs="unbounded" name="DataHubRecord">\r | |
131 | <xs:complexType>\r | |
878ddf1f | 132 | <xs:sequence>\r |
92fb4401 | 133 | <xs:element minOccurs="1" maxOccurs="1" name="DataHubCName" type="C_NameType"/>\r |
134 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
135 | </xs:sequence>\r | |
136 | <xs:attributeGroup ref="DataHubAttributes"/>\r | |
137 | </xs:complexType>\r | |
138 | </xs:element>\r | |
139 | </xs:sequence>\r | |
140 | </xs:complexType>\r | |
141 | </xs:element>\r | |
142 | <xs:element name="DefaultValue">\r | |
143 | <xs:annotation>\r | |
144 | <xs:documentation xml:lang="en">The default setting of a PCD entry.</xs:documentation>\r | |
145 | </xs:annotation>\r | |
146 | <xs:complexType>\r | |
147 | <xs:simpleContent>\r | |
148 | <xs:extension base="xs:normalizedString"/>\r | |
149 | </xs:simpleContent>\r | |
150 | </xs:complexType>\r | |
151 | </xs:element>\r | |
152 | <xs:element name="Description" type="Paragraph">\r | |
153 | <xs:annotation>\r | |
154 | <xs:documentation xml:lang="en">This section is required for new modules and libraries and must contain more information than the Abstract.</xs:documentation>\r | |
155 | </xs:annotation>\r | |
156 | </xs:element>\r | |
157 | <xs:element name="DynamicPcdBuildDefinitions">\r | |
158 | <xs:annotation>\r | |
159 | <xs:documentation xml:lang="en">Child of Framework Platform Description (FPD)</xs:documentation>\r | |
160 | <xs:documentation xml:lang="en">FPD uses this PCD information for Dynamic PCDs Only</xs:documentation>\r | |
161 | </xs:annotation>\r | |
162 | <xs:complexType>\r | |
163 | <xs:sequence>\r | |
164 | <xs:element minOccurs="1" maxOccurs="unbounded" name="PcdBuildData">\r | |
165 | <xs:complexType>\r | |
878ddf1f | 166 | <xs:sequence>\r |
92fb4401 | 167 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
168 | <xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>\r | |
169 | <xs:element minOccurs="1" maxOccurs="1" name="TokenSpaceGuidCName" type="C_NameType"/>\r | |
170 | <xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>\r | |
171 | <xs:element minOccurs="0" maxOccurs="1" name="MaxDatumSize" type="DatumSizeLimitation"/>\r | |
172 | <xs:element minOccurs="1" maxOccurs="unbounded" name="SkuInfo">\r | |
173 | <xs:complexType>\r | |
174 | <xs:sequence>\r | |
175 | <xs:element minOccurs="1" maxOccurs="1" name="SkuId" type="xs:nonNegativeInteger"/>\r | |
176 | <xs:choice>\r | |
177 | <xs:group minOccurs="0" maxOccurs="1" ref="HiiEnable"/>\r | |
178 | <xs:group minOccurs="0" maxOccurs="1" ref="VpdEnable"/>\r | |
179 | <xs:group minOccurs="0" maxOccurs="1" ref="DefaultGroup"/>\r | |
180 | </xs:choice>\r | |
181 | </xs:sequence>\r | |
182 | </xs:complexType>\r | |
183 | </xs:element>\r | |
184 | </xs:sequence>\r | |
185 | <xs:attributeGroup ref="DynamicBuildPcdAttributes"/>\r | |
186 | </xs:complexType>\r | |
187 | </xs:element>\r | |
188 | </xs:sequence>\r | |
189 | </xs:complexType>\r | |
190 | </xs:element>\r | |
191 | <xs:element name="Events">\r | |
192 | <xs:annotation>\r | |
193 | <xs:documentation xml:lang="en">This is a list of MSA Events</xs:documentation>\r | |
194 | </xs:annotation>\r | |
195 | <xs:complexType>\r | |
196 | <xs:sequence>\r | |
197 | <xs:element minOccurs="0" maxOccurs="1" name="CreateEvents">\r | |
198 | <xs:complexType>\r | |
0850ca3b | 199 | <xs:sequence>\r |
92fb4401 | 200 | <xs:element minOccurs="1" maxOccurs="unbounded" name="EventTypes">\r |
201 | <xs:complexType>\r | |
202 | <xs:sequence>\r | |
203 | <xs:element minOccurs="1" maxOccurs="1" name="EventType" type="EventTypes"/>\r | |
204 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
205 | </xs:sequence>\r | |
206 | <xs:attributeGroup ref="EventAttributes"/>\r | |
207 | </xs:complexType>\r | |
208 | </xs:element>\r | |
209 | </xs:sequence>\r | |
210 | </xs:complexType>\r | |
211 | </xs:element>\r | |
212 | <xs:element minOccurs="0" maxOccurs="1" name="SignalEvents">\r | |
213 | <xs:annotation>\r | |
214 | <xs:documentation xml:lang="en">Module has an event that is waiting to be signaled. Event is named by GUID.</xs:documentation>\r | |
215 | </xs:annotation>\r | |
216 | <xs:complexType>\r | |
c12c6c7d | 217 | <xs:sequence>\r |
92fb4401 | 218 | <xs:element minOccurs="1" maxOccurs="unbounded" name="EventTypes">\r |
219 | <xs:complexType>\r | |
220 | <xs:sequence>\r | |
221 | <xs:element minOccurs="1" maxOccurs="1" name="EventType" type="EventTypes"/>\r | |
222 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
223 | </xs:sequence>\r | |
224 | <xs:attributeGroup ref="EventAttributes"/>\r | |
225 | </xs:complexType>\r | |
226 | </xs:element>\r | |
227 | </xs:sequence>\r | |
228 | </xs:complexType>\r | |
229 | </xs:element>\r | |
230 | </xs:sequence>\r | |
231 | </xs:complexType>\r | |
232 | </xs:element>\r | |
233 | <xs:element name="Externs">\r | |
234 | <xs:annotation>\r | |
235 | <xs:documentation xml:lang="en">This is a child of MSA files.</xs:documentation>\r | |
236 | </xs:annotation>\r | |
237 | <xs:complexType>\r | |
238 | <xs:sequence minOccurs="1">\r | |
239 | <xs:element minOccurs="0" maxOccurs="1" name="PcdIsDriver" type="PcdDriverTypes"/>\r | |
9c091616 | 240 | <xs:element minOccurs="0" maxOccurs="1" name="TianoR8FlashMap_h" type="xs:boolean" default="false"/>\r |
92fb4401 | 241 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Specification" type="Sentence"/>\r |
242 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Extern">\r | |
243 | <xs:complexType>\r | |
5529d1f8 | 244 | <xs:choice minOccurs="1" maxOccurs="1">\r |
245 | <xs:sequence minOccurs="0" maxOccurs="1">\r | |
92fb4401 | 246 | <xs:annotation>\r |
247 | <xs:documentation xml:lang="en">Driver Module</xs:documentation>\r | |
248 | </xs:annotation>\r | |
249 | <xs:element minOccurs="0" maxOccurs="1" name="ModuleEntryPoint" type="C_NameType"/>\r | |
250 | <xs:element minOccurs="0" maxOccurs="1" name="ModuleUnloadImage" type="C_NameType"/>\r | |
251 | </xs:sequence>\r | |
5529d1f8 | 252 | <xs:sequence minOccurs="0" maxOccurs="1">\r |
92fb4401 | 253 | <xs:annotation>\r |
254 | <xs:documentation xml:lang="en">Library Module</xs:documentation>\r | |
255 | </xs:annotation>\r | |
256 | <xs:element minOccurs="0" maxOccurs="1" name="Constructor" type="C_NameType"/>\r | |
257 | <xs:element minOccurs="0" maxOccurs="1" name="Destructor" type="C_NameType"/>\r | |
258 | </xs:sequence>\r | |
5529d1f8 | 259 | <xs:sequence minOccurs="0" maxOccurs="1">\r |
92fb4401 | 260 | <xs:annotation>\r |
261 | <xs:documentation xml:lang="en">Allow multiple entries for DriverBinding, ComponentName, DriverConfig and DriverDiag elements. For ComponentName, DriverConfig and/or DriverDiag - you must have a 1:1 mapping to DriverBinding if the element is defined.</xs:documentation>\r | |
262 | <xs:documentation xml:lang="en">Permit User Defined Extern Tags</xs:documentation>\r | |
263 | </xs:annotation>\r | |
5529d1f8 | 264 | <xs:element minOccurs="1" maxOccurs="1" name="DriverBinding" type="C_NameType"/>\r |
92fb4401 | 265 | <xs:element minOccurs="0" maxOccurs="1" name="ComponentName" type="C_NameType"/>\r |
266 | <xs:element minOccurs="0" maxOccurs="1" name="DriverConfig" type="C_NameType"/>\r | |
267 | <xs:element minOccurs="0" maxOccurs="1" name="DriverDiag" type="C_NameType"/>\r | |
268 | </xs:sequence>\r | |
5529d1f8 | 269 | <xs:sequence minOccurs="0" maxOccurs="1">\r |
92fb4401 | 270 | <xs:annotation>\r |
271 | <xs:documentation xml:lang="en"> Module Call Backs</xs:documentation>\r | |
272 | </xs:annotation>\r | |
273 | <xs:element minOccurs="0" maxOccurs="1" name="SetVirtualAddressMapCallBack" type="C_NameType"/>\r | |
274 | <xs:element minOccurs="0" maxOccurs="1" name="ExitBootServicesCallBack" type="C_NameType"/>\r | |
275 | </xs:sequence>\r | |
276 | </xs:choice>\r | |
277 | <xs:attributeGroup ref="ExternAttributes"/>\r | |
278 | </xs:complexType>\r | |
279 | </xs:element>\r | |
280 | </xs:sequence>\r | |
281 | </xs:complexType>\r | |
282 | </xs:element>\r | |
283 | <xs:element name="Filename">\r | |
284 | <xs:annotation>\r | |
285 | <xs:documentation xml:lang="en">Describe the valid content of a filename This should extend PathAndFilename - Variable names not allowed here!</xs:documentation>\r | |
286 | </xs:annotation>\r | |
287 | <xs:complexType>\r | |
288 | <xs:simpleContent>\r | |
289 | <xs:extension base="PathAndFilename">\r | |
290 | <xs:attributeGroup ref="FilenameAttributes"/>\r | |
291 | </xs:extension>\r | |
292 | </xs:simpleContent>\r | |
293 | </xs:complexType>\r | |
294 | </xs:element>\r | |
295 | <xs:element name="Filenames">\r | |
296 | <xs:annotation>\r | |
297 | <xs:documentation xml:lang="en">This is a list of Filenames</xs:documentation>\r | |
298 | </xs:annotation>\r | |
299 | <xs:complexType>\r | |
300 | <xs:sequence minOccurs="1">\r | |
301 | <xs:element minOccurs="0" maxOccurs="unbounded" ref="Filename"/>\r | |
302 | </xs:sequence>\r | |
303 | </xs:complexType>\r | |
304 | </xs:element>\r | |
305 | <xs:element name="GuidDeclarations">\r | |
306 | <xs:annotation>\r | |
307 | <xs:documentation xml:lang="en">This is a child of PackageSurfaceArea (SPD) </xs:documentation>\r | |
308 | </xs:annotation>\r | |
309 | <xs:complexType>\r | |
310 | <xs:sequence>\r | |
311 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Entry">\r | |
312 | <xs:complexType>\r | |
b1d9f2a3 | 313 | <xs:sequence>\r |
92fb4401 | 314 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
315 | <xs:element minOccurs="1" maxOccurs="1" name="GuidValue" type="GuidType"/>\r | |
316 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
317 | </xs:sequence>\r | |
318 | <xs:attributeGroup ref="GuidDeclarationAttributes"/>\r | |
319 | </xs:complexType>\r | |
320 | </xs:element>\r | |
321 | </xs:sequence>\r | |
322 | </xs:complexType>\r | |
323 | </xs:element>\r | |
324 | <xs:element name="Guids">\r | |
325 | <xs:complexType>\r | |
326 | <xs:sequence>\r | |
327 | <xs:element minOccurs="1" maxOccurs="unbounded" name="GuidCNames">\r | |
328 | <xs:annotation>\r | |
329 | <xs:documentation xml:lang="en">Describe the valid content of a GUID element in and MSA file.</xs:documentation>\r | |
330 | </xs:annotation>\r | |
331 | <xs:complexType>\r | |
c12c6c7d | 332 | <xs:sequence>\r |
92fb4401 | 333 | <xs:element minOccurs="1" maxOccurs="1" name="GuidCName" type="C_NameType"/>\r |
334 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
335 | </xs:sequence>\r | |
336 | <xs:attributeGroup ref="GuidAttributes"/>\r | |
337 | </xs:complexType>\r | |
338 | </xs:element>\r | |
339 | </xs:sequence>\r | |
340 | </xs:complexType>\r | |
341 | </xs:element>\r | |
342 | <xs:element name="HiiPackages">\r | |
343 | <xs:annotation>\r | |
344 | <xs:documentation xml:lang="en">Describe the list of a HiiPackage elements</xs:documentation>\r | |
345 | </xs:annotation>\r | |
346 | <xs:complexType>\r | |
347 | <xs:sequence>\r | |
348 | <xs:element minOccurs="1" maxOccurs="unbounded" name="HiiPackage">\r | |
349 | <xs:complexType>\r | |
c12c6c7d | 350 | <xs:sequence>\r |
92fb4401 | 351 | <xs:element minOccurs="1" maxOccurs="1" name="HiiCName" type="C_NameType"/>\r |
352 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
353 | </xs:sequence>\r | |
354 | <xs:attributeGroup ref="HiiPackageAttributes"/>\r | |
355 | </xs:complexType>\r | |
356 | </xs:element>\r | |
357 | </xs:sequence>\r | |
358 | </xs:complexType>\r | |
359 | </xs:element>\r | |
360 | <xs:element name="Hobs">\r | |
361 | <xs:complexType>\r | |
362 | <xs:sequence>\r | |
363 | <xs:element minOccurs="1" maxOccurs="unbounded" name="HobTypes">\r | |
364 | <xs:complexType>\r | |
b1d9f2a3 | 365 | <xs:sequence>\r |
92fb4401 | 366 | <xs:element minOccurs="1" maxOccurs="1" name="HobType" type="HobTypes"/>\r |
367 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
368 | </xs:sequence>\r | |
369 | <xs:attributeGroup ref="HobAttributes"/>\r | |
370 | </xs:complexType>\r | |
371 | </xs:element>\r | |
372 | </xs:sequence>\r | |
373 | </xs:complexType>\r | |
374 | </xs:element>\r | |
375 | <xs:element name="IncludeHeader">\r | |
376 | <xs:complexType>\r | |
377 | <xs:simpleContent>\r | |
378 | <xs:extension base="PathAndFilename">\r | |
379 | <xs:attributeGroup ref="IncludeHeaderAttributes"/>\r | |
380 | </xs:extension>\r | |
381 | </xs:simpleContent>\r | |
382 | </xs:complexType>\r | |
383 | </xs:element>\r | |
384 | <xs:element name="IndustryStdIncludes">\r | |
385 | <xs:complexType>\r | |
386 | <xs:sequence>\r | |
387 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="IndustryStdHeader"/>\r | |
388 | </xs:sequence>\r | |
389 | </xs:complexType>\r | |
390 | </xs:element>\r | |
391 | <xs:element name="IndustryStdHeader">\r | |
392 | <xs:complexType>\r | |
393 | <xs:sequence>\r | |
394 | <xs:element minOccurs="1" maxOccurs="1" name="IncludeHeader" type="PathAndFilename"/>\r | |
395 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
396 | </xs:sequence>\r | |
397 | <xs:attributeGroup ref="IndustryStdHeaderAttributes"/>\r | |
398 | </xs:complexType>\r | |
399 | </xs:element>\r | |
400 | <xs:element name="Libraries">\r | |
401 | <xs:annotation>\r | |
402 | <xs:documentation xml:lang="en">Different (Module) Instances of Libraries used ONLY in FPD Files.</xs:documentation>\r | |
403 | </xs:annotation>\r | |
404 | <xs:complexType>\r | |
405 | <xs:sequence>\r | |
406 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Instance">\r | |
407 | <xs:complexType>\r | |
408 | <xs:attributeGroup ref="LibraryAttributes"/>\r | |
409 | </xs:complexType>\r | |
410 | </xs:element>\r | |
411 | </xs:sequence>\r | |
412 | </xs:complexType>\r | |
413 | </xs:element>\r | |
414 | <xs:element name="LibraryClass">\r | |
415 | <xs:annotation>\r | |
416 | <xs:documentation xml:lang="en">Used in MSA files. This defines what class of library is being supported = produced (library module) or consumed by a module.</xs:documentation>\r | |
417 | </xs:annotation>\r | |
418 | <xs:complexType>\r | |
419 | <xs:sequence>\r | |
420 | <xs:element minOccurs="1" maxOccurs="1" name="Keyword" type="KeywordType"/>\r | |
421 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
422 | </xs:sequence>\r | |
423 | <xs:attributeGroup ref="LibraryClassAttributes"/>\r | |
424 | </xs:complexType>\r | |
425 | </xs:element>\r | |
426 | <!-- LAH This is SPD LibraryClassDeclarations FINAL version -->\r | |
427 | <xs:element name="LibraryClassDeclarations">\r | |
428 | <xs:complexType>\r | |
429 | <xs:sequence>\r | |
430 | <xs:element minOccurs="1" maxOccurs="unbounded" name="LibraryClass">\r | |
431 | <xs:complexType>\r | |
878ddf1f | 432 | <xs:sequence>\r |
92fb4401 | 433 | <xs:element minOccurs="1" maxOccurs="1" name="IncludeHeader" type="PathAndFilename"/>\r |
434 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
435 | </xs:sequence>\r | |
436 | <xs:attributeGroup ref="LibraryClassDeclarationAttributes"/>\r | |
437 | </xs:complexType>\r | |
438 | </xs:element>\r | |
439 | </xs:sequence>\r | |
440 | </xs:complexType>\r | |
441 | </xs:element>\r | |
442 | <xs:element name="LibraryClassDefinitions">\r | |
443 | <xs:annotation>\r | |
444 | <xs:documentation xml:lang="en">This section defines what Classes of Library that this library supports. A Library may belong to multiple different library classes.</xs:documentation>\r | |
445 | </xs:annotation>\r | |
446 | <xs:complexType>\r | |
447 | <xs:sequence>\r | |
448 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="LibraryClass"/>\r | |
449 | </xs:sequence>\r | |
450 | </xs:complexType>\r | |
451 | </xs:element>\r | |
452 | <xs:element name="License">\r | |
453 | <xs:complexType>\r | |
454 | <xs:simpleContent>\r | |
455 | <xs:extension base="Paragraph">\r | |
456 | <xs:attribute name="URL" type="xs:anyURI" use="optional"/>\r | |
457 | </xs:extension>\r | |
458 | </xs:simpleContent>\r | |
459 | </xs:complexType>\r | |
460 | </xs:element>\r | |
461 | <xs:element name="ModuleBuildOptions">\r | |
462 | <xs:complexType>\r | |
463 | <xs:sequence>\r | |
9ee538d4 | 464 | <xs:element minOccurs="0" maxOccurs="1" ref="Options"/>\r |
465 | <xs:element minOccurs="0" maxOccurs="unbounded" ref="UserExtensions"/>\r | |
92fb4401 | 466 | </xs:sequence>\r |
467 | </xs:complexType>\r | |
468 | </xs:element>\r | |
469 | <xs:element name="ModuleSaBuildOptions">\r | |
470 | <xs:complexType>\r | |
471 | <xs:sequence>\r | |
700c2b96 | 472 | <xs:element minOccurs="0" maxOccurs="1" name="FvBinding" type="KeywordList"/>\r |
92fb4401 | 473 | <!-- The FfsFileNameGuid allows the Platform Integrator to specify a GUID for the FFS File Name GUID -->\r |
474 | <xs:element minOccurs="0" maxOccurs="1" name="FfsFileNameGuid" type="GuidType"/>\r | |
475 | <!-- If binding is specified, you MUST specify the FfsFormatKey -->\r | |
476 | <xs:element minOccurs="0" maxOccurs="1" name="FfsFormatKey" type="KeywordType"/>\r | |
477 | <xs:element minOccurs="0" maxOccurs="1" ref="Options"/>\r | |
478 | </xs:sequence>\r | |
479 | </xs:complexType>\r | |
480 | </xs:element>\r | |
481 | <xs:element name="ModuleDefinitions">\r | |
482 | <xs:complexType>\r | |
483 | <xs:sequence>\r | |
484 | <xs:element minOccurs="1" maxOccurs="1" name="SupportedArchitectures" type="ArchListType"/>\r | |
485 | <xs:element minOccurs="1" maxOccurs="1" name="BinaryModule" type="xs:boolean" default="false"/>\r | |
486 | <xs:element minOccurs="1" maxOccurs="1" name="OutputFileBasename" type="FileNameConvention"/>\r | |
487 | <xs:element minOccurs="0" maxOccurs="1" name="ClonedFrom">\r | |
488 | <xs:complexType>\r | |
e4ecc06e | 489 | <xs:sequence>\r |
92fb4401 | 490 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Cloned">\r |
491 | <xs:complexType>\r | |
492 | <xs:sequence>\r | |
493 | <xs:element minOccurs="1" maxOccurs="1" name="PackageGuid" type="GuidType"/>\r | |
494 | <xs:element minOccurs="1" maxOccurs="1" name="PackageVersion" type="VersionDataType"/>\r | |
495 | <xs:element minOccurs="1" maxOccurs="1" name="ModuleGuid" type="GuidType"/>\r | |
496 | <xs:element minOccurs="1" maxOccurs="1" name="ModuleVersion" type="VersionDataType"/>\r | |
497 | </xs:sequence>\r | |
9ede7fad | 498 | <!-- The Id is a number used to track heritage the first entry will be 0 and increment from then on. -->\r |
700c2b96 | 499 | <xs:attribute name="Id" type="xs:nonNegativeInteger" use="required"/>\r |
9ede7fad | 500 | <!-- If the original module was installed from a FAR, track the FAR it came from. -->\r |
501 | <xs:attribute name="FarGuid" type="GuidType" use="optional"/>\r | |
92fb4401 | 502 | </xs:complexType>\r |
503 | </xs:element>\r | |
504 | </xs:sequence>\r | |
505 | </xs:complexType>\r | |
506 | </xs:element>\r | |
507 | </xs:sequence>\r | |
508 | </xs:complexType>\r | |
509 | </xs:element>\r | |
510 | <xs:element name="ModuleType" type="ModuleTypeDef">\r | |
511 | <xs:annotation>\r | |
512 | <xs:documentation xml:lang="en">Describe the valid EFI Phase that the Module is designed to execute under.</xs:documentation>\r | |
513 | </xs:annotation>\r | |
514 | </xs:element>\r | |
515 | <!-- Use in Final -->\r | |
516 | <xs:element name="MsaFiles">\r | |
517 | <xs:annotation>\r | |
518 | <xs:documentation xml:lang="en">MsaFiles is a child of Surface Area Package Description (SPD) files</xs:documentation>\r | |
519 | </xs:annotation>\r | |
520 | <xs:complexType>\r | |
521 | <xs:sequence>\r | |
522 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Filename" type="PathAndFilename"/>\r | |
523 | </xs:sequence>\r | |
524 | </xs:complexType>\r | |
525 | </xs:element>\r | |
526 | <xs:element name="Options">\r | |
527 | <xs:complexType>\r | |
528 | <xs:sequence>\r | |
529 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="Option"/>\r | |
530 | </xs:sequence>\r | |
531 | </xs:complexType>\r | |
532 | </xs:element>\r | |
11f50334 | 533 | <xs:element name="NonProcessedFiles">\r |
534 | <xs:complexType>\r | |
535 | <xs:sequence minOccurs="1" maxOccurs="unbounded">\r | |
536 | <xs:element name="Filename" type="PathAndFilename"/>\r | |
537 | </xs:sequence>\r | |
538 | </xs:complexType>\r | |
539 | </xs:element>\r | |
92fb4401 | 540 | <xs:element name="Option">\r |
541 | <!-- This element is used to store flags from the Tools -->\r | |
542 | <xs:complexType>\r | |
543 | <xs:simpleContent>\r | |
544 | <xs:extension base="xs:normalizedString">\r | |
545 | <xs:attributeGroup ref="OptionAttributes"/>\r | |
546 | </xs:extension>\r | |
547 | </xs:simpleContent>\r | |
548 | </xs:complexType>\r | |
549 | </xs:element>\r | |
550 | <xs:element name="PackageDefinitions">\r | |
551 | <xs:complexType>\r | |
552 | <xs:sequence>\r | |
553 | <xs:element minOccurs="1" maxOccurs="1" name="ReadOnly" type="xs:boolean" default="false"/>\r | |
554 | <xs:element minOccurs="1" maxOccurs="1" name="RePackage" type="xs:boolean" default="false"/>\r | |
555 | <xs:element minOccurs="0" maxOccurs="1" name="ClonedFrom">\r | |
556 | <xs:complexType>\r | |
557 | <xs:sequence>\r | |
558 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Cloned">\r | |
559 | <xs:complexType>\r | |
560 | <xs:sequence>\r | |
561 | <xs:element minOccurs="1" maxOccurs="1" name="PackageGuid" type="GuidType"/>\r | |
562 | <xs:element minOccurs="1" maxOccurs="1" name="PackageVersion" type="VersionDataType"/>\r | |
563 | </xs:sequence>\r | |
9ede7fad | 564 | <!-- The Id is a number used to track heritage the first entry will be 0 and increment from then on. -->\r |
700c2b96 | 565 | <xs:attribute name="Id" type="xs:nonNegativeInteger" use="required"/>\r |
9ede7fad | 566 | <!-- If the original Package was installed from a FAR, track the FAR it came from. -->\r |
567 | <xs:attribute name="FarGuid" type="GuidType" use="optional"/>\r | |
92fb4401 | 568 | </xs:complexType>\r |
569 | </xs:element>\r | |
570 | </xs:sequence>\r | |
571 | </xs:complexType>\r | |
572 | </xs:element>\r | |
573 | </xs:sequence>\r | |
574 | </xs:complexType>\r | |
575 | </xs:element>\r | |
576 | <xs:element name="PackageDependencies">\r | |
577 | <xs:annotation>\r | |
578 | <xs:documentation xml:lang="en">This tag is used in the Module Surface Area Description File (MSA) to track package dependencies for a module.</xs:documentation>\r | |
579 | <xs:documentation xml:lang="en">Attributes to PackageName include Required: Usage PackageGuid PackageVesion, Optional: FeatureFlag</xs:documentation>\r | |
580 | </xs:annotation>\r | |
581 | <xs:complexType>\r | |
582 | <xs:sequence>\r | |
583 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Package">\r | |
584 | <xs:complexType>\r | |
585 | <xs:attributeGroup ref="PackageAttributes"/>\r | |
586 | </xs:complexType>\r | |
587 | </xs:element>\r | |
588 | </xs:sequence>\r | |
589 | </xs:complexType>\r | |
590 | </xs:element>\r | |
591 | <xs:element name="PackageHeaders">\r | |
592 | <xs:annotation>\r | |
593 | <xs:documentation xml:lang="en">PackageHeaders is a child of PackageSurfaceArea (SPD) </xs:documentation>\r | |
594 | </xs:annotation>\r | |
595 | <xs:complexType>\r | |
596 | <xs:sequence>\r | |
597 | <xs:element minOccurs="1" maxOccurs="unbounded" name="IncludePkgHeader">\r | |
598 | <xs:complexType>\r | |
878ddf1f | 599 | <xs:simpleContent>\r |
92fb4401 | 600 | <xs:extension base="PathAndFilename">\r |
601 | <xs:attributeGroup ref="PackageHeaderAttributes"/>\r | |
602 | </xs:extension>\r | |
878ddf1f | 603 | </xs:simpleContent>\r |
92fb4401 | 604 | </xs:complexType>\r |
605 | </xs:element>\r | |
606 | </xs:sequence>\r | |
607 | </xs:complexType>\r | |
608 | </xs:element>\r | |
609 | <xs:element name="PackageList">\r | |
610 | <!-- Valid for DB usage only! -->\r | |
611 | <xs:annotation>\r | |
612 | <xs:documentation xml:lang="en">This tag is used in the Framework Package Database File to track all packages (SPD files) installed in a workspace. (Database)</xs:documentation>\r | |
613 | </xs:annotation>\r | |
614 | <xs:complexType>\r | |
615 | <xs:sequence>\r | |
616 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Filename" type="DbPathAndFilename"/>\r | |
617 | </xs:sequence>\r | |
618 | </xs:complexType>\r | |
619 | </xs:element>\r | |
620 | <!-- PcdBuildDefinition is a child of FPD ModuleSA element for FIXED_AT_BUILD, PATCHABLE_IN_MODULE, and FEATURE_FLAG PCDS Only! -->\r | |
621 | <xs:element name="PcdBuildDefinition">\r | |
622 | <xs:annotation>\r | |
623 | <xs:documentation xml:lang="en">Child of FPD ModuleSA element for FIXED_AT_BUILD, PATCHABLE_IN_MODULE, and FEATURE_FLAG PCDS Only!</xs:documentation>\r | |
624 | </xs:annotation>\r | |
625 | <xs:complexType>\r | |
626 | <xs:sequence>\r | |
627 | <xs:element minOccurs="1" maxOccurs="unbounded" name="PcdData">\r | |
628 | <xs:complexType>\r | |
f0147869 | 629 | <xs:sequence>\r |
92fb4401 | 630 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
631 | <xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>\r | |
632 | <xs:element minOccurs="1" maxOccurs="1" name="TokenSpaceGuidCName" type="C_NameType"/>\r | |
633 | <xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>\r | |
634 | <!-- MaxDatumSize is only required if the DatumType is VOID* -->\r | |
635 | <xs:element minOccurs="0" maxOccurs="1" name="MaxDatumSize" type="DatumSizeLimitation"/>\r | |
636 | <xs:element minOccurs="0" maxOccurs="1" name="Value" type="DefaultValueType"/>\r | |
637 | </xs:sequence>\r | |
638 | <xs:attributeGroup ref="PcdBuildDefinitionAttributes"/>\r | |
639 | </xs:complexType>\r | |
640 | </xs:element>\r | |
641 | </xs:sequence>\r | |
642 | </xs:complexType>\r | |
643 | </xs:element>\r | |
644 | <xs:group name="DefaultGroup">\r | |
645 | <xs:sequence>\r | |
646 | <xs:element minOccurs="1" maxOccurs="1" name="Value" type="DefaultValueType"/>\r | |
647 | </xs:sequence>\r | |
648 | </xs:group>\r | |
649 | <xs:group name="HiiEnable">\r | |
650 | <xs:annotation>\r | |
651 | <xs:documentation xml:lang="en">If HiiEnable group is specified, then HiiEnable is default true</xs:documentation>\r | |
652 | </xs:annotation>\r | |
653 | <xs:sequence>\r | |
654 | <xs:element minOccurs="1" maxOccurs="1" name="VariableName" type="HexWordArrayType"/>\r | |
655 | <xs:element minOccurs="1" maxOccurs="1" name="VariableGuid" type="C_NameType"/>\r | |
656 | <xs:element minOccurs="1" maxOccurs="1" name="VariableOffset" type="Hex64BitDataType"/>\r | |
657 | <xs:element minOccurs="1" maxOccurs="1" name="HiiDefaultValue" type="DefaultValueType"/>\r | |
658 | </xs:sequence>\r | |
659 | </xs:group>\r | |
660 | <xs:group name="VpdEnable">\r | |
661 | <xs:annotation>\r | |
662 | <xs:documentation xml:lang="en">If VpdEnable group is specified, then VpdEnable is default true</xs:documentation>\r | |
663 | </xs:annotation>\r | |
664 | <xs:sequence>\r | |
665 | <xs:element minOccurs="1" maxOccurs="1" name="VpdOffset" type="Hex64BitDataType"/>\r | |
666 | </xs:sequence>\r | |
667 | </xs:group>\r | |
668 | <xs:element name="PcdCoded">\r | |
669 | <xs:annotation>\r | |
670 | <xs:documentation xml:lang="en">Child of Module Surface Area Description (MSA)</xs:documentation>\r | |
671 | </xs:annotation>\r | |
672 | <xs:complexType>\r | |
673 | <xs:sequence>\r | |
674 | <xs:element minOccurs="1" maxOccurs="unbounded" name="PcdEntry">\r | |
675 | <xs:complexType>\r | |
f0147869 | 676 | <xs:sequence>\r |
92fb4401 | 677 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
678 | <xs:element minOccurs="1" maxOccurs="1" name="TokenSpaceGuidCName" type="C_NameType"/>\r | |
679 | <xs:element minOccurs="0" maxOccurs="1" name="DefaultValue" type="DefaultValueType"/>\r | |
680 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
681 | </xs:sequence>\r | |
682 | <!-- MSA file declares a single usage, and must match one of the entries in what the SPD file declares as the set of possible Item Types. -->\r | |
683 | <xs:attributeGroup ref="PcdCodedAttributes"/>\r | |
684 | </xs:complexType>\r | |
685 | </xs:element>\r | |
686 | </xs:sequence>\r | |
687 | </xs:complexType>\r | |
688 | </xs:element>\r | |
689 | <!-- LAH This is PcdDeclarations FINAL version -->\r | |
690 | <xs:element name="PcdDeclarations">\r | |
691 | <xs:annotation>\r | |
692 | <xs:documentation xml:lang="en">PcdDeclaratins is a child of Package Surface Area Description (SPD)</xs:documentation>\r | |
693 | </xs:annotation>\r | |
694 | <xs:complexType>\r | |
695 | <xs:sequence minOccurs="1">\r | |
696 | <xs:element maxOccurs="unbounded" name="PcdEntry">\r | |
697 | <xs:complexType>\r | |
878ddf1f | 698 | <xs:sequence>\r |
92fb4401 | 699 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
700 | <xs:element minOccurs="1" maxOccurs="1" name="Token" type="TokenDataType"/>\r | |
701 | <xs:element minOccurs="1" maxOccurs="1" name="TokenSpaceGuidCName" type="C_NameType"/>\r | |
702 | <xs:element minOccurs="1" maxOccurs="1" name="DatumType" type="PcdDataTypes"/>\r | |
703 | <xs:element minOccurs="1" maxOccurs="1" name="ValidUsage" type="PcdListType"/>\r | |
704 | <xs:element minOccurs="0" maxOccurs="1" name="DefaultValue" type="DefaultValueType"/>\r | |
705 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
706 | </xs:sequence>\r | |
707 | <xs:attributeGroup ref="PcdDeclarationAttributes"/>\r | |
708 | </xs:complexType>\r | |
709 | </xs:element>\r | |
710 | </xs:sequence>\r | |
711 | </xs:complexType>\r | |
712 | </xs:element>\r | |
713 | <xs:element name="FarList">\r | |
714 | <!-- Valid for DB usage only! -->\r | |
715 | <xs:annotation>\r | |
716 | <xs:documentation xml:lang="en">This tag is used in the Framework Package Database File to track all DISTRIBUTION packages (FAR files) installed in a workspace. (Database)</xs:documentation>\r | |
717 | </xs:annotation>\r | |
718 | <xs:complexType>\r | |
719 | <xs:sequence>\r | |
720 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Filename" type="DbPathAndFilename"/>\r | |
721 | </xs:sequence>\r | |
722 | </xs:complexType>\r | |
723 | </xs:element>\r | |
724 | <xs:element name="FfsFormatDeclarations">\r | |
725 | <xs:complexType>\r | |
726 | <xs:sequence>\r | |
727 | <xs:element minOccurs="1" maxOccurs="unbounded" name="FfsFormatDeclaration">\r | |
728 | <!-- Required Attributes are the FfsFormatKeyword and SupModuleList -->\r | |
729 | <xs:complexType>\r | |
e4ecc06e | 730 | <xs:sequence>\r |
92fb4401 | 731 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="ProcessStep"/>\r |
732 | </xs:sequence>\r | |
733 | <xs:attributeGroup ref="FfsAttributes"/>\r | |
734 | </xs:complexType>\r | |
735 | </xs:element>\r | |
736 | </xs:sequence>\r | |
737 | </xs:complexType>\r | |
738 | </xs:element>\r | |
739 | <xs:element name="PpiDeclarations">\r | |
740 | <xs:annotation>\r | |
741 | <xs:documentation xml:lang="en">PpiDeclarations is a child of PackageSurfaceArea (SPD) </xs:documentation>\r | |
742 | </xs:annotation>\r | |
743 | <xs:complexType>\r | |
744 | <xs:sequence>\r | |
745 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Entry">\r | |
746 | <xs:complexType>\r | |
6c4dc226 | 747 | <xs:sequence>\r |
92fb4401 | 748 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
749 | <xs:element minOccurs="1" maxOccurs="1" name="GuidValue" type="GuidType"/>\r | |
750 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
751 | </xs:sequence>\r | |
752 | <xs:attributeGroup ref="PpiDeclarationAttributes"/>\r | |
753 | </xs:complexType>\r | |
754 | </xs:element>\r | |
755 | </xs:sequence>\r | |
756 | </xs:complexType>\r | |
757 | </xs:element>\r | |
758 | <xs:element name="PPIs">\r | |
759 | <xs:annotation>\r | |
760 | <xs:documentation xml:lang="en">Provide for one or more Ppi or PpiNotify sections. </xs:documentation>\r | |
761 | </xs:annotation>\r | |
762 | <xs:complexType>\r | |
763 | <xs:sequence minOccurs="1">\r | |
764 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Ppi">\r | |
765 | <xs:complexType>\r | |
6c4dc226 | 766 | <xs:sequence>\r |
92fb4401 | 767 | <xs:element minOccurs="1" maxOccurs="1" name="PpiCName" type="C_NameType"/>\r |
768 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
769 | </xs:sequence>\r | |
770 | <xs:attributeGroup ref="PpiAttributes"/>\r | |
771 | </xs:complexType>\r | |
772 | </xs:element>\r | |
773 | <xs:element minOccurs="0" maxOccurs="unbounded" name="PpiNotify">\r | |
774 | <xs:complexType>\r | |
878ddf1f | 775 | <xs:sequence>\r |
92fb4401 | 776 | <xs:element minOccurs="1" maxOccurs="1" name="PpiNotifyCName" type="C_NameType"/>\r |
777 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
778 | </xs:sequence>\r | |
779 | <xs:attributeGroup ref="PpiNotifyAttributes"/>\r | |
780 | </xs:complexType>\r | |
781 | </xs:element>\r | |
782 | </xs:sequence>\r | |
783 | </xs:complexType>\r | |
784 | </xs:element>\r | |
785 | <xs:element name="ProtocolDeclarations">\r | |
786 | <xs:annotation>\r | |
787 | <xs:documentation xml:lang="en">ProtocolDeclarations is a child of PackageSurfaceArea (SPD) </xs:documentation>\r | |
788 | </xs:annotation>\r | |
789 | <xs:complexType>\r | |
790 | <xs:sequence>\r | |
791 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Entry">\r | |
792 | <xs:complexType>\r | |
878ddf1f | 793 | <xs:sequence>\r |
92fb4401 | 794 | <xs:element minOccurs="1" maxOccurs="1" name="C_Name" type="C_NameType"/>\r |
795 | <xs:element minOccurs="1" maxOccurs="1" name="GuidValue" type="GuidType"/>\r | |
796 | <xs:element minOccurs="1" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
797 | </xs:sequence>\r | |
798 | <xs:attributeGroup ref="ProtocolDeclarationAttributes"/>\r | |
799 | </xs:complexType>\r | |
800 | </xs:element>\r | |
801 | </xs:sequence>\r | |
802 | </xs:complexType>\r | |
803 | </xs:element>\r | |
804 | <xs:element name="Protocols">\r | |
805 | <xs:annotation>\r | |
806 | <xs:documentation xml:lang="en">If either Protocol or ProtocolNotify sections are needed, one or more of them should be specified within this section</xs:documentation>\r | |
807 | </xs:annotation>\r | |
808 | <xs:complexType>\r | |
809 | <xs:sequence>\r | |
810 | <xs:element minOccurs="0" maxOccurs="unbounded" name="Protocol">\r | |
811 | <xs:complexType>\r | |
878ddf1f | 812 | <xs:sequence>\r |
92fb4401 | 813 | <xs:element minOccurs="1" maxOccurs="1" name="ProtocolCName" type="C_NameType"/>\r |
814 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
815 | </xs:sequence>\r | |
816 | <xs:attributeGroup ref="ProtocolAttributes"/>\r | |
817 | </xs:complexType>\r | |
818 | </xs:element>\r | |
819 | <xs:element minOccurs="0" maxOccurs="unbounded" name="ProtocolNotify">\r | |
820 | <xs:complexType>\r | |
87c6a4af | 821 | <xs:sequence>\r |
92fb4401 | 822 | <xs:element minOccurs="1" maxOccurs="1" name="ProtocolNotifyCName" type="C_NameType"/>\r |
823 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
824 | </xs:sequence>\r | |
825 | <xs:attributeGroup ref="ProtocolNotifyAttributes"/>\r | |
826 | </xs:complexType>\r | |
827 | </xs:element>\r | |
828 | </xs:sequence>\r | |
829 | </xs:complexType>\r | |
830 | </xs:element>\r | |
831 | <xs:element name="ProcessStep">\r | |
832 | <xs:complexType>\r | |
833 | <xs:sequence>\r | |
702c120a | 834 | <!-- The following is a macro for Apache ANT -->\r |
835 | <xs:element minOccurs="0" maxOccurs="1" name="MacroDefFile">\r | |
836 | <xs:complexType>\r | |
837 | <xs:simpleContent>\r | |
838 | <xs:extension base="PathAndFilename">\r | |
ccb4cab3 | 839 | <xs:attribute name="MacroName" type="KeywordType" use="required"/>\r |
702c120a | 840 | </xs:extension>\r |
841 | </xs:simpleContent>\r | |
842 | </xs:complexType>\r | |
843 | </xs:element>\r | |
844 | <!-- The following is for System Executables -->\r | |
845 | <xs:element minOccurs="0" maxOccurs="1" name="ToolName" type="xs:NCName"/>\r | |
846 | <xs:element minOccurs="0" maxOccurs="unbounded" name="ToolArgs" type="xs:normalizedString"/>\r | |
847 | <xs:element minOccurs="0" maxOccurs="unbounded" name="InputPattern" type="xs:normalizedString"/>\r | |
848 | <xs:element minOccurs="0" maxOccurs="1" name="OutputPattern" type="xs:normalizedString"/>\r | |
92fb4401 | 849 | </xs:sequence>\r |
850 | <xs:attributeGroup ref="ProcessStepAttributes"/>\r | |
851 | </xs:complexType>\r | |
852 | </xs:element>\r | |
853 | <xs:element name="SourceFiles">\r | |
854 | <xs:annotation>\r | |
855 | <xs:documentation xml:lang="en">Multiple Filenames may be specified, and they may also be scoped to a specific Architecture.</xs:documentation>\r | |
856 | </xs:annotation>\r | |
857 | <xs:complexType>\r | |
858 | <xs:sequence>\r | |
859 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="Filename"/>\r | |
860 | </xs:sequence>\r | |
861 | </xs:complexType>\r | |
862 | </xs:element>\r | |
863 | <xs:element name="SkuInfo">\r | |
864 | <xs:complexType>\r | |
865 | <xs:sequence>\r | |
866 | <xs:element minOccurs="1" maxOccurs="unbounded" name="UiSkuName">\r | |
867 | <xs:complexType>\r | |
878ddf1f | 868 | <xs:simpleContent>\r |
92fb4401 | 869 | <xs:extension base="UiNameType">\r |
870 | <xs:attribute name="SkuID" type="xs:nonNegativeInteger" use="required"/>\r | |
871 | </xs:extension>\r | |
878ddf1f | 872 | </xs:simpleContent>\r |
92fb4401 | 873 | </xs:complexType>\r |
874 | </xs:element>\r | |
875 | </xs:sequence>\r | |
876 | </xs:complexType>\r | |
877 | </xs:element>\r | |
878 | <xs:element name="SystemTables">\r | |
879 | <xs:annotation>\r | |
880 | <xs:documentation xml:lang="en">This is list of System Table elements.</xs:documentation>\r | |
881 | </xs:annotation>\r | |
882 | <xs:complexType>\r | |
883 | <xs:sequence>\r | |
884 | <xs:element minOccurs="1" maxOccurs="unbounded" name="SystemTableCNames">\r | |
885 | <xs:complexType>\r | |
31a76725 | 886 | <xs:sequence>\r |
92fb4401 | 887 | <xs:element minOccurs="1" maxOccurs="1" name="SystemTableCName" type="C_NameType"/>\r |
888 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
889 | </xs:sequence>\r | |
890 | <xs:attributeGroup ref="SystemTableAttributes"/>\r | |
891 | </xs:complexType>\r | |
892 | </xs:element>\r | |
893 | </xs:sequence>\r | |
894 | </xs:complexType>\r | |
895 | </xs:element>\r | |
896 | <xs:element name="UserDefinedAntTasks">\r | |
897 | <xs:annotation>\r | |
898 | <xs:documentation xml:lang="en">This is a sub-element of BuildOptions</xs:documentation>\r | |
899 | <xs:documentation xml:lang="en">Permit Users to define their own custom ANT tasks.</xs:documentation>\r | |
900 | </xs:annotation>\r | |
901 | <xs:complexType>\r | |
902 | <xs:sequence>\r | |
903 | <xs:element minOccurs="1" maxOccurs="unbounded" ref="AntTask"/>\r | |
904 | </xs:sequence>\r | |
905 | </xs:complexType>\r | |
906 | </xs:element>\r | |
907 | <xs:element name="UserExtensions">\r | |
908 | <xs:complexType>\r | |
909 | <xs:sequence>\r | |
c606a536 | 910 | <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>\r |
92fb4401 | 911 | </xs:sequence>\r |
912 | <xs:attribute name="UserID" type="xs:NCName" use="required"/>\r | |
e2cce12f | 913 | <xs:attribute name="Identifier" type="xs:string" use="required"/>\r |
92fb4401 | 914 | </xs:complexType>\r |
915 | </xs:element>\r | |
916 | <xs:element name="Variables">\r | |
917 | <xs:annotation>\r | |
918 | <xs:documentation xml:lang="en">An MSA FILE list of EFI Variables described by string pair.</xs:documentation>\r | |
919 | </xs:annotation>\r | |
920 | <xs:complexType>\r | |
921 | <xs:sequence>\r | |
922 | <xs:element minOccurs="1" maxOccurs="unbounded" name="Variable">\r | |
923 | <xs:annotation>\r | |
924 | <xs:documentation xml:lang="en">This is an EFI Variable Entry</xs:documentation>\r | |
925 | </xs:annotation>\r | |
926 | <xs:complexType>\r | |
f0147869 | 927 | <xs:sequence>\r |
92fb4401 | 928 | <xs:element minOccurs="1" maxOccurs="1" name="VariableName" type="HexWordArrayType"/>\r |
929 | <xs:element minOccurs="1" maxOccurs="1" name="GuidC_Name" type="C_NameType"/>\r | |
930 | <xs:element minOccurs="0" maxOccurs="1" name="HelpText" type="Paragraph"/>\r | |
931 | </xs:sequence>\r | |
932 | <xs:attributeGroup ref="VariableAttributes"/>\r | |
933 | </xs:complexType>\r | |
934 | </xs:element>\r | |
935 | </xs:sequence>\r | |
936 | </xs:complexType>\r | |
937 | </xs:element>\r | |
938 | <xs:element name="Version" type="VersionDataType"/>\r | |
878ddf1f | 939 | </xs:schema>\r |