<xs:documentation>Used for "currentJobModes" and "jobModes" data points of "clothesWasherDryerJobMode" ModuleClass. Manufacturers can define their own courses by setting this value to negative values.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- normal -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- quick -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- auto -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- delicates -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- heavyDuty -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumClothesWasherJobMode">
<xs:annotation>
<xs:documentation>Used for the "currentJobModes" and "jobModes" data points of the "clothesWasherJobMode" ModuleClass. Washing options such as water temperature and spin speed are decided to pre-set values upon selected washing course. Manufacturers can define their own courses by setting this value to negative values.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- normal -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- smallLoad -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- delicate -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- comforter -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- expressWash -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- cleanWash -->
<xs:enumerationvalue="6"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- kidsWear -->
<xs:enumerationvalue="7"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- workoutWears -->
<xs:enumerationvalue="8"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumCookerHoodJobMode">
<xs:annotation>
<xs:documentation>Used for the "currentJobMode" and "jobModes" DataPoints of the "cookerHoodJobMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- alwaysOn -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- intensive -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sensor -->
<xs:enumerationvalue="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumDehumidifierJobMode">
<xs:annotation>
<xs:documentation>Used for "currentJobMode" and "jobModes" data points of the "dehumidifierJobMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- smart -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- fast -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- silent -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- focus -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- clothes -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumDishWasherJobMode">
<xs:annotation>
<xs:documentation>Used for the "currentJobMode" and "jobModes" DataPoints of the "dishWasherJobMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- normalWash -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- intensiveWash -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- quickWash -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sensorWash -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- ecoWash -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- quietWash -->
<xs:enumerationvalue="6"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maintenanceWash -->
<xs:enumerationvalue="7"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumDisplayOrder">
<xs:annotation>
<xs:documentation>Used for the "displayOrder" data point of the "galleryMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- fixed -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sequence -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- loop -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- random -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumDisplayOrientation">
<xs:annotation>
<xs:documentation>Used for the "displayOrientation" data point of the "galleryMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- landscape -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- portrait -->
<xs:enumerationvalue="2"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumDoorState">
<xs:annotation>
<xs:documentation>Used for the "doorState" DataPoint of "doorStatus" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- closed -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- open -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- opening -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- closing -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- stopped -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumFoamStrength">
<xs:annotation>
<xs:documentation>Used for data points indicating the strength of a foam, for example, foaming milk from a coffee machine.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- low -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- high -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumGeneralLevel">
<xs:annotation>
<xs:documentation>Used for the "soilLevel" data point of the "washingCourseOption" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- light -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- normal -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- heavy -->
<xs:enumerationvalue="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumGeneralSpeed">
<xs:annotation>
<xs:documentation>Used for the "spinSpeed" data point of the "washingCourseOption" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- low -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- high -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- extraHigh -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumGeneralTemperature">
<xs:annotation>
<xs:documentation>Used for the "washTemp" data point of the "washingCourseOption" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- cold -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- warm -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- hot -->
<xs:enumerationvalue="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumGrainsLevel">
<xs:annotation>
<xs:documentation>Used for the "grainsRemaining" data point of the "grinder" ModuleClss. This type specifies a level for supplies that have a grain-aspect, for example.the level of remaining coffee beans in the grinder part of a coffee machine, or the desired level of coffee beans in this machine. The values for the level of a liquid is covered by "hd:enumLiquidLevel".</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- low -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- high -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumGrindCoarseness">
<xs:annotation>
<xs:documentation>Used for the coarseness data points of the "grinder" ModuleClass. This type specifies the level of coarseness of a solid after grinding, for example grinded coffee beans.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- ultrafine -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- fine -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- coarse -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- coarsest -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumHorizontalDirection">
<xs:annotation>
<xs:documentation>Used for the "horizontalDirection" and "supportedHorizontalDirection" of the "airflow" ModuleClass, indicating horizontal directions.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- auto -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- center -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- left -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- right -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumJobState">
<xs:annotation>
<xs:documentation>Used for the "currentJobState" and "jobStates" data points of the "runState" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- aborted -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- cancelled -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- completed -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- paused -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- pending -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- processing -->
<xs:enumerationvalue="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumLiquidLevel">
<xs:annotation>
<xs:documentation>Used for the "liquidLevel" and "liquidRemaining" data points in the respective "liquidLevel" and "liquidRemaining" ModuleClasses.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- low -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- high -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumLiquidLevel">
<xs:annotation>
<xs:documentation>Used for the "supportedMediaSources" data point of the "mediaSelect" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- tuner -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- component -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- composite -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- svideo -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- rgb -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- dvi -->
<xs:enumerationvalue="6"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- hdmi -->
<xs:enumerationvalue="7"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- displayPort -->
<xs:enumerationvalue="8"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- scart -->
<xs:enumerationvalue="9"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- externalStorage -->
<xs:enumerationvalue="10"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- network -->
<xs:enumerationvalue="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumMachineState">
<xs:annotation>
<xs:documentation>Used for the "currentMachineState" and "machineStates" data points of the "runState" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- idle -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- preActive -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- active -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- reserved -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- stopped -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- error -->
<xs:enumerationvalue="6"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- diagnostic -->
<xs:enumerationvalue="7"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- test -->
<xs:enumerationvalue="8"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maintenance -->
<xs:enumerationvalue="9"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- clear -->
<xs:enumerationvalue="10"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- charging -->
<xs:enumerationvalue="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumOzoneStatus">
<xs:annotation>
<xs:documentation>Used for the "ozoneStatus" property of the "ozoneMeter" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- good -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- normal -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- bad -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- veryBad -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumPlayerMode">
<xs:annotation>
<xs:documentation>Used for the "currentMode" and "supportedModes" data points in the "playerControl" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- stop -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- play -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- pause -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- resume -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- record -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- rewind -->
<xs:enumerationvalue="6"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- fastRewind -->
<xs:enumerationvalue="7"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- foreward -->
<xs:enumerationvalue="8"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- fastForward -->
<xs:enumerationvalue="9"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- searchPrevious -->
<xs:enumerationvalue="10"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- searchNext -->
<xs:enumerationvalue="11"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumRobotCleanerJobMode">
<xs:annotation>
<xs:documentation>Used for the "currentJobMode" and "jobModes" data points of the "robotCleanerJobMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zigzag -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sectorBase -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- spot -->
<xs:enumerationvalue="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumSecurityMode">
<xs:annotation>
<xs:documentation>Used for the "currentSecurityMode" and "securityModes" data points of the "securityMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- active -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- armedAway -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- armedInstant -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- armedMaximum -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- armedNightStay -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- armedStay -->
<xs:enumerationvalue="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumSpinLevelStrength">
<xs:annotation>
<xs:documentation>Used for the "spinLevelStrength" data points of the "spinLevel" ModuleClass, indicating the strength of a spinLevel.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sensitive -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- weak -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- strong -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumSteamClosetJobMode">
<xs:annotation>
<xs:documentation>Used for "currentJobMode" and "jobModes" data points of the "steamClosetJobMode" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- reduceOdor -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- steamWrinkle -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- helpClean -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- gentleDry -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumTasteStrength">
<xs:annotation>
<xs:documentation>Used for the "strength" data point of the "brewing" ModuleClass, indicating strength of a drink taste, for example coffee strength.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sensitive -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- strong -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumTemperatureUnit">
<xs:annotation>
<xs:documentation>Used for the "unit" data point related to "temperature" and "temperatureAlarm" ModuleClass which contains temperature, indicating the units of the temperature.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- C -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- F -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- K -->
<xs:enumerationvalue="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumTone">
<xs:annotation>
<xs:documentation>Used for the "tone" data point of the "alarmSpeaker" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- fire -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- theft -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- emergency -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- doorbell -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- deviceFail -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumUvStatus">
<xs:annotation>
<xs:documentation>Used for the "uvStatus" data point of the "uvSensor" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- good -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- normal -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- bad -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- veryBad -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- danger -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumVerticalDirection">
<xs:annotation>
<xs:documentation>Used for the "verticalDirection" and "supportedVerticalDirection" data points of the “airFlow" ModuleClass, indicating vertical direction.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- auto -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- center -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- up -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- down -->
<xs:enumerationvalue="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumWaterFilterType">
<xs:annotation>
<xs:documentation>Used for the "filterType" data point of the "waterFilterType" ModuleClass.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- RO -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- UV -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- UF -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- AZ -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- SF -->
<xs:enumerationvalue="5"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumWaterFlowStrength">
<xs:annotation>
<xs:documentation>Used for the "waterLevelStrength" data point of the "waterFlow" ModuleClass, indicating the strength of a waterflow.</xs:documentation>
</xs:annotation>
<xs:restrictionbase="xs:integer">
<!-- zero -->
<xs:enumerationvalue="1"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- sensitive -->
<xs:enumerationvalue="2"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- weak -->
<xs:enumerationvalue="3"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- medium -->
<xs:enumerationvalue="4"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- strong -->
<xs:enumerationvalue="5"/>
</xs:restriction>
<xs:restrictionbase="xs:integer">
<!-- maximum -->
<xs:enumerationvalue="6"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleTypename="enumWeightUnit">
<xs:annotation>
<xs:documentation>Used for the “unit” data point related to all ModuleClass which contains weight, indicating the units of the weight.</xs:documentation>