VirtualBox-settings-common.xsd revision c3292191c1abeb1f732cd56b408901b87eddaa73
181e56d8b348d301d615ccf5465ae600fee2867berikabele<?xml version="1.0" encoding="UTF-8"?>
181e56d8b348d301d615ccf5465ae600fee2867berikabele<!--
181e56d8b348d301d615ccf5465ae600fee2867berikabele * :tabSize=2:indentSize=2:noTabs=true:
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele * :folding=explicit:collapseFolds=1:
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele *
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele * Sun xVM VirtualBox Settings Schema
5a58787efeb02a1c3f06569d019ad81fd2efa06end * Common definitions
5a58787efeb02a1c3f06569d019ad81fd2efa06end
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim Copyright (C) 2004-2008 Sun Microsystems, Inc.
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim This file is part of VirtualBox Open Source Edition (OSE), as
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim available from http://www.virtualbox.org. This file is free software;
5a58787efeb02a1c3f06569d019ad81fd2efa06end you can redistribute it and/or modify it under the terms of the GNU
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim General Public License (GPL) as published by the Free Software
52fff662005b1866a3ff09bb6c902800c5cc6dedjerenkrantz Foundation, in version 2 as it comes in the "COPYING" file of the
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim VirtualBox OSE distribution. VirtualBox OSE is distributed in the
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
5a58787efeb02a1c3f06569d019ad81fd2efa06end
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd Clara, CA 95054 USA or visit http://www.sun.com if you need
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim additional information or have any questions.
af84459fbf938e508fd10b01cb8d699c79083813takashi-->
7f5b59ccc63c0c0e3e678a168f09ee6a2f51f9d0nd
f3ec420152ca921e4c1ce77782f51b53f659018dnd<xsd:schema
f3ec420152ca921e4c1ce77782f51b53f659018dnd xmlns:xsd="http://www.w3.org/2001/XMLSchema"
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd xmlns="http://www.innotek.de/VirtualBox-settings"
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd xmlns:vb="http://www.innotek.de/VirtualBox-settings"
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele targetNamespace="http://www.innotek.de/VirtualBox-settings"
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim elementFormDefault="qualified"
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele>
5a58787efeb02a1c3f06569d019ad81fd2efa06end
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim<xsd:annotation>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:documentation xml:lang="en">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim Sun xVM VirtualBox Settings Schema (common definitions).
5a58787efeb02a1c3f06569d019ad81fd2efa06end Copyright (c) 2004-2008 Sun Microsystems, Inc.
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim </xsd:documentation>
5a58787efeb02a1c3f06569d019ad81fd2efa06end</xsd:annotation>
5a58787efeb02a1c3f06569d019ad81fd2efa06end
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele<!--
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele// Simple types
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim/////////////////////////////////////////////////////////////////////////
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele-->
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim<xsd:simpleType name="TUUID">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:restriction base="xsd:token">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <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}\}"/>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim </xsd:restriction>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele</xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim<xsd:simpleType name="TNonNullUUID">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:restriction base="TUUID">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:pattern value=".*[1-9A-Fa-f]+.*"/>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele </xsd:restriction>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele</xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele<xsd:simpleType name="TUInt8">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:union>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:simpleType>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:restriction base="xsd:unsignedByte">
5a58787efeb02a1c3f06569d019ad81fd2efa06end </xsd:restriction>
5a58787efeb02a1c3f06569d019ad81fd2efa06end </xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:restriction base="xsd:string">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:pattern value="0[xX][A-Fa-f0-9]{1,2}"/>
57d0156f7bbd9ea3a72342cf9912aba61d118702rbowen </xsd:restriction>
57d0156f7bbd9ea3a72342cf9912aba61d118702rbowen </xsd:simpleType>
57d0156f7bbd9ea3a72342cf9912aba61d118702rbowen </xsd:union>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele</xsd:simpleType>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele<xsd:simpleType name="TUInt16">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:union>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:simpleType>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:restriction base="xsd:unsignedShort">
5a58787efeb02a1c3f06569d019ad81fd2efa06end </xsd:restriction>
5a58787efeb02a1c3f06569d019ad81fd2efa06end </xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:restriction base="xsd:string">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:pattern value="0[xX][A-Fa-f0-9]{1,4}"/>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele </xsd:restriction>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele </xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele </xsd:union>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele</xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele<xsd:simpleType name="TUInt64Hex">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:restriction base="xsd:string">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:pattern value="0x[A-Fa-f0-9]{1,16}"/>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele </xsd:restriction>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele</xsd:simpleType>
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele<xsd:simpleType name="TLocalFile">
c8e71fab0ea4bc3f8cb07693d6917f6b4644fbdcerikabele <xsd:restriction base="xsd:string">
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim <xsd:pattern value=".+"/>
87ffb6e33f3cbef3b9bb406cc2d27039fa336eaatrawick </xsd:restriction>
5a58787efeb02a1c3f06569d019ad81fd2efa06end</xsd:simpleType>
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim<xsd:simpleType name="TDiskType">
af84459fbf938e508fd10b01cb8d699c79083813takashi <xsd:restriction base="xsd:token">
7f5b59ccc63c0c0e3e678a168f09ee6a2f51f9d0nd <xsd:enumeration value="HD"/>
f3ec420152ca921e4c1ce77782f51b53f659018dnd <xsd:enumeration value="DVD"/>
f3ec420152ca921e4c1ce77782f51b53f659018dnd <xsd:enumeration value="FD"/>
3b3b7fc78d1f5bfc2769903375050048ff41ff26nd </xsd:restriction>
eac602f079a7b6a1039df751710a2c734c5f67cenoirin</xsd:simpleType>
7add1372edb1ee95a2c4d1314df4c7567bda7c62jim
5a58787efeb02a1c3f06569d019ad81fd2efa06end<xsd:simpleType name="TDeviceType">
<xsd:restriction base="xsd:token">
<xsd:enumeration value="None"/>
<xsd:enumeration value="Floppy"/>
<xsd:enumeration value="DVD"/>
<xsd:enumeration value="HardDisk"/>
<xsd:enumeration value="Network"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TUSBDeviceFilterAction">
<xsd:restriction base="xsd:token">
<xsd:enumeration value="Ignore"/>
<xsd:enumeration value="Hold"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TNonEmptyString">
<xsd:restriction base="xsd:string">
<xsd:pattern value=".+"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TPresentDateTimeUTC">
<xsd:restriction base="xsd:dateTime">
<xsd:minInclusive value="1900-01-01T00:00:00Z"/>
<xsd:maxInclusive value="199999999-12-31T23:59:59Z"/>
<xsd:pattern value=".+-.+-.+T.+:.+:[0-9]{2}Z"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TGuestOSType">
<xsd:restriction base="xsd:string">
<!-- @todo on next format change, rename dos to DOS, win2k3 to Win2003 and
so on. Possibly also use prefixes that determine the platform family:
Win_31, Win_Vista, Linux_ArchLinux, Unix_FreeBSD and so on. -->
<xsd:enumeration value="unknown"/>
<xsd:enumeration value="dos"/>
<xsd:enumeration value="win31"/>
<xsd:enumeration value="win95"/>
<xsd:enumeration value="win98"/>
<xsd:enumeration value="winme"/>
<xsd:enumeration value="winnt4"/>
<xsd:enumeration value="win2k"/>
<xsd:enumeration value="winxp"/>
<xsd:enumeration value="win2k3"/>
<xsd:enumeration value="winvista"/>
<xsd:enumeration value="win2k8"/>
<xsd:enumeration value="os2warp3"/>
<xsd:enumeration value="os2warp4"/>
<xsd:enumeration value="os2warp45"/>
<xsd:enumeration value="ecs"/>
<xsd:enumeration value="linux22"/>
<xsd:enumeration value="linux24"/>
<xsd:enumeration value="linux26"/>
<xsd:enumeration value="archlinux"/>
<xsd:enumeration value="debian"/>
<xsd:enumeration value="opensuse"/>
<xsd:enumeration value="fedoracore"/>
<xsd:enumeration value="gentoo"/>
<xsd:enumeration value="mandriva"/>
<xsd:enumeration value="redhat"/>
<xsd:enumeration value="ubuntu"/>
<xsd:enumeration value="xandros"/>
<xsd:enumeration value="freebsd"/>
<xsd:enumeration value="openbsd"/>
<xsd:enumeration value="netbsd"/>
<xsd:enumeration value="netware"/>
<xsd:enumeration value="solaris"/>
<xsd:enumeration value="opensolaris"/>
<xsd:enumeration value="l4"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TVRDPAuthType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Null"/>
<xsd:enumeration value="Guest"/>
<xsd:enumeration value="External"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TNetworkAdapterType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Am79C970A"/>
<xsd:enumeration value="Am79C973"/>
<xsd:enumeration value="82540EM"/>
<xsd:enumeration value="82543GC"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TTriStateBoolType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="false"/>
<xsd:enumeration value="true"/>
<xsd:enumeration value="default"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TBIOSBootMenuModeType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Disabled"/>
<xsd:enumeration value="MenuOnly"/>
<xsd:enumeration value="MessageAndMenu"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TIDEControllerType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="PIIX3"/>
<xsd:enumeration value="PIIX4"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TClipboardMode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Disabled"/>
<xsd:enumeration value="HostToGuest"/>
<xsd:enumeration value="GuestToHost"/>
<xsd:enumeration value="Bidirectional"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="TPortMode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Disconnected"/>
<xsd:enumeration value="HostPipe"/>
<xsd:enumeration value="HostDevice"/>
</xsd:restriction>
</xsd:simpleType>
<!--
// Complex types
/////////////////////////////////////////////////////////////////////////
-->
<xsd:complexType name="TDiffHardDisk2">
<xsd:sequence>
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
<xsd:element name="HardDisk" type="TDiffHardDisk2" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
<xsd:attribute name="location" type="TLocalFile" use="required"/>
<xsd:attribute name="format" type="TNonEmptyString" use="required"/>
</xsd:complexType>
<xsd:complexType name="THardDisk2">
<xsd:complexContent>
<xsd:extension base="TDiffHardDisk2">
<xsd:attribute name="type" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="Normal"/>
<xsd:enumeration value="Immutable"/>
<xsd:enumeration value="Writethrough"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="TImage2">
<xsd:sequence>
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
<xsd:attribute name="location" type="TLocalFile" use="required"/>
</xsd:complexType>
<xsd:complexType name="TImageRef">
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
</xsd:complexType>
<xsd:complexType name="THostDrive">
<xsd:attribute name="src" type="TLocalFile" use="required"/>
</xsd:complexType>
<xsd:complexType name="TUSBDeviceFilter">
<xsd:attribute name="name" type="TNonEmptyString" use="required"/>
<xsd:attribute name="active" type="xsd:boolean" use="required"/>
<xsd:attribute name="vendorId" type="xsd:token"/>
<xsd:attribute name="productId" type="xsd:token"/>
<xsd:attribute name="revision" type="xsd:token"/>
<xsd:attribute name="manufacturer" type="xsd:token"/>
<xsd:attribute name="product" type="xsd:token"/>
<xsd:attribute name="serialNumber" type="xsd:token"/>
<xsd:attribute name="port" type="xsd:token"/>
<xsd:attribute name="remote" type="xsd:token"/>
<xsd:attribute name="maskedInterfaces" type="xsd:unsignedInt" default="0"/>
</xsd:complexType>
<xsd:complexType name="THostUSBDeviceFilter">
<xsd:complexContent>
<xsd:extension base="TUSBDeviceFilter">
<xsd:attribute name="action" type="TUSBDeviceFilterAction" use="required"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="TSystemProperties">
<xsd:attribute name="defaultMachineFolder" type="TLocalFile"/>
<xsd:attribute name="defaultHardDiskFolder" type="TLocalFile"/>
<xsd:attribute name="remoteDisplayAuthLibrary" type="TLocalFile"/>
<xsd:attribute name="webServiceAuthLibrary" type="TLocalFile"/>
<xsd:attribute name="HWVirtExEnabled" type="xsd:boolean"/>
<xsd:attribute name="LogHistoryCount" type="xsd:unsignedInt" default="3"/>
</xsd:complexType>
<xsd:complexType name="TExtraData">
<xsd:sequence>
<xsd:element name="ExtraDataItem" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="name" type="xsd:token" use="required"/>
<xsd:attribute name="value" type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TGlobal">
<xsd:all>
<xsd:element name="MachineRegistry">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MachineEntry" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="src" type="TLocalFile" use="required"/>
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="MediaRegistry">
<xsd:complexType>
<xsd:all>
<xsd:element name="HardDisks" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="HardDisk" type="THardDisk2" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="DVDImages" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Image" type="TImage2" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="FloppyImages" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Image" type="TImage2" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:element>
<xsd:element name="USBDeviceFilters">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="DeviceFilter" type="THostUSBDeviceFilter"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SystemProperties" type="TSystemProperties"/>
<xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="THWVirtExType">
<xsd:attribute name="enabled" type="TTriStateBoolType" default="default"/>
</xsd:complexType>
<xsd:complexType name="THWVirtExNestedPagingType">
<xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="THWVirtExVPIDType">
<xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TPAEType">
<xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TCPUCount">
<xsd:attribute name="CPUCount">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="63"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="TCPU">
<xsd:sequence>
<xsd:element name="HardwareVirtEx" type="THWVirtExType" minOccurs="0"/>
<xsd:element name="HardwareVirtExNestedPaging" type="THWVirtExNestedPagingType" minOccurs="0"/>
<xsd:element name="HardwareVirtExVPID" type="THWVirtExVPIDType" minOccurs="0"/>
<xsd:element name="PAE" type="TPAEType" minOccurs="0"/>
<xsd:element name="CPUCount" type="TCPUCount" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TBoot">
<xsd:sequence>
<xsd:element name="Order" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:attribute name="position" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="device" type="TDeviceType" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TDisplay">
<xsd:attribute name="VRAMSize" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="128"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="MonitorCount" default="1">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:maxInclusive value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="TRemoteDisplay">
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="port" type="xsd:unsignedInt" default="0"/>
<xsd:attribute name="netAddress" type="xsd:token" default=""/>
<xsd:attribute name="authType" type="TVRDPAuthType" default="Null"/>
<xsd:attribute name="authTimeout" type="xsd:unsignedInt" default="5000"/>
<xsd:attribute name="allowMultiConnection" type="xsd:boolean" default="false"/>
<xsd:attribute name="reuseSingleConnection" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TBIOS">
<xsd:all>
<xsd:element name="ACPI">
<xsd:complexType>
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="IOAPIC" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="Logo" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="fadeIn" type="xsd:boolean" default="true"/>
<xsd:attribute name="fadeOut" type="xsd:boolean" default="true"/>
<xsd:attribute name="displayTime" type="xsd:unsignedInt" default="0"/>
<xsd:attribute name="imagePath" type="TLocalFile"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="BootMenu" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="mode" type="TBIOSBootMenuModeType" default="MessageAndMenu"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="TimeOffset" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="value" type="xsd:integer" default="0"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="PXEDebug" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="enabled" type="xsd:boolean" default="false"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="IDEController" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="type" use="required" type="TIDEControllerType"/>
</xsd:complexType>
</xsd:element>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="THardDiskAttachment">
<xsd:attribute name="hardDisk" type="TNonNullUUID" use="required"/>
<xsd:attribute name="bus" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:token">
<xsd:enumeration value="IDE"/>
<xsd:enumeration value="SATA"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="channel" type="xsd:unsignedInt" use="required"/>
<xsd:attribute name="device" type="xsd:unsignedInt" default="0"/>
</xsd:complexType>
<xsd:complexType name="THardDiskAttachments">
<xsd:sequence>
<xsd:element name="HardDiskAttachment" type="THardDiskAttachment"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TDVDDrive">
<xsd:choice minOccurs="0">
<xsd:element name="Image" type="TImageRef"/>
<xsd:element name="HostDrive" type="THostDrive"/>
</xsd:choice>
<xsd:attribute name="passthrough" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TFloppyDrive">
<xsd:choice minOccurs="0">
<xsd:element name="Image" type="TImageRef"/>
<xsd:element name="HostDrive" type="THostDrive"/>
</xsd:choice>
<xsd:attribute name="enabled" type="xsd:boolean" default="true"/>
</xsd:complexType>
<xsd:complexType name="TUSBController">
<xsd:sequence>
<xsd:element name="DeviceFilter" type="TUSBDeviceFilter"
minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="enabledEhci" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TAudioAdapterBase">
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="controller" default="AC97">
<xsd:simpleType>
<xsd:restriction base="xsd:token">
<xsd:enumeration value="AC97"/>
<xsd:enumeration value="SB16"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>
<xsd:complexType name="TNetworkAdapter">
<xsd:attribute name="type" type="TNetworkAdapterType" default="Am79C970A"/>
<xsd:attribute name="slot" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="0"/>
<xsd:maxExclusive value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="MACAddress">
<xsd:simpleType>
<xsd:restriction base="xsd:hexBinary">
<xsd:pattern value="[0-9A-Fa-f][02468ACEace][0-9A-Fa-f]{10}"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="cable" type="xsd:boolean" use="required"/>
<xsd:attribute name="speed" type="xsd:unsignedInt" default="1000000"/>
<xsd:attribute name="trace" type="xsd:boolean" default="false"/>
<xsd:attribute name="tracefile" type="xsd:string"/>
</xsd:complexType>
<xsd:complexType name="TUARTPort">
<xsd:attribute name="slot" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="0"/>
<xsd:maxExclusive value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="IRQ" type="TUInt8" use="required"/>
<xsd:attribute name="IOBase" type="TUInt16" use="required"/>
<xsd:attribute name="hostMode" type="TPortMode" use="required"/>
<xsd:attribute name="path" type="TLocalFile"/>
<xsd:attribute name="server" type="xsd:boolean" default="false"/>
</xsd:complexType>
<xsd:complexType name="TUART">
<xsd:sequence>
<xsd:element name="Port" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="TUARTPort">
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TLPTPort">
<xsd:attribute name="slot" use="required">
<xsd:simpleType>
<xsd:restriction base="xsd:unsignedInt">
<xsd:minInclusive value="0"/>
<xsd:maxExclusive value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="IRQ" type="TUInt8" use="required"/>
<xsd:attribute name="IOBase" type="TUInt16" use="required"/>
<xsd:attribute name="path" type="TLocalFile"/>
</xsd:complexType>
<xsd:complexType name="TLPT">
<xsd:sequence>
<xsd:element name="Port" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="TLPTPort">
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TSharedFolder">
<xsd:attribute name="name" type="TNonEmptyString" use="required"/>
<xsd:attribute name="hostPath" type="TLocalFile" use="required"/>
<xsd:attribute name="writable" type="xsd:boolean" default="true"/>
</xsd:complexType>
<xsd:complexType name="TSharedFolders">
<xsd:sequence>
<xsd:element name="SharedFolder" type="TSharedFolder" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TClipboard">
<xsd:attribute name="mode" type="TClipboardMode" use="required"/>
</xsd:complexType>
<xsd:complexType name="TGuest">
<xsd:attribute name="memoryBalloonSize" type="xsd:unsignedInt" default="0"/>
<xsd:attribute name="statisticsUpdateInterval" type="xsd:unsignedInt" default="0"/>
</xsd:complexType>
<xsd:complexType name="TSATAController">
<xsd:attribute name="enabled" type="xsd:boolean" use="required"/>
<xsd:attribute name="IDE0MasterEmulationPort" type="xsd:unsignedInt" default="0"/>
<xsd:attribute name="IDE0SlaveEmulationPort" type="xsd:unsignedInt" default="1"/>
<xsd:attribute name="IDE1MasterEmulationPort" type="xsd:unsignedInt" default="2"/>
<xsd:attribute name="IDE1SlaveEmulationPort" type="xsd:unsignedInt" default="3"/>
<xsd:attribute name="PortCount" type="xsd:unsignedInt" default="30"/>
</xsd:complexType>
<xsd:complexType name="TGuestProperty">
<xsd:attribute name="name" type="xsd:string" use="required"/>
<xsd:attribute name="value" type="xsd:string" use="required"/>
<xsd:attribute name="timestamp" type="xsd:unsignedLong" default="0"/>
<xsd:attribute name="flags" type="xsd:string" default=""/>
</xsd:complexType>
<xsd:complexType name="TGuestProperties">
<xsd:sequence>
<xsd:element name="GuestProperty" type="TGuestProperty" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="notificationPatterns" type="xsd:string" default=""/>
</xsd:complexType>
<xsd:complexType name="THardware">
<xsd:all>
<xsd:element name="CPU" type="TCPU" minOccurs="0"/>
<xsd:element name="Memory" type="TMemory"/>
<xsd:element name="Boot" type="TBoot">
<xsd:unique name="THardware-Boot-Order">
<xsd:selector xpath="vb:Order"/>
<xsd:field xpath="@position"/>
</xsd:unique>
</xsd:element>
<xsd:element name="Display" type="TDisplay"/>
<xsd:element name="RemoteDisplay" type="TRemoteDisplay" minOccurs="0"/>
<xsd:element name="BIOS" type="TBIOS"/>
<xsd:element name="DVDDrive" type="TDVDDrive"/>
<xsd:element name="FloppyDrive" type="TFloppyDrive"/>
<xsd:element name="USBController" type="TUSBController"/>
<xsd:element name="SATAController" type="TSATAController"/>
<xsd:element name="Network" type="TNetwork">
<xsd:unique name="THardware-Network-Adapter">
<xsd:selector xpath="vb:Adapter"/>
<xsd:field xpath="@slot"/>
</xsd:unique>
</xsd:element>
<xsd:element name="UART" type="TUART">
<xsd:unique name="THardware-UART-Port">
<xsd:selector xpath="vb:Port"/>
<xsd:field xpath="@slot"/>
</xsd:unique>
</xsd:element>
<xsd:element name="LPT" type="TLPT">
<xsd:unique name="THardware-LPT-Port">
<xsd:selector xpath="vb:Port"/>
<xsd:field xpath="@slot"/>
</xsd:unique>
</xsd:element>
<xsd:element name="AudioAdapter" type="TAudioAdapter"/>
<xsd:element name="SharedFolders" type="TSharedFolders">
<xsd:unique name="THardware-SharedFolders-SharedFolder">
<xsd:selector xpath="vb:SharedFolder"/>
<xsd:field xpath="@name"/>
</xsd:unique>
</xsd:element>
<xsd:element name="Clipboard" type="TClipboard"/>
<xsd:element name="Guest" type="TGuest"/>
<xsd:element name="GuestProperties" type="TGuestProperties" minOccurs="0">
<xsd:unique name="THardware-GuestProperties-GuestProperty">
<xsd:selector xpath="vb:GuestProperty"/>
<xsd:field xpath="@name"/>
</xsd:unique>
</xsd:element>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="TMachine">
<xsd:all>
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
<xsd:element name="Hardware" type="THardware"/>
<xsd:element name="HardDiskAttachments" type="THardDiskAttachments"/>
<xsd:element name="ExtraData" type="TExtraData" minOccurs="0"/>
<xsd:element name="Snapshot" type="TSnapshot" minOccurs="0"/>
</xsd:all>
<xsd:attribute name="name" type="TNonEmptyString" use="required"/>
<xsd:attribute name="nameSync" type="xsd:boolean" default="true"/>
<xsd:attribute name="OSType" type="TGuestOSType" use="required"/>
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
<xsd:attribute name="stateFile" type="TLocalFile"/>
<xsd:attribute name="currentSnapshot" type="TNonNullUUID"/>
<xsd:attribute name="snapshotFolder" type="TLocalFile"/>
<xsd:attribute name="lastStateChange" type="TPresentDateTimeUTC"/>
<xsd:attribute name="aborted" type="xsd:boolean" default="false"/>
<xsd:attribute name="currentStateModified" type="xsd:boolean" default="true"/>
</xsd:complexType>
<xsd:complexType name="TSnapshot">
<xsd:all>
<xsd:element name="Description" type="xsd:string" minOccurs="0"/>
<xsd:element name="Hardware" type="THardware"/>
<xsd:element name="HardDiskAttachments" type="THardDiskAttachments"/>
<xsd:element name="Snapshots" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Snapshot" type="TSnapshot" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:all>
<xsd:attribute name="name" type="xsd:token" use="required"/>
<xsd:attribute name="uuid" type="TNonNullUUID" use="required"/>
<xsd:attribute name="timeStamp" type="TPresentDateTimeUTC" use="required"/>
<xsd:attribute name="stateFile" type="TLocalFile"/>
</xsd:complexType>
<xsd:complexType name="TVirtualBox" abstract="true">
<xsd:choice>
<xsd:element name="Global" type="TGlobal"/>
<xsd:element name="Machine" type="TMachine">
<!-- @currentSnapshot must refer to an existing Snapshot/@uuid -->
<xsd:key name="snapshot">
<xsd:selector xpath=".//vb:Snapshot"/>
<xsd:field xpath="@uuid"/>
</xsd:key>
<xsd:keyref name="currentSnapshot" refer="vb:snapshot">
<xsd:selector xpath="."/>
<xsd:field xpath="@currentSnapshot"/>
</xsd:keyref>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:schema>