VirtualBox

source: vbox/trunk/src/VBox/Main/xml/VirtualBox-settings-common.xsd@ 17669

Last change on this file since 17669 was 17669, checked in by vboxsync, 16 years ago

Main: Rework storage controller handling to allow an arbitrary number of different storage controllers and remove code duplication:

  • XML format changed
  • New StorageController class
  • Removed SATAController (obsolete)
  • Removed the IDE controller code from BIOSSettings, handled in StorageController now
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 31.0 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 * :tabSize=2:indentSize=2:noTabs=true:
4 * :folding=explicit:collapseFolds=1:
5 *
6 * Sun xVM VirtualBox Settings Schema
7 * Common definitions
8
9 Copyright (C) 2004-2008 Sun Microsystems, Inc.
10
11 This file is part of VirtualBox Open Source Edition (OSE), as
12 available from http://www.virtualbox.org. This file is free software;
13 you can redistribute it and/or modify it under the terms of the GNU
14 General Public License (GPL) as published by the Free Software
15 Foundation, in version 2 as it comes in the "COPYING" file of the
16 VirtualBox OSE distribution. VirtualBox OSE is distributed in the
17 hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
18
19 Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
20 Clara, CA 95054 USA or visit http://www.sun.com if you need
21 additional information or have any questions.
22-->
23
24<xsd:schema
25 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
26 xmlns="http://www.innotek.de/VirtualBox-settings"
27 xmlns:vb="http://www.innotek.de/VirtualBox-settings"
28 targetNamespace="http://www.innotek.de/VirtualBox-settings"
29 elementFormDefault="qualified"
30>
31
32<xsd:annotation>
33 <xsd:documentation xml:lang="en">
34 Sun xVM VirtualBox Settings Schema (common definitions).
35 Copyright (c) 2004-2008 Sun Microsystems, Inc.
36 </xsd:documentation>
37</xsd:annotation>
38
39<!--
40// Simple types
41/////////////////////////////////////////////////////////////////////////
42-->
43
44<xsd:simpleType name="TUUID">
45 <xsd:restriction base="xsd:token">
46 <xsd:pattern value="\{[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}\}"/>
47 </xsd:restriction>
48</xsd:simpleType>
49
50<xsd:simpleType name="TNonNullUUID">
51 <xsd:restriction base="TUUID">
52 <xsd:pattern value=".*[1-9A-Fa-f]+.*"/>
53 </xsd:restriction>
54</xsd:simpleType>
55
56<xsd:simpleType name="TUInt8">
57 <xsd:union>
58 <xsd:simpleType>
59 <xsd:restriction base="xsd:unsignedByte">
60 </xsd:restriction>
61 </xsd:simpleType>
62 <xsd:simpleType>
63 <xsd:restriction base="xsd:string">
64 <xsd:pattern value="0[xX][A-Fa-f0-9]{1,2}"/>
65 </xsd:restriction>
66 </xsd:simpleType>
67 </xsd:union>
68</xsd:simpleType>
69
70<xsd:simpleType name="TUInt16">
71 <xsd:union>
72 <xsd:simpleType>
73 <xsd:restriction base="xsd:unsignedShort">
74 </xsd:restriction>
75 </xsd:simpleType>
76 <xsd:simpleType>
77 <xsd:restriction base="xsd:string">
78 <xsd:pattern value="0[xX][A-Fa-f0-9]{1,4}"/>
79 </xsd:restriction>
80 </xsd:simpleType>
81 </xsd:union>
82</xsd:simpleType>
83
84<xsd:simpleType name="TUInt64Hex">
85 <xsd:restriction base="xsd:string">
86 <xsd:pattern value="0x[A-Fa-f0-9]{1,16}"/>
87 </xsd:restriction>
88</xsd:simpleType>
89
90<xsd:simpleType name="TLocalFile">
91 <xsd:restriction base="xsd:string">
92 <xsd:pattern value=".+"/>
93 </xsd:restriction>
94</xsd:simpleType>
95
96<xsd:simpleType name="TDiskType">
97 <xsd:restriction base="xsd:token">
98 <xsd:enumeration value="HD"/>
99 <xsd:enumeration value="DVD"/>
100 <xsd:enumeration value="FD"/>
101 </xsd:restriction>
102</xsd:simpleType>
103
104<xsd:simpleType name="TDeviceType">
105 <xsd:restriction base="xsd:token">
106 <xsd:enumeration value="None"/>
107 <xsd:enumeration value="Floppy"/>
108 <xsd:enumeration value="DVD"/>
109 <xsd:enumeration value="HardDisk"/>
110 <xsd:enumeration value="Network"/>
111 </xsd:restriction>
112</xsd:simpleType>
113
114<xsd:simpleType name="TUSBDeviceFilterAction">
115 <xsd:restriction base="xsd:token">
116 <xsd:enumeration value="Ignore"/>
117 <xsd:enumeration value="Hold"/>
118 </xsd:restriction>
119</xsd:simpleType>
120
121<xsd:simpleType name="TNonEmptyString">
122 <xsd:restriction base="xsd:string">
123 <xsd:pattern value=".+"/>
124 </xsd:restriction>
125</xsd:simpleType>
126
127<xsd:simpleType name="TPresentDateTimeUTC">
128 <xsd:restriction base="xsd:dateTime">
129 <xsd:minInclusive value="1900-01-01T00:00:00Z"/>
130 <xsd:maxInclusive value="199999999-12-31T23:59:59Z"/>
131 <xsd:pattern value=".+-.+-.+T.+:.+:[0-9]{2}Z"/>
132 </xsd:restriction>
133</xsd:simpleType>
134
135<xsd:simpleType name="TGuestOSType">
136 <xsd:restriction base="xsd:string">
137 <xsd:enumeration value="Other"/>
138 <xsd:enumeration value="DOS"/>
139 <xsd:enumeration value="Netware"/>
140 <xsd:enumeration value="L4"/>
141 <xsd:enumeration value="Windows31"/>
142 <xsd:enumeration value="Windows95"/>
143 <xsd:enumeration value="Windows98"/>
144 <xsd:enumeration value="WindowsMe"/>
145 <xsd:enumeration value="WindowsNT4"/>
146 <xsd:enumeration value="Windows2000"/>
147 <xsd:enumeration value="WindowsXP"/>
148 <xsd:enumeration value="WindowsXP_64"/>
149 <xsd:enumeration value="Windows2003"/>
150 <xsd:enumeration value="Windows2003_64"/>
151 <xsd:enumeration value="WindowsVista"/>
152 <xsd:enumeration value="WindowsVista_64"/>
153 <xsd:enumeration value="Windows2008"/>
154 <xsd:enumeration value="Windows2008_64"/>
155 <xsd:enumeration value="Windows7"/>
156 <xsd:enumeration value="Windows7_64"/>
157 <xsd:enumeration value="WindowsNT"/>
158 <xsd:enumeration value="OS2Warp3"/>
159 <xsd:enumeration value="OS2Warp4"/>
160 <xsd:enumeration value="OS2Warp45"/>
161 <xsd:enumeration value="OS2eCS"/>
162 <xsd:enumeration value="OS2"/>
163 <xsd:enumeration value="Linux22"/>
164 <xsd:enumeration value="Linux24"/>
165 <xsd:enumeration value="Linux24_64"/>
166 <xsd:enumeration value="Linux26"/>
167 <xsd:enumeration value="Linux26_64"/>
168 <xsd:enumeration value="ArchLinux"/>
169 <xsd:enumeration value="ArchLinux_64"/>
170 <xsd:enumeration value="Debian"/>
171 <xsd:enumeration value="Debian_64"/>
172 <xsd:enumeration value="OpenSUSE"/>
173 <xsd:enumeration value="OpenSUSE_64"/>
174 <xsd:enumeration value="Fedora"/>
175 <xsd:enumeration value="Fedora_64"/>
176 <xsd:enumeration value="Gentoo"/>
177 <xsd:enumeration value="Gentoo_64"/>
178 <xsd:enumeration value="Mandriva"/>
179 <xsd:enumeration value="Mandriva_64"/>
180 <xsd:enumeration value="RedHat"/>
181 <xsd:enumeration value="RedHat_64"/>
182 <xsd:enumeration value="Ubuntu"/>
183 <xsd:enumeration value="Ubuntu_64"/>
184 <xsd:enumeration value="Xandros"/>
185 <xsd:enumeration value="Xandros_64"/>
186 <xsd:enumeration value="Linux"/>
187 <xsd:enumeration value="FreeBSD"/>
188 <xsd:enumeration value="FreeBSD_64"/>
189 <xsd:enumeration value="OpenBSD"/>
190 <xsd:enumeration value="OpenBSD_64"/>
191 <xsd:enumeration value="NetBSD"/>
192 <xsd:enumeration value="NetBSD_64"/>
193 <xsd:enumeration value="Solaris"/>
194 <xsd:enumeration value="Solaris_64"/>
195 <xsd:enumeration value="OpenSolaris"/>
196 <xsd:enumeration value="OpenSolaris_64"/>
197 <xsd:enumeration value="QNX"/>
198 </xsd:restriction>
199</xsd:simpleType>
200
201
202<xsd:simpleType name="TVRDPAuthType">
203 <xsd:restriction base="xsd:string">
204 <xsd:enumeration value="Null"/>
205 <xsd:enumeration value="Guest"/>
206 <xsd:enumeration value="External"/>
207 </xsd:restriction>
208</xsd:simpleType>
209
210<xsd:simpleType name="TNetworkAdapterType">
211 <xsd:restriction base="xsd:string">
212 <xsd:enumeration value="Am79C970A"/>
213 <xsd:enumeration value="Am79C973"/>
214 <xsd:enumeration value="82540EM"/>
215 <xsd:enumeration value="82543GC"/>
216 </xsd:restriction>
217</xsd:simpleType>
218
219<xsd:simpleType name="TTriStateBoolType">
220 <xsd:restriction base="xsd:string">
221 <xsd:enumeration value="false"/>
222 <xsd:enumeration value="true"/>
223 <xsd:enumeration value="default"/>
224 </xsd:restriction>
225</xsd:simpleType>
226
227<xsd:simpleType name="TBIOSBootMenuModeType">
228 <xsd:restriction base="xsd:string">
229 <xsd:enumeration value="Disabled"/>
230 <xsd:enumeration value="MenuOnly"/>
231 <xsd:enumeration value="MessageAndMenu"/>
232 </xsd:restriction>
233</xsd:simpleType>
234
235<xsd:simpleType name="TClipboardMode">
236 <xsd:restriction base="xsd:string">
237 <xsd:enumeration value="Disabled"/>
238 <xsd:enumeration value="HostToGuest"/>
239 <xsd:enumeration value="GuestToHost"/>
240 <xsd:enumeration value="Bidirectional"/>
241 </xsd:restriction>
242</xsd:simpleType>
243
244<xsd:simpleType name="TPortMode">
245 <xsd:restriction base="xsd:string">
246 <xsd:enumeration value="Disconnected"/>
247 <xsd:enumeration value="HostPipe"/>
248 <xsd:enumeration value="HostDevice"/>
249 </xsd:restriction>
250</xsd:simpleType>
251
252<!--
253// Complex types
254/////////////////////////////////////////////////////////////////////////
255-->
256
257<xsd:complexType name="THardDiskBase">
258 <xsd:sequence>
259 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
260 <xsd:element name="Property" minOccurs="0" maxOccurs="unbounded">
261 <xsd:complexType>
262 <xsd:attribute name="name" type="xsd:token" use="required"/>
263 <xsd:attribute name="value" type="xsd:string" use="required"/>
264 </xsd:complexType>
265 </xsd:element>
266 <xsd:element name="HardDisk" type="TDiffHardDisk" minOccurs="0" maxOccurs="unbounded"/>
267 </xsd:sequence>
268 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
269 <xsd:attribute name="location" type="TLocalFile" use="required"/>
270 <xsd:attribute name="format" type="TNonEmptyString" use="required"/>
271</xsd:complexType>
272
273<xsd:complexType name="TDiffHardDisk">
274 <xsd:complexContent>
275 <xsd:extension base="THardDiskBase">
276 <xsd:attribute name="autoReset" type="xsd:boolean" default="false"/>
277 </xsd:extension>
278 </xsd:complexContent>
279</xsd:complexType>
280
281<xsd:complexType name="THardDisk">
282 <xsd:complexContent>
283 <xsd:extension base="THardDiskBase">
284 <xsd:attribute name="type" use="required">
285 <xsd:simpleType>
286 <xsd:restriction base="xsd:string">
287 <xsd:enumeration value="Normal"/>
288 <xsd:enumeration value="Immutable"/>
289 <xsd:enumeration value="Writethrough"/>
290 </xsd:restriction>
291 </xsd:simpleType>
292 </xsd:attribute>
293 </xsd:extension>
294 </xsd:complexContent>
295</xsd:complexType>
296
297<xsd:complexType name="TImage2">
298 <xsd:sequence>
299 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
300 </xsd:sequence>
301 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
302 <xsd:attribute name="location" type="TLocalFile" use="required"/>
303</xsd:complexType>
304
305<xsd:complexType name="TImageRef">
306 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
307</xsd:complexType>
308
309<xsd:complexType name="THostDrive">
310 <xsd:attribute name="src" type="TLocalFile" use="required"/>
311</xsd:complexType>
312
313<xsd:complexType name="TUSBDeviceFilter">
314 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
315 <xsd:attribute name="active" type="xsd:boolean" use="required"/>
316 <xsd:attribute name="vendorId" type="xsd:token"/>
317 <xsd:attribute name="productId" type="xsd:token"/>
318 <xsd:attribute name="revision" type="xsd:token"/>
319 <xsd:attribute name="manufacturer" type="xsd:token"/>
320 <xsd:attribute name="product" type="xsd:token"/>
321 <xsd:attribute name="serialNumber" type="xsd:token"/>
322 <xsd:attribute name="port" type="xsd:token"/>
323 <xsd:attribute name="remote" type="xsd:token"/>
324 <xsd:attribute name="maskedInterfaces" type="xsd:unsignedInt" default="0"/>
325</xsd:complexType>
326
327<xsd:complexType name="THostUSBDeviceFilter">
328 <xsd:complexContent>
329 <xsd:extension base="TUSBDeviceFilter">
330 <xsd:attribute name="action" type="TUSBDeviceFilterAction" use="required"/>
331 </xsd:extension>
332 </xsd:complexContent>
333</xsd:complexType>
334
335<xsd:complexType name="TSystemProperties">
336 <xsd:attribute name="defaultMachineFolder" type="TLocalFile"/>
337 <xsd:attribute name="defaultHardDiskFolder" type="TLocalFile"/>
338 <xsd:attribute name="defaultHardDiskFormat" type="TNonEmptyString"/>
339 <xsd:attribute name="remoteDisplayAuthLibrary" type="TLocalFile"/>
340 <xsd:attribute name="webServiceAuthLibrary" type="TLocalFile"/>
341 <xsd:attribute name="HWVirtExEnabled" type="xsd:boolean"/>
342 <xsd:attribute name="LogHistoryCount" type="xsd:unsignedInt" default="3"/>
343</xsd:complexType>
344
345<xsd:complexType name="TExtraData">
346 <xsd:sequence>
347 <xsd:element name="ExtraDataItem" minOccurs="0" maxOccurs="unbounded">
348 <xsd:complexType>
349 <xsd:attribute name="name" type="xsd:token" use="required"/>
350 <xsd:attribute name="value" type="xsd:string" use="required"/>
351 </xsd:complexType>
352 </xsd:element>
353 </xsd:sequence>
354</xsd:complexType>
355
356<xsd:complexType name="TGlobal">
357 <xsd:all>
358 <xsd:element name="MachineRegistry">
359 <xsd:complexType>
360 <xsd:sequence>
361 <xsd:element name="MachineEntry" minOccurs="0" maxOccurs="unbounded">
362 <xsd:complexType>
363 <xsd:attribute name="src" type="TLocalFile" use="required"/>
364 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
365 </xsd:complexType>
366 </xsd:element>
367 </xsd:sequence>
368 </xsd:complexType>
369 </xsd:element>
370 <xsd:element name="MediaRegistry">
371 <xsd:complexType>
372 <xsd:all>
373 <xsd:element name="HardDisks" minOccurs="0">
374 <xsd:complexType>
375 <xsd:sequence>
376 <xsd:element name="HardDisk" type="THardDisk" minOccurs="0" maxOccurs="unbounded"/>
377 </xsd:sequence>
378 </xsd:complexType>
379 </xsd:element>
380 <xsd:element name="DVDImages" minOccurs="0">
381 <xsd:complexType>
382 <xsd:sequence>
383 <xsd:element name="Image" type="TImage2" minOccurs="0" maxOccurs="unbounded"/>
384 </xsd:sequence>
385 </xsd:complexType>
386 </xsd:element>
387 <xsd:element name="FloppyImages" minOccurs="0">
388 <xsd:complexType>
389 <xsd:sequence>
390 <xsd:element name="Image" type="TImage2" minOccurs="0" maxOccurs="unbounded"/>
391 </xsd:sequence>
392 </xsd:complexType>
393 </xsd:element>
394 </xsd:all>
395 </xsd:complexType>
396 </xsd:element>
397 <xsd:element name="USBDeviceFilters">
398 <xsd:complexType>
399 <xsd:sequence>
400 <xsd:element name="DeviceFilter" type="THostUSBDeviceFilter"
401 minOccurs="0" maxOccurs="unbounded"/>
402 </xsd:sequence>
403 </xsd:complexType>
404 </xsd:element>
405 <xsd:element name="SystemProperties" type="TSystemProperties"/>
406 <xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
407 </xsd:all>
408</xsd:complexType>
409
410<xsd:complexType name="THWVirtExType">
411 <xsd:attribute name="enabled" type="TTriStateBoolType" default="default"/>
412</xsd:complexType>
413
414<xsd:complexType name="THWVirtExNestedPagingType">
415 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
416</xsd:complexType>
417
418<xsd:complexType name="THWVirtExVPIDType">
419 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
420</xsd:complexType>
421
422<xsd:complexType name="TPAEType">
423 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
424</xsd:complexType>
425
426<xsd:simpleType name="TCPUCount">
427 <xsd:restriction base="xsd:unsignedInt">
428 <xsd:minInclusive value="1"/>
429 <xsd:maxInclusive value="255"/>
430 </xsd:restriction>
431</xsd:simpleType>
432
433<xsd:complexType name="TCPU">
434 <xsd:sequence>
435 <xsd:element name="HardwareVirtEx" type="THWVirtExType" minOccurs="0"/>
436 <xsd:element name="HardwareVirtExNestedPaging" type="THWVirtExNestedPagingType" minOccurs="0"/>
437 <xsd:element name="HardwareVirtExVPID" type="THWVirtExVPIDType" minOccurs="0"/>
438 <xsd:element name="PAE" type="TPAEType" minOccurs="0"/>
439 </xsd:sequence>
440 <xsd:attribute name="count" type="TCPUCount" default="1"/>
441</xsd:complexType>
442
443<xsd:complexType name="TBoot">
444 <xsd:sequence>
445 <xsd:element name="Order" minOccurs="0" maxOccurs="unbounded">
446 <xsd:complexType>
447 <xsd:attribute name="position" use="required">
448 <xsd:simpleType>
449 <xsd:restriction base="xsd:unsignedInt">
450 <xsd:minInclusive value="1"/>
451 <xsd:maxInclusive value="4"/>
452 </xsd:restriction>
453 </xsd:simpleType>
454 </xsd:attribute>
455 <xsd:attribute name="device" type="TDeviceType" use="required"/>
456 </xsd:complexType>
457 </xsd:element>
458 </xsd:sequence>
459</xsd:complexType>
460
461<xsd:complexType name="TDisplay">
462 <xsd:attribute name="VRAMSize" use="required">
463 <xsd:simpleType>
464 <xsd:restriction base="xsd:unsignedInt">
465 <xsd:minInclusive value="1"/>
466 <xsd:maxInclusive value="128"/>
467 </xsd:restriction>
468 </xsd:simpleType>
469 </xsd:attribute>
470 <xsd:attribute name="monitorCount" default="1">
471 <xsd:simpleType>
472 <xsd:restriction base="xsd:unsignedInt">
473 <xsd:maxInclusive value="8"/>
474 </xsd:restriction>
475 </xsd:simpleType>
476 </xsd:attribute>
477 <xsd:attribute name="accelerate3D" type="xsd:boolean" default="false"/>
478</xsd:complexType>
479
480<xsd:complexType name="TRemoteDisplay">
481 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
482 <xsd:attribute name="port" type="xsd:unsignedInt" default="0"/>
483 <xsd:attribute name="netAddress" type="xsd:token" default=""/>
484 <xsd:attribute name="authType" type="TVRDPAuthType" default="Null"/>
485 <xsd:attribute name="authTimeout" type="xsd:unsignedInt" default="5000"/>
486 <xsd:attribute name="allowMultiConnection" type="xsd:boolean" default="false"/>
487 <xsd:attribute name="reuseSingleConnection" type="xsd:boolean" default="false"/>
488</xsd:complexType>
489
490<xsd:complexType name="TBIOS">
491 <xsd:all>
492 <xsd:element name="ACPI">
493 <xsd:complexType>
494 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
495 </xsd:complexType>
496 </xsd:element>
497 <xsd:element name="IOAPIC" minOccurs="0">
498 <xsd:complexType>
499 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
500 </xsd:complexType>
501 </xsd:element>
502 <xsd:element name="Logo" minOccurs="0">
503 <xsd:complexType>
504 <xsd:attribute name="fadeIn" type="xsd:boolean" default="true"/>
505 <xsd:attribute name="fadeOut" type="xsd:boolean" default="true"/>
506 <xsd:attribute name="displayTime" type="xsd:unsignedInt" default="0"/>
507 <xsd:attribute name="imagePath" type="TLocalFile"/>
508 </xsd:complexType>
509 </xsd:element>
510 <xsd:element name="BootMenu" minOccurs="0">
511 <xsd:complexType>
512 <xsd:attribute name="mode" type="TBIOSBootMenuModeType" default="MessageAndMenu"/>
513 </xsd:complexType>
514 </xsd:element>
515 <xsd:element name="TimeOffset" minOccurs="0">
516 <xsd:complexType>
517 <xsd:attribute name="value" type="xsd:integer" default="0"/>
518 </xsd:complexType>
519 </xsd:element>
520 <xsd:element name="PXEDebug" minOccurs="0">
521 <xsd:complexType>
522 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
523 </xsd:complexType>
524 </xsd:element>
525 </xsd:all>
526</xsd:complexType>
527
528<xsd:complexType name="TStorageControllerDevice">
529 <xsd:choice minOccurs="0">
530 <xsd:element name="Image" type="TImageRef"/>
531 <xsd:element name="HostDrive" type="THostDrive"/>
532 </xsd:choice>
533 <xsd:attribute name="type" use="required">
534 <xsd:simpleType>
535 <xsd:restriction base="xsd:token">
536 <xsd:enumeration value="HardDisk"/>
537 <xsd:enumeration value="CD/DVD"/>
538 </xsd:restriction>
539 </xsd:simpleType>
540 </xsd:attribute>
541 <xsd:attribute name="port" type="xsd:unsignedInt" use="required"/>
542 <xsd:attribute name="device" type="xsd:unsignedInt" default="0"/>
543</xsd:complexType>
544
545<xsd:complexType name="TStorageController">
546 <xsd:sequence>
547 <xsd:element name="AttachedDevice" type="TStorageControllerDevice"
548 minOccurs="0" maxOccurs="unbounded"/>
549 </xsd:sequence>
550 <xsd:attribute name="name" type="xsd:string" use="required"/>
551 <xsd:attribute name="type" use="required">
552 <xsd:simpleType>
553 <xsd:restriction base="xsd:token">
554 <xsd:enumeration value="AHCI"/>
555 <xsd:enumeration value="LsiLogic"/>
556 <xsd:enumeration value="BusLogic"/>
557 <xsd:enumeration value="PIIX3"/>
558 <xsd:enumeration value="PIIX4"/>
559 <xsd:enumeration value="ICH6"/>
560 </xsd:restriction>
561 </xsd:simpleType>
562 </xsd:attribute>
563 <xsd:attribute name="PortCount" type="xsd:unsignedInt" use="required"/>
564 <xsd:attribute name="bootable" type="xsd:boolean" use="optional"/>
565 <xsd:attribute name="PCIBus" type="xsd:unsignedInt" use="optional"/>
566 <xsd:attribute name="PCIDevice" type="xsd:unsignedInt" use="optional"/>
567 <xsd:attribute name="PCIFunction" type="xsd:unsignedInt" use="optional"/>
568 <xsd:attribute name="IDE0MasterEmulationPort" type="xsd:unsignedInt" use="optional"/>
569 <xsd:attribute name="IDE0SlaveEmulationPort" type="xsd:unsignedInt" use="optional"/>
570 <xsd:attribute name="IDE1MasterEmulationPort" type="xsd:unsignedInt" use="optional"/>
571 <xsd:attribute name="IDE1SlaveEmulationPort" type="xsd:unsignedInt" use="optional"/>
572</xsd:complexType>
573
574<xsd:complexType name="TStorageControllers">
575 <xsd:sequence>
576 <xsd:element name="StorageController" type="TStorageController"
577 minOccurs="0" maxOccurs="unbounded"/>
578 </xsd:sequence>
579</xsd:complexType>
580
581<xsd:complexType name="TDVDDrive">
582 <xsd:choice minOccurs="0">
583 <xsd:element name="Image" type="TImageRef"/>
584 <xsd:element name="HostDrive" type="THostDrive"/>
585 </xsd:choice>
586 <xsd:attribute name="passthrough" type="xsd:boolean" default="false"/>
587</xsd:complexType>
588
589<xsd:complexType name="TFloppyDrive">
590 <xsd:choice minOccurs="0">
591 <xsd:element name="Image" type="TImageRef"/>
592 <xsd:element name="HostDrive" type="THostDrive"/>
593 </xsd:choice>
594 <xsd:attribute name="enabled" type="xsd:boolean" default="true"/>
595</xsd:complexType>
596
597<xsd:complexType name="TUSBController">
598 <xsd:sequence>
599 <xsd:element name="DeviceFilter" type="TUSBDeviceFilter"
600 minOccurs="0" maxOccurs="unbounded"/>
601 </xsd:sequence>
602 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
603 <xsd:attribute name="enabledEhci" type="xsd:boolean" default="false"/>
604</xsd:complexType>
605
606<xsd:complexType name="TAudioAdapterBase">
607 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
608 <xsd:attribute name="controller" default="AC97">
609 <xsd:simpleType>
610 <xsd:restriction base="xsd:token">
611 <xsd:enumeration value="AC97"/>
612 <xsd:enumeration value="SB16"/>
613 </xsd:restriction>
614 </xsd:simpleType>
615 </xsd:attribute>
616</xsd:complexType>
617
618<xsd:complexType name="TNetworkAdapter">
619 <xsd:choice minOccurs="0">
620 <xsd:element name="NAT">
621 <xsd:complexType>
622 <xsd:attribute name="network" type="xsd:string"/>
623 </xsd:complexType>
624 </xsd:element>
625 <xsd:element name="HostInterface">
626 <xsd:complexType>
627 <xsd:attribute name="name" type="xsd:string" use="required"/>
628 </xsd:complexType>
629 </xsd:element>
630 <xsd:element name="BridgedInterface">
631 <xsd:complexType>
632 <xsd:attribute name="name" type="xsd:string" use="required"/>
633 </xsd:complexType>
634 </xsd:element>
635 <xsd:element name="InternalNetwork">
636 <xsd:complexType>
637 <xsd:attribute name="name" type="xsd:string" use="required"/>
638 </xsd:complexType>
639 </xsd:element>
640 <xsd:element name="HostOnlyInterface">
641 <xsd:complexType>
642 <xsd:attribute name="name" type="xsd:string" use="optional"/>
643 </xsd:complexType>
644 </xsd:element>
645 </xsd:choice>
646 <xsd:attribute name="type" type="TNetworkAdapterType" default="Am79C970A"/>
647 <xsd:attribute name="slot" use="required">
648 <xsd:simpleType>
649 <xsd:restriction base="xsd:unsignedInt">
650 <xsd:minInclusive value="0"/>
651 <xsd:maxExclusive value="8"/>
652 </xsd:restriction>
653 </xsd:simpleType>
654 </xsd:attribute>
655 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
656 <xsd:attribute name="MACAddress">
657 <xsd:simpleType>
658 <xsd:restriction base="xsd:hexBinary">
659 <xsd:pattern value="[0-9A-Fa-f][02468ACEace][0-9A-Fa-f]{10}"/>
660 </xsd:restriction>
661 </xsd:simpleType>
662 </xsd:attribute>
663 <xsd:attribute name="cable" type="xsd:boolean" use="required"/>
664 <xsd:attribute name="speed" type="xsd:unsignedInt" default="1000000"/>
665 <xsd:attribute name="trace" type="xsd:boolean" default="false"/>
666 <xsd:attribute name="tracefile" type="xsd:string"/>
667</xsd:complexType>
668
669<xsd:complexType name="TNetwork">
670 <xsd:sequence>
671 <xsd:element name="Adapter" type="TNetworkAdapter"
672 minOccurs="0" maxOccurs="unbounded"/>
673 </xsd:sequence>
674</xsd:complexType>
675
676<xsd:complexType name="TUARTPort">
677 <xsd:attribute name="slot" use="required">
678 <xsd:simpleType>
679 <xsd:restriction base="xsd:unsignedInt">
680 <xsd:minInclusive value="0"/>
681 <xsd:maxExclusive value="2"/>
682 </xsd:restriction>
683 </xsd:simpleType>
684 </xsd:attribute>
685 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
686 <xsd:attribute name="IRQ" type="TUInt8" use="required"/>
687 <xsd:attribute name="IOBase" type="TUInt16" use="required"/>
688 <xsd:attribute name="hostMode" type="TPortMode" use="required"/>
689 <xsd:attribute name="path" type="TLocalFile"/>
690 <xsd:attribute name="server" type="xsd:boolean" default="false"/>
691</xsd:complexType>
692
693<xsd:complexType name="TUART">
694 <xsd:sequence>
695 <xsd:element name="Port" type="TUARTPort"
696 minOccurs="0" maxOccurs="unbounded"/>
697 </xsd:sequence>
698</xsd:complexType>
699
700<xsd:complexType name="TLPTPort">
701 <xsd:attribute name="slot" use="required">
702 <xsd:simpleType>
703 <xsd:restriction base="xsd:unsignedInt">
704 <xsd:minInclusive value="0"/>
705 <xsd:maxExclusive value="2"/>
706 </xsd:restriction>
707 </xsd:simpleType>
708 </xsd:attribute>
709 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
710 <xsd:attribute name="IRQ" type="TUInt8" use="required"/>
711 <xsd:attribute name="IOBase" type="TUInt16" use="required"/>
712 <xsd:attribute name="path" type="TLocalFile"/>
713</xsd:complexType>
714
715<xsd:complexType name="TLPT">
716 <xsd:sequence>
717 <xsd:element name="Port" type="TLPTPort"
718 minOccurs="0" maxOccurs="unbounded"/>
719 </xsd:sequence>
720</xsd:complexType>
721
722<xsd:complexType name="TSharedFolder">
723 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
724 <xsd:attribute name="hostPath" type="TLocalFile" use="required"/>
725 <xsd:attribute name="writable" type="xsd:boolean" default="true"/>
726</xsd:complexType>
727
728<xsd:complexType name="TSharedFolders">
729 <xsd:sequence>
730 <xsd:element name="SharedFolder" type="TSharedFolder" minOccurs="0" maxOccurs="unbounded"/>
731 </xsd:sequence>
732</xsd:complexType>
733
734<xsd:complexType name="TClipboard">
735 <xsd:attribute name="mode" type="TClipboardMode" use="required"/>
736</xsd:complexType>
737
738<xsd:complexType name="TGuest">
739 <xsd:attribute name="memoryBalloonSize" type="xsd:unsignedInt" default="0"/>
740 <xsd:attribute name="statisticsUpdateInterval" type="xsd:unsignedInt" default="0"/>
741</xsd:complexType>
742
743<xsd:complexType name="TGuestProperty">
744 <xsd:attribute name="name" type="xsd:string" use="required"/>
745 <xsd:attribute name="value" type="xsd:string" use="required"/>
746 <xsd:attribute name="timestamp" type="xsd:unsignedLong" default="0"/>
747 <xsd:attribute name="flags" type="xsd:string" default=""/>
748</xsd:complexType>
749
750<xsd:complexType name="TGuestProperties">
751 <xsd:sequence>
752 <xsd:element name="GuestProperty" type="TGuestProperty" minOccurs="0" maxOccurs="unbounded"/>
753 </xsd:sequence>
754 <xsd:attribute name="notificationPatterns" type="xsd:string" default=""/>
755</xsd:complexType>
756
757<xsd:complexType name="THardware">
758 <xsd:all>
759 <xsd:element name="CPU" type="TCPU" minOccurs="0"/>
760 <xsd:element name="Memory" type="TMemory"/>
761 <xsd:element name="Boot" type="TBoot">
762 <xsd:unique name="THardware-Boot-Order">
763 <xsd:selector xpath="vb:Order"/>
764 <xsd:field xpath="@position"/>
765 </xsd:unique>
766 </xsd:element>
767 <xsd:element name="Display" type="TDisplay"/>
768 <xsd:element name="RemoteDisplay" type="TRemoteDisplay" minOccurs="0"/>
769 <xsd:element name="BIOS" type="TBIOS"/>
770 <xsd:element name="DVDDrive" type="TDVDDrive"/>
771 <xsd:element name="FloppyDrive" type="TFloppyDrive"/>
772 <xsd:element name="USBController" type="TUSBController"/>
773 <xsd:element name="Network" type="TNetwork">
774 <xsd:unique name="THardware-Network-Adapter">
775 <xsd:selector xpath="vb:Adapter"/>
776 <xsd:field xpath="@slot"/>
777 </xsd:unique>
778 </xsd:element>
779 <xsd:element name="UART" type="TUART">
780 <xsd:unique name="THardware-UART-Port">
781 <xsd:selector xpath="vb:Port"/>
782 <xsd:field xpath="@slot"/>
783 </xsd:unique>
784 </xsd:element>
785 <xsd:element name="LPT" type="TLPT">
786 <xsd:unique name="THardware-LPT-Port">
787 <xsd:selector xpath="vb:Port"/>
788 <xsd:field xpath="@slot"/>
789 </xsd:unique>
790 </xsd:element>
791 <xsd:element name="AudioAdapter" type="TAudioAdapter"/>
792 <xsd:element name="SharedFolders" type="TSharedFolders">
793 <xsd:unique name="THardware-SharedFolders-SharedFolder">
794 <xsd:selector xpath="vb:SharedFolder"/>
795 <xsd:field xpath="@name"/>
796 </xsd:unique>
797 </xsd:element>
798 <xsd:element name="Clipboard" type="TClipboard"/>
799 <xsd:element name="Guest" type="TGuest"/>
800 <xsd:element name="GuestProperties" type="TGuestProperties" minOccurs="0">
801 <xsd:unique name="THardware-GuestProperties-GuestProperty">
802 <xsd:selector xpath="vb:GuestProperty"/>
803 <xsd:field xpath="@name"/>
804 </xsd:unique>
805 </xsd:element>
806 </xsd:all>
807 <xsd:attribute name="version" type="xsd:string" default="2"/>
808</xsd:complexType>
809
810<xsd:complexType name="TMachine">
811 <xsd:all>
812 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
813 <xsd:element name="Hardware" type="THardware"/>
814 <xsd:element name="StorageControllers" type="TStorageControllers"/>
815 <xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
816 <xsd:element name="Snapshot" type="TSnapshot" minOccurs="0"/>
817 </xsd:all>
818 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
819 <xsd:attribute name="nameSync" type="xsd:boolean" default="true"/>
820 <xsd:attribute name="OSType" type="TGuestOSType" use="required"/>
821 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
822 <xsd:attribute name="stateFile" type="TLocalFile"/>
823 <xsd:attribute name="currentSnapshot" type="TNonNullUUID"/>
824 <xsd:attribute name="snapshotFolder" type="TLocalFile"/>
825 <xsd:attribute name="lastStateChange" type="TPresentDateTimeUTC"/>
826 <xsd:attribute name="aborted" type="xsd:boolean" default="false"/>
827 <xsd:attribute name="currentStateModified" type="xsd:boolean" default="true"/>
828</xsd:complexType>
829
830<xsd:complexType name="TSnapshot">
831 <xsd:all>
832 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
833 <xsd:element name="Hardware" type="THardware"/>
834 <xsd:element name="StorageControllers" type="TStorageControllers"/>
835 <xsd:element name="Snapshots" minOccurs="0">
836 <xsd:complexType>
837 <xsd:sequence>
838 <xsd:element name="Snapshot" type="TSnapshot" minOccurs="0" maxOccurs="unbounded"/>
839 </xsd:sequence>
840 </xsd:complexType>
841 </xsd:element>
842 </xsd:all>
843 <xsd:attribute name="name" type="xsd:token" use="required"/>
844 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
845 <xsd:attribute name="timeStamp" type="TPresentDateTimeUTC" use="required"/>
846 <xsd:attribute name="stateFile" type="TLocalFile"/>
847</xsd:complexType>
848
849<xsd:complexType name="TVirtualBox" abstract="true">
850 <xsd:choice>
851 <xsd:element name="Global" type="TGlobal"/>
852 <xsd:element name="Machine" type="TMachine">
853 <!-- @currentSnapshot must refer to an existing Snapshot/@uuid -->
854 <xsd:key name="snapshot">
855 <xsd:selector xpath=".//vb:Snapshot"/>
856 <xsd:field xpath="@uuid"/>
857 </xsd:key>
858 <xsd:keyref name="currentSnapshot" refer="vb:snapshot">
859 <xsd:selector xpath="."/>
860 <xsd:field xpath="@currentSnapshot"/>
861 </xsd:keyref>
862 </xsd:element>
863 </xsd:choice>
864</xsd:complexType>
865
866</xsd:schema>
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette