VirtualBox

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

Last change on this file since 1218 was 1218, checked in by vboxsync, 18 years ago

Implemented binding the RDP server to a specific interface.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 22.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 * InnoTek VirtualBox Settings Schema
7 * Common definitions
8
9 * Copyright (C) 2006 InnoTek Systemberatung GmbH
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 as published by the Free Software Foundation,
15 * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
16 * distribution. VirtualBox OSE is distributed in the hope that it will
17 * be useful, but WITHOUT ANY WARRANTY of any kind.
18 *
19 * If you received this file as part of a commercial VirtualBox
20 * distribution, then only the terms of your commercial VirtualBox
21 * license agreement apply instead of the previous paragraph.
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 InnoTek VirtualBox Settings Schema (common definitions).
35 Copyright (c) 2004-2007 InnoTek Systemberatung GmbH.
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="TUInt64">
57 <xsd:restriction base="xsd:string">
58 <xsd:pattern value="0x[A-Fa-f0-9]{1,16}"/>
59 </xsd:restriction>
60</xsd:simpleType>
61
62<xsd:simpleType name="TLocalFile">
63 <xsd:restriction base="xsd:string">
64 <xsd:pattern value=".+"/>
65 </xsd:restriction>
66</xsd:simpleType>
67
68<xsd:simpleType name="TDiskType">
69 <xsd:restriction base="xsd:token">
70 <xsd:enumeration value="HD"/>
71 <xsd:enumeration value="DVD"/>
72 <xsd:enumeration value="FD"/>
73 </xsd:restriction>
74</xsd:simpleType>
75
76<xsd:simpleType name="TDeviceType">
77 <xsd:restriction base="xsd:token">
78 <xsd:enumeration value="None"/>
79 <xsd:enumeration value="Floppy"/>
80 <xsd:enumeration value="DVD"/>
81 <xsd:enumeration value="HardDisk"/>
82 <xsd:enumeration value="Network"/>
83 </xsd:restriction>
84</xsd:simpleType>
85
86<xsd:simpleType name="TUSBDeviceFilterAction">
87 <xsd:restriction base="xsd:token">
88 <xsd:enumeration value="Ignore"/>
89 <xsd:enumeration value="Hold"/>
90 </xsd:restriction>
91</xsd:simpleType>
92
93<xsd:simpleType name="TNonEmptyString">
94 <xsd:restriction base="xsd:string">
95 <xsd:pattern value=".+"/>
96 </xsd:restriction>
97</xsd:simpleType>
98
99<xsd:simpleType name="TPresentDateTimeUTC">
100 <xsd:restriction base="xsd:dateTime">
101 <xsd:minInclusive value="2005-01-01T00:00:00Z"/>
102 <xsd:maxInclusive value="199999999-12-31T23:59:59Z"/>
103 <xsd:pattern value=".+-.+-.+T.+:.+:[0-9]{2}Z"/>
104 </xsd:restriction>
105</xsd:simpleType>
106
107<xsd:simpleType name="TGuestOSType">
108 <xsd:restriction base="xsd:string">
109 <xsd:enumeration value="unknown"/>
110 <xsd:enumeration value="dos"/>
111 <xsd:enumeration value="win31"/>
112 <xsd:enumeration value="win95"/>
113 <xsd:enumeration value="win98"/>
114 <xsd:enumeration value="winme"/>
115 <xsd:enumeration value="winnt4"/>
116 <xsd:enumeration value="win2k"/>
117 <xsd:enumeration value="winxp"/>
118 <xsd:enumeration value="win2k3"/>
119 <xsd:enumeration value="winvista"/>
120 <xsd:enumeration value="os2warp3"/>
121 <xsd:enumeration value="os2warp4"/>
122 <xsd:enumeration value="os2warp45"/>
123 <xsd:enumeration value="linux22"/>
124 <xsd:enumeration value="linux24"/>
125 <xsd:enumeration value="linux26"/>
126 <xsd:enumeration value="freebsd"/>
127 <xsd:enumeration value="openbsd"/>
128 <xsd:enumeration value="netbsd"/>
129 <xsd:enumeration value="netware"/>
130 <xsd:enumeration value="solaris"/>
131 <xsd:enumeration value="l4"/>
132 </xsd:restriction>
133</xsd:simpleType>
134
135<!--- @todo (dmik) capitalize enum values on next format change! -->
136<!--- @todo (dmik) change "null" to None" -->
137<xsd:simpleType name="TVRDPAuthType">
138 <xsd:restriction base="xsd:string">
139 <xsd:enumeration value="null"/>
140 <xsd:enumeration value="guest"/>
141 <xsd:enumeration value="external"/>
142 </xsd:restriction>
143</xsd:simpleType>
144
145<xsd:simpleType name="TNetworkAdapterType">
146 <xsd:restriction base="xsd:string">
147 <xsd:enumeration value="Am79C970A"/>
148 <xsd:enumeration value="Am79C973"/>
149 </xsd:restriction>
150</xsd:simpleType>
151
152<xsd:simpleType name="TTriStateBoolType">
153 <xsd:restriction base="xsd:string">
154 <xsd:enumeration value="false"/>
155 <xsd:enumeration value="true"/>
156 <xsd:enumeration value="default"/>
157 </xsd:restriction>
158</xsd:simpleType>
159
160<!--- @todo (dmik) capitalize enum values on next format change! -->
161<xsd:simpleType name="TBIOSBootMenuModeType">
162 <xsd:restriction base="xsd:string">
163 <xsd:enumeration value="disabled"/>
164 <xsd:enumeration value="menuonly"/>
165 <xsd:enumeration value="messageandmenu"/>
166 </xsd:restriction>
167</xsd:simpleType>
168
169<xsd:simpleType name="TClipboardMode">
170 <xsd:restriction base="xsd:string">
171 <xsd:enumeration value="Disabled"/>
172 <xsd:enumeration value="HostToGuest"/>
173 <xsd:enumeration value="GuestToHost"/>
174 <xsd:enumeration value="Bidirectional"/>
175 </xsd:restriction>
176</xsd:simpleType>
177
178<!--
179// Complex types
180/////////////////////////////////////////////////////////////////////////
181-->
182
183<xsd:complexType name="TImage">
184 <xsd:attribute name="src" type="TLocalFile" use="required"/>
185 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
186</xsd:complexType>
187
188<xsd:complexType name="TVirtualDiskImage">
189 <xsd:attribute name="filePath" type="TLocalFile" use="required"/>
190</xsd:complexType>
191
192<xsd:complexType name="TDiffHardDisk">
193 <xsd:sequence>
194 <xsd:element name="VirtualDiskImage" type="TVirtualDiskImage"/>
195 <xsd:element name="DiffHardDisk" type="TDiffHardDisk" minOccurs="0" maxOccurs="unbounded"/>
196 </xsd:sequence>
197 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
198</xsd:complexType>
199
200<xsd:complexType name="THardDisk">
201 <xsd:sequence>
202 <xsd:choice>
203 <xsd:element name="VirtualDiskImage" type="TVirtualDiskImage"/>
204 <xsd:element name="ISCSIHardDisk">
205 <xsd:complexType>
206 <xsd:attribute name="server" type="xsd:token" use="required"/>
207 <xsd:attribute name="port" type="xsd:unsignedShort" default="0"/>
208 <xsd:attribute name="target" type="xsd:token" use="required"/>
209 <xsd:attribute name="lun" type="TUInt64" default="0x0"/>
210 <xsd:attribute name="userName" type="xsd:token"/>
211 <xsd:attribute name="password" type="xsd:token"/>
212 </xsd:complexType>
213 </xsd:element>
214 <xsd:element name="VMDKImage">
215 <xsd:complexType>
216 <xsd:attribute name="filePath" type="TLocalFile" use="required"/>
217 </xsd:complexType>
218 </xsd:element>
219 <xsd:element name="PhysicalVolume">
220 <xsd:complexType>
221 <xsd:attribute name="path" type="TLocalFile" use="required"/>
222 </xsd:complexType>
223 </xsd:element>
224 </xsd:choice>
225 <xsd:element name="DiffHardDisk" type="TDiffHardDisk" minOccurs="0" maxOccurs="unbounded"/>
226 </xsd:sequence>
227 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
228 <xsd:attribute name="type" use="required">
229 <xsd:simpleType>
230 <xsd:restriction base="xsd:string">
231 <xsd:enumeration value="normal"/>
232 <xsd:enumeration value="immutable"/>
233 <xsd:enumeration value="writethrough"/>
234 </xsd:restriction>
235 </xsd:simpleType>
236 </xsd:attribute>
237</xsd:complexType>
238
239<xsd:complexType name="TImageRef">
240 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
241</xsd:complexType>
242
243<xsd:complexType name="THostDrive">
244 <xsd:attribute name="src" type="TLocalFile" use="required"/>
245</xsd:complexType>
246
247<xsd:complexType name="TUSBDeviceFilter">
248 <!--- @todo (dmik) make all attr names likeThis on next format change! -->
249 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
250 <xsd:attribute name="active" type="xsd:boolean" use="required"/>
251 <xsd:attribute name="vendorid" type="xsd:token"/>
252 <xsd:attribute name="productid" type="xsd:token"/>
253 <xsd:attribute name="revision" type="xsd:token"/>
254 <xsd:attribute name="manufacturer" type="xsd:token"/>
255 <xsd:attribute name="product" type="xsd:token"/>
256 <xsd:attribute name="serialnumber" type="xsd:token"/>
257 <xsd:attribute name="port" type="xsd:token"/>
258 <xsd:attribute name="remote" type="xsd:token"/>
259</xsd:complexType>
260
261<xsd:complexType name="THostUSBDeviceFilter">
262 <xsd:complexContent>
263 <xsd:extension base="TUSBDeviceFilter">
264 <xsd:attribute name="action" type="TUSBDeviceFilterAction" use="required"/>
265 </xsd:extension>
266 </xsd:complexContent>
267</xsd:complexType>
268
269<xsd:complexType name="TSystemProperties">
270 <xsd:attribute name="defaultVDIFolder" type="TLocalFile"/>
271 <xsd:attribute name="defaultMachineFolder" type="TLocalFile"/>
272 <!--- @todo (dmik) remove defaultSavedStateFolder on next format change! -->
273 <xsd:attribute name="defaultSavedStateFolder" type="TLocalFile"/>
274 <xsd:attribute name="remoteDisplayAuthLibrary" type="TLocalFile"/>
275 <xsd:attribute name="HWVirtExEnabled" type="xsd:boolean"/>
276</xsd:complexType>
277
278<xsd:complexType name="TExtraData">
279 <xsd:sequence>
280 <xsd:element name="ExtraDataItem" minOccurs="0" maxOccurs="unbounded">
281 <xsd:complexType>
282 <xsd:attribute name="name" type="xsd:token" use="required"/>
283 <xsd:attribute name="value" type="xsd:string" use="required"/>
284 </xsd:complexType>
285 </xsd:element>
286 </xsd:sequence>
287</xsd:complexType>
288
289<xsd:complexType name="TGlobal">
290 <xsd:all>
291 <xsd:element name="MachineRegistry">
292 <xsd:complexType>
293 <xsd:sequence>
294 <xsd:element name="MachineEntry" minOccurs="0" maxOccurs="unbounded">
295 <xsd:complexType>
296 <xsd:attribute name="src" type="TLocalFile" use="required"/>
297 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
298 </xsd:complexType>
299 </xsd:element>
300 </xsd:sequence>
301 </xsd:complexType>
302 </xsd:element>
303 <xsd:element name="DiskRegistry">
304 <xsd:complexType>
305 <xsd:all>
306 <xsd:element name="HardDisks" minOccurs="0">
307 <xsd:complexType>
308 <xsd:sequence>
309 <xsd:element name="HardDisk" type="THardDisk" minOccurs="0" maxOccurs="unbounded"/>
310 </xsd:sequence>
311 </xsd:complexType>
312 </xsd:element>
313 <xsd:element name="DVDImages" minOccurs="0">
314 <xsd:complexType>
315 <xsd:sequence>
316 <xsd:element name="Image" type="TImage" minOccurs="0" maxOccurs="unbounded"/>
317 </xsd:sequence>
318 </xsd:complexType>
319 </xsd:element>
320 <xsd:element name="FloppyImages" minOccurs="0">
321 <xsd:complexType>
322 <xsd:sequence>
323 <xsd:element name="Image" type="TImage" minOccurs="0" maxOccurs="unbounded"/>
324 </xsd:sequence>
325 </xsd:complexType>
326 </xsd:element>
327 </xsd:all>
328 </xsd:complexType>
329 </xsd:element>
330 <xsd:element name="USBDeviceFilters">
331 <xsd:complexType>
332 <xsd:sequence>
333 <xsd:element name="DeviceFilter" type="THostUSBDeviceFilter"
334 minOccurs="0" maxOccurs="unbounded"/>
335 </xsd:sequence>
336 </xsd:complexType>
337 </xsd:element>
338 <xsd:element name="SystemProperties" type="TSystemProperties"/>
339 <xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
340 </xsd:all>
341</xsd:complexType>
342
343<xsd:complexType name="THWVirtExType">
344 <xsd:attribute name="enabled" type="TTriStateBoolType" default="default"/>
345</xsd:complexType>
346
347<xsd:complexType name="TCPU">
348 <xsd:sequence>
349 <xsd:element name="HardwareVirtEx" type="THWVirtExType" minOccurs="0"/>
350 </xsd:sequence>
351</xsd:complexType>
352
353<xsd:complexType name="TBoot">
354 <xsd:sequence>
355 <xsd:element name="Order" minOccurs="0" maxOccurs="unbounded">
356 <xsd:complexType>
357 <xsd:attribute name="position" use="required">
358 <xsd:simpleType>
359 <xsd:restriction base="xsd:unsignedInt">
360 <xsd:minInclusive value="1"/>
361 <xsd:maxInclusive value="4"/>
362 </xsd:restriction>
363 </xsd:simpleType>
364 </xsd:attribute>
365 <xsd:attribute name="device" type="TDeviceType" use="required"/>
366 </xsd:complexType>
367 </xsd:element>
368 </xsd:sequence>
369</xsd:complexType>
370
371<xsd:complexType name="TDisplay">
372 <xsd:attribute name="VRAMSize" use="required">
373 <xsd:simpleType>
374 <xsd:restriction base="xsd:unsignedInt">
375 <xsd:minInclusive value="1"/>
376 <xsd:maxInclusive value="128"/>
377 </xsd:restriction>
378 </xsd:simpleType>
379 </xsd:attribute>
380</xsd:complexType>
381
382<xsd:complexType name="TRemoteDisplay">
383 <xsd:attribute name="enabled" type="xsd:boolean"/>
384 <xsd:attribute name="port" type="xsd:unsignedInt" default="0"/>
385 <xsd:attribute name="netAddress" type="xsd:token" default="0"/>
386 <xsd:attribute name="authType" type="TVRDPAuthType" default="null"/>
387 <xsd:attribute name="authTimeout" type="xsd:unsignedInt" default="5000"/>
388</xsd:complexType>
389
390<xsd:complexType name="TBIOS">
391 <xsd:all>
392 <xsd:element name="ACPI">
393 <xsd:complexType>
394 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
395 </xsd:complexType>
396 </xsd:element>
397 <xsd:element name="IOAPIC" minOccurs="0">
398 <xsd:complexType>
399 <xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
400 </xsd:complexType>
401 </xsd:element>
402 <xsd:element name="Logo" minOccurs="0">
403 <xsd:complexType>
404 <xsd:attribute name="fadeIn" type="xsd:boolean" default="true"/>
405 <xsd:attribute name="fadeOut" type="xsd:boolean" default="true"/>
406 <xsd:attribute name="displayTime" type="xsd:unsignedInt" default="0"/>
407 <xsd:attribute name="imagePath" type="TLocalFile"/>
408 </xsd:complexType>
409 </xsd:element>
410 <xsd:element name="BootMenu" minOccurs="0">
411 <xsd:complexType>
412 <xsd:attribute name="mode" type="TBIOSBootMenuModeType" default="messageandmenu"/>
413 </xsd:complexType>
414 </xsd:element>
415 </xsd:all>
416</xsd:complexType>
417
418<xsd:complexType name="THardDiskAttachment">
419 <xsd:attribute name="hardDisk" type="TNonNullUUID"/>
420 <xsd:attribute name="bus" use="required">
421 <xsd:simpleType>
422 <xsd:restriction base="xsd:token">
423 <xsd:enumeration value="ide0"/>
424 <xsd:enumeration value="ide1"/>
425 </xsd:restriction>
426 </xsd:simpleType>
427 </xsd:attribute>
428 <xsd:attribute name="device" use="required">
429 <xsd:simpleType>
430 <xsd:restriction base="xsd:token">
431 <xsd:enumeration value="master"/>
432 <xsd:enumeration value="slave"/>
433 </xsd:restriction>
434 </xsd:simpleType>
435 </xsd:attribute>
436</xsd:complexType>
437
438<xsd:complexType name="THardDiskAttachments">
439 <xsd:sequence>
440 <xsd:element name="HardDiskAttachment" type="THardDiskAttachment"
441 minOccurs="0" maxOccurs="unbounded"/>
442 </xsd:sequence>
443</xsd:complexType>
444
445<xsd:complexType name="TDVDDrive">
446 <xsd:choice minOccurs="0">
447 <xsd:element name="Image" type="TImageRef"/>
448 <xsd:element name="HostDrive" type="THostDrive"/>
449 </xsd:choice>
450 <xsd:attribute name="passthrough" type="xsd:boolean" default="false"/>
451</xsd:complexType>
452
453<xsd:complexType name="TFloppyDrive">
454 <xsd:choice minOccurs="0">
455 <xsd:element name="Image" type="TImageRef"/>
456 <xsd:element name="HostDrive" type="THostDrive"/>
457 </xsd:choice>
458 <xsd:attribute name="enabled" type="xsd:boolean" default="true"/>
459</xsd:complexType>
460
461<xsd:complexType name="TUSBController">
462 <xsd:sequence>
463 <xsd:element name="Device" minOccurs="0" maxOccurs="unbounded">
464 <xsd:complexType>
465 <xsd:attribute name="vendorid" type="xsd:unsignedShort" use="required"/>
466 <xsd:attribute name="productid" type="xsd:unsignedShort" use="required"/>
467 <xsd:attribute name="revision" type="xsd:unsignedShort" use="required"/>
468 <xsd:attribute name="serialhash" type="TUInt64" use="required"/>
469 <xsd:attribute name="manufacturer" type="xsd:string"/>
470 <xsd:attribute name="product" type="xsd:string"/>
471 <xsd:attribute name="serialnumber" type="xsd:string"/>
472 <xsd:attribute name="comment" type="xsd:string"/>
473 </xsd:complexType>
474 </xsd:element>
475 <xsd:element name="DeviceFilter" type="TUSBDeviceFilter"
476 minOccurs="0" maxOccurs="unbounded"/>
477 </xsd:sequence>
478 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
479</xsd:complexType>
480
481<xsd:complexType name="TAdapter">
482 <xsd:attribute name="type" type="TNetworkAdapterType" default="Am79C970A"/>
483 <xsd:attribute name="slot" use="required">
484 <xsd:simpleType>
485 <xsd:restriction base="xsd:unsignedInt">
486 <xsd:minInclusive value="0"/>
487 <xsd:maxExclusive value="4"/>
488 </xsd:restriction>
489 </xsd:simpleType>
490 </xsd:attribute>
491 <xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
492 <xsd:attribute name="MACAddress">
493 <xsd:simpleType>
494 <xsd:restriction base="xsd:hexBinary">
495 <xsd:length value="6"/>
496 </xsd:restriction>
497 </xsd:simpleType>
498 </xsd:attribute>
499 <xsd:attribute name="cable" type="xsd:boolean" use="required"/>
500 <xsd:attribute name="trace" type="xsd:boolean" default="false"/>
501 <xsd:attribute name="tracefile" type="xsd:string"/>
502</xsd:complexType>
503
504<xsd:complexType name="TSharedFolder">
505 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
506 <xsd:attribute name="hostPath" type="TLocalFile" use="required"/>
507</xsd:complexType>
508
509<xsd:complexType name="TSharedFolders">
510 <xsd:sequence>
511 <xsd:element name="SharedFolder" type="TSharedFolder" minOccurs="0" maxOccurs="unbounded"/>
512 </xsd:sequence>
513</xsd:complexType>
514
515<xsd:complexType name="TClipboard">
516 <xsd:attribute name="mode" type="TClipboardMode" use="required"/>
517</xsd:complexType>
518
519<xsd:complexType name="THardware">
520 <xsd:all>
521 <xsd:element name="CPU" type="TCPU" minOccurs = "0"/>
522 <xsd:element name="Memory" type="TMemory"/>
523 <xsd:element name="Boot" type="TBoot">
524 <xsd:unique name="THardware-Boot-Order">
525 <xsd:selector xpath="vb:Order"/>
526 <xsd:field xpath="@position"/>
527 </xsd:unique>
528 </xsd:element>
529 <xsd:element name="Display" type="TDisplay"/>
530 <xsd:element name="RemoteDisplay" type="TRemoteDisplay" minOccurs="0"/>
531 <xsd:element name="BIOS" type="TBIOS"/>
532 <xsd:element name="DVDDrive" type="TDVDDrive"/>
533 <xsd:element name="FloppyDrive" type="TFloppyDrive"/>
534 <xsd:element name="USBController" type="TUSBController"/>
535 <xsd:element name="Network" type="TNetwork">
536 <xsd:unique name="THardware-Network-Adapter">
537 <xsd:selector xpath="vb:Adapter"/>
538 <xsd:field xpath="@slot"/>
539 </xsd:unique>
540 </xsd:element>
541 <xsd:element name="AudioAdapter" type="TAudioAdapter"/>
542 <!--- @todo (dmik) remove minOccurs="0" from SharedFolders on next format change! -->
543 <xsd:element name="SharedFolders" type="TSharedFolders" minOccurs="0">
544 <xsd:unique name="THardware-SharedFolders-SharedFolder">
545 <xsd:selector xpath="vb:SharedFolder"/>
546 <xsd:field xpath="@name"/>
547 </xsd:unique>
548 </xsd:element>
549 <!--- @todo (dmik) remove minOccurs="0" from SharedFolders on next format change! -->
550 <xsd:element name="Clipboard" type="TClipboard" minOccurs="0"/>
551 </xsd:all>
552</xsd:complexType>
553
554<xsd:complexType name="TMachine">
555 <xsd:all>
556 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
557 <xsd:element name="Hardware" type="THardware"/>
558 <xsd:element name="HardDiskAttachments" type="THardDiskAttachments"/>
559 <xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
560 <xsd:element name="Snapshot" type="TSnapshot" minOccurs="0"/>
561 </xsd:all>
562 <xsd:attribute name="name" type="TNonEmptyString" use="required"/>
563 <xsd:attribute name="nameSync" type="xsd:boolean" default="true"/>
564 <xsd:attribute name="OSType" type="TGuestOSType" use="required"/>
565 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
566 <xsd:attribute name="stateFile" type="TLocalFile"/>
567 <xsd:attribute name="currentSnapshot" type="TNonNullUUID"/>
568 <xsd:attribute name="snapshotFolder" type="TLocalFile"/>
569 <!--- @todo (dmik) make lastStateChange required on next format change! -->
570 <xsd:attribute name="lastStateChange" type="TPresentDateTimeUTC"/>
571 <xsd:attribute name="aborted" type="xsd:boolean"/>
572 <xsd:attribute name="currentStateModified" type="xsd:boolean" default="true"/>
573</xsd:complexType>
574
575<xsd:complexType name="TSnapshot">
576 <xsd:all>
577 <xsd:element name="Description" type="xsd:string" minOccurs="0"/>
578 <xsd:element name="Hardware" type="THardware"/>
579 <xsd:element name="HardDiskAttachments" type="THardDiskAttachments"/>
580 <xsd:element name="Snapshots" minOccurs="0">
581 <xsd:complexType>
582 <xsd:sequence>
583 <xsd:element name="Snapshot" type="TSnapshot" minOccurs="0" maxOccurs="unbounded"/>
584 </xsd:sequence>
585 </xsd:complexType>
586 </xsd:element>
587 </xsd:all>
588 <xsd:attribute name="name" type="xsd:token" use="required"/>
589 <xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
590 <xsd:attribute name="timeStamp" type="TPresentDateTimeUTC" use="required"/>
591 <xsd:attribute name="stateFile" type="TLocalFile"/>
592</xsd:complexType>
593
594<xsd:complexType name="TVirtualBox" abstract="true">
595 <xsd:choice>
596 <xsd:element name="Global" type="TGlobal"/>
597 <xsd:element name="Machine" type="TMachine">
598 <!-- @currentSnapshot must refer to an existing Snapshot/@uuid -->
599 <xsd:key name="snapshot">
600 <xsd:selector xpath=".//vb:Snapshot"/>
601 <xsd:field xpath="@uuid"/>
602 </xsd:key>
603 <xsd:keyref name="currentSnapshot" refer="vb:snapshot">
604 <xsd:selector xpath="."/>
605 <xsd:field xpath="@currentSnapshot"/>
606 </xsd:keyref>
607 </xsd:element>
608 </xsd:choice>
609</xsd:complexType>
610
611</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