<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
    targetNamespace="http://services.mobile.de/schema/ad"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:ref="http://services.mobile.de/schema/resource"
    xmlns:ad="http://services.mobile.de/schema/ad"
    xmlns:seller="http://services.mobile.de/schema/seller"
    xmlns:financing="http://services.mobile.de/schema/common/financing-1.0"
    xmlns:leasing="http://services.mobile.de/schema/common/leasing-1.0"
    elementFormDefault="qualified">

    <xs:import namespace="http://services.mobile.de/schema/resource" schemaLocation="resource-1.0.xsd"/>
    <xs:import namespace="http://services.mobile.de/schema/seller" schemaLocation="seller-1.0.xsd"/>
    <xs:import namespace="http://services.mobile.de/schema/common/financing-1.0" schemaLocation="common/financing-1.0.xsd"/>
    <xs:import namespace="http://services.mobile.de/schema/common/leasing-1.0" schemaLocation="common/leasing-1.0.xsd"/>

    <xs:element name="ad">
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence>
                        <xs:element ref="ad:creation-date" minOccurs="0"/>
                        <xs:element ref="ad:modification-date" minOccurs="0"/>
                        <xs:element ref="ad:detail-page" minOccurs="0"/>
                        <xs:element ref="ad:seller-inventory-key" minOccurs="0"/>
                        <xs:element ref="ad:vehicle"/>
                        <xs:element ref="ad:highlights" minOccurs="0"/>
                        <xs:element ref="ad:description" minOccurs="0"/>
                        <xs:element ref="ad:enrichedDescription" minOccurs="0"/>
                        <xs:element ref="ad:images" minOccurs="0"/>
                        <xs:element ref="ad:price"/>
                        <xs:element ref="ad:price-rating" minOccurs="0"/>
                        <xs:element ref="financing:financing" minOccurs="0"/>
                        <xs:element ref="leasing:leasing" minOccurs="0"/>
                        <xs:element ref="seller:seller"/>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

    <xs:element name="creation-date">
        <xs:annotation>
            <xs:documentation>Creation date: Timestamp representing the date of creation of the ad, format
                YYYY-MM-DDThh:mm:ss.OZ
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:dateTime"/>
            <xs:attribute name="renewed" use="optional" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="modification-date">
        <xs:annotation>
            <xs:documentation>Modification date: Timestamp representing the date of last modification of the ad, format
                YYYY-MM-DDThh:mm:ss.OZ
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:dateTime"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="detail-page">
        <xs:annotation>
            <xs:documentation>URL of the ad's detail page on mobile.de</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="url" use="required" type="xs:anyURI"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="seller-inventory-key">
        <xs:annotation>
            <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="vehicle">
        <xs:annotation>
            <xs:documentation>This element consists of various other elements describing the vehicle.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:class"/>
                <xs:element ref="ad:category"/>
                <xs:element ref="ad:make"/>
                <xs:element ref="ad:model" minOccurs="0"/>
                <xs:element ref="ad:model-description"/>
                <xs:element ref="ad:damage-and-unrepaired" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>See http://services.mobile.de/manual/damage.html.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element ref="ad:accident-damaged" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>See http://services.mobile.de/manual/damage.html.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element ref="ad:roadworthy" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>See http://services.mobile.de/manual/damage.html.</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element ref="ad:features" minOccurs="0"/>
                <xs:element ref="ad:specifics"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="class" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>The GENERAL classification of vehicles e.g. Car or Motorbike. See
                https://services.mobile.de/refdata/classes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="category" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>The DETAILED classification of vehicles e.g. Cabrio or Limousine. See
                https://services.mobile.de/refdata/classes/{class-key}/categories for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="make" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Make of the vehicle e.g. Mercedes, Toyota. See
                https://services.mobile.de/refdata/classes/{class-key}/makes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="model" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Model of the vehicle e.g. X5, Prius. See
                https://services.mobile.de/refdata/classes/{class-key}/makes/{make-key}/models for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="model-description">
        <xs:annotation>
            <xs:documentation>Detailed description of the model. Also used as ad title. Example: Golf III always parked
                in garage.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="damage-and-unrepaired">
        <xs:annotation>
            <xs:documentation>field which describes if the vehicle has an considerable unrepaired damage
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="accident-damaged">
        <xs:annotation>
            <xs:documentation>the vehicle once had an accident which may be repaired or not</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="roadworthy">
        <xs:annotation>
            <xs:documentation>the vehicle is ready to drive</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="features">
        <xs:annotation>
            <xs:documentation>Contains all possible features for a vehicle e.g. ESP, sunroof. See
                https://services.mobile.de/refdata/classes/{class-key}/features for possible values.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence>
                        <xs:element ref="ad:feature" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

    <xs:element name="feature" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Describes a single feature e.g. ESP, sunroof. See
                https://services.mobile.de/refdata/classes/{class-key}/features for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="specifics">
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:exterior-color" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:mileage" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:exhaust-inspection" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:general-inspection" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:door-count" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:first-registration" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:emission-class" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:emission-fuel-consumption" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:emission-sticker" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:fuel" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:power" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:kba" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:schwacke-code" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:gearbox" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:climatisation" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:licensed-weight" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:axles" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:load-capacity" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:num-seats" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:operating-hours" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:installation-height" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:lifting-capacity" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:lifting-height" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:construction-year" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:construction-date" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:cubic-capacity" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:driving-mode" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:driving-cab" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:condition" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:usage-type" minOccurs="0" maxOccurs="1"/>
                <xs:choice minOccurs="0">
                    <xs:element ref="ad:delivery-date"/>
                    <xs:element ref="ad:delivery-period"/>
                </xs:choice>
                <xs:element ref="ad:wheel-formula" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:number-of-bunks" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:hydraulic-installation" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:europallet-storage-spaces" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:dimension" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:shipping-volume" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:loading-space" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:identification-number" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:interior-color" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:interior-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:airbag" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:number-of-previous-owners" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:countryVersion" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:videoUrl" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:parking-assistants" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:used-car-seal" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:speed-control" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:radio" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:daytime-running-lamps" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:sliding-door-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:headlight-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:bending-lights-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:breakdown-service" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:battery" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:trailer-coupling-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:trim-line" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:model-range" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:first-models-production-date" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:battery-capacity" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:wltp-values" minOccurs="0"/>
                <xs:element ref="ad:number-of-gears" minOccurs="0"/>
                <xs:element ref="ad:frame-shape" minOccurs="0"/>
                <xs:element ref="ad:frame-material" minOccurs="0"/>
                <xs:element ref="ad:battery-position" minOccurs="0"/>
                <xs:element ref="ad:battery-manufacturer" minOccurs="0"/>
                <xs:element ref="ad:motor-position" minOccurs="0"/>
                <xs:element ref="ad:bike-suitable-for" minOccurs="0"/>
                <xs:element ref="ad:bike-gear-type" minOccurs="0"/>
                <xs:element ref="ad:wheel-size" minOccurs="0"/>
                <xs:element ref="ad:frame-height" minOccurs="0"/>
                <xs:element ref="ad:battery-capacity-wh" minOccurs="0"/>
                <xs:element ref="ad:frame-number" minOccurs="0"/>
                <xs:element ref="ad:weight" minOccurs="0"/>
                <xs:element ref="ad:equivalent-all-electric-range" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:range" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:emissions" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:consumptions" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:cost-model" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:last-maintenance-date" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:last-maintenance-mileage" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:trailer-load-braked" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:trailer-load-unbraked" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:max-nose-weight" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:operating-weight" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:seat-height" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:cylinder" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:fuel-tank-volume" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:heating" minOccurs="0"/>
                <xs:element ref="ad:standing-height" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:payload" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:seatbelt-seats" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:length-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:height-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:drive-type" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:wheel-base" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:on-customer-behalf" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:bidirectional-charging-types" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:battery-warranty" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:battery-state-of-health" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:charging-time" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:charging-time-fast" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:plug-types" minOccurs="0" maxOccurs="1"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:complexType name="dimensionDataType">
        <xs:annotation>
            <xs:documentation>Represent a cubical dimension.</xs:documentation>
        </xs:annotation>
        <xs:attribute name="length" use="required" type="xs:unsignedInt">
            <xs:annotation>
                <xs:documentation>Length. Notation in mm, integer.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="width" use="required" type="xs:unsignedInt">
            <xs:annotation>
                <xs:documentation>Width. Notation in mm, integer.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="height" use="required" type="xs:unsignedInt">
            <xs:annotation>
                <xs:documentation>Height. Notation in mm, integer.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:element name="dimension" type="ad:dimensionDataType">
        <xs:annotation>
            <xs:documentation>The external dimension of the vehicle.</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="loading-space" type="ad:dimensionDataType">
        <xs:annotation>
            <xs:documentation>The loading space dimensions.</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="wheel-formula" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>The actuation of the vehicle. See https://services.mobile.de/refdata/wheelformulas
                for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="number-of-bunks">
        <xs:annotation>
            <xs:documentation>The number of bunks. Only for Motorhome.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="hydraulic-installation" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Indicates the type of hydraulic installation. See
                https://services.mobile.de/refdata/hydraulicinstallations for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="europallet-storage-spaces">
        <xs:annotation>
            <xs:documentation>Information about how many europallets suit in the vehicle.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="shipping-volume">
        <xs:annotation>
            <xs:documentation>The loading space volume. Notation in cubic meter, integer.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="identification-number">
        <xs:annotation>
            <xs:documentation>The vehicle identification number (aka VIN or FIN). See
                http://en.wikipedia.org/wiki/Vehicle_Identification_Number
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="exterior-color">
        <xs:annotation>
            <xs:documentation>The mobile.de color name. This is a fixed set of colors. Sub-element
                manufacturer-color-name is a free text field for color. See
                https://services.mobile.de/refdata/colors for possible values.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence>
                        <xs:element ref="ad:metalic" minOccurs="0"/>
                        <xs:element ref="ad:manufacturer-color-name" minOccurs="0"/>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

    <xs:element name="metalic">
        <xs:annotation>
            <xs:documentation>Is it a metallic color?</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="manufacturer-color-name">
        <xs:annotation>
            <xs:documentation>The manufacturer-color-name. Free text.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="mileage">
        <xs:annotation>
            <xs:documentation>Amount of mileage on the clock, integer.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="exhaust-inspection">
        <xs:annotation>
            <xs:documentation>Timestamp representing the date of the last exhaust-inspection. Format: mm.yyyy
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:gYearMonth"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="general-inspection">
        <xs:annotation>
            <xs:documentation>Timestamp representing the date of the last general-inspection. Format: mm.yyyy
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:gYearMonth"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="delivery-date">
        <xs:annotation>
            <xs:documentation>Date where the vehicle is ready to be delivered to the customer. Format: tt.mm.yyyy
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:date"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="delivery-period">
        <xs:annotation>
            <xs:documentation>Time-span until the vehicle is ready to be delivered. Information only for new vehicles
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="door-count" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Number of doors. See https://services.mobile.de/refdata/doorcounts for possible
                values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="first-registration">
        <xs:annotation>
            <xs:documentation>Timestamp representing the date of the first-registration. Format: mm.yyyy
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:gYearMonth"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="emission-sticker" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Emission sticker for German low emission zones (Feinstaubplakette für Umweltzone). See
                https://services.mobile.de/refdata/emissionstickers for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="emission-fuel-consumption">
        <xs:annotation>
            <xs:documentation>This element contains various fuel consumption and emission values.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="envkv-compliant" use="optional" type="xs:boolean">
                <xs:annotation>
                    <xs:documentation>Do the given values comply with the German PKW-EnvKV act (Verordnung über
                        Verbraucherinformationen zu Kraftstoffverbrauch, CO2-Emissionen und Stromverbrauch neuer
                        Personenkraftwagen)?
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="energy-efficiency-class" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>best (A+++, A++, A+, A, B, C, D, E, F or G) worst</xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="co2-emission" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>CO2 emission. The unit is g/km. Is set to 0 for fuel type electricity.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="inner" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>Fuel consumption urban. For write usecases, the unit is derived from the fuel type
                        (kg/100km for CNG and l/100km for all others) and is ignored for fuel type electricity.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="outer" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>Fuel consumption extra urban. For write usecases, the unit is derived from the
                        fuel type (kg/100km for CNG and l/100km for all others) and is ignored for fuel type
                        electricity.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="combined" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>Fuel consumption combined (urban and extra urban). For write usecases, the unit is
                        derived from the fuel type (kg/100km for CNG, kWh/100km for electricity and l/100km for all
                        others).
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="unit" use="optional">
                <xs:annotation>
                    <xs:documentation>The unit of the consumption values. This element is only readonly. For write
                        usecases the unit is derived from the fuel type.
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="LITER_PER_100_KM">
                            <xs:annotation>
                                <xs:documentation>For all liquid fuel types including LPG.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="CUBIC_METER_PER_100_KM">
                            <xs:annotation>
                                <xs:documentation>Deprecated. Was for fuel type CNG.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="KILOGRAMM_PER_100_KM">
                            <xs:annotation>
                                <xs:documentation>For fuel type CNG.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="KILOWATT_HOUR_PER_100_KM">
                            <xs:annotation>
                                <xs:documentation>For fuel type electricity.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="petrol-type" use="optional">
                <xs:annotation>
                    <xs:documentation>When you want to provide EnVKV compliant values, for fuel type petrol, you have to
                        specify the exact petrol type, that the consumption values are based on.
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="NORMAL">
                            <xs:annotation>
                                <xs:documentation>RON 91</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="SUPER">
                            <xs:annotation>
                                <xs:documentation>RON 95</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="SUPER_PLUS">
                            <xs:annotation>
                                <xs:documentation>RON 98</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="combined-power-consumption" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>Combined electric energy consumption for plugin hybrid. The unit is kWh/100km.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="equivalent-all-electric-range">
        <xs:annotation>
            <xs:documentation>WLTP electric range (EAER) in km (only for plugin hybrids).</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="range">
        <xs:annotation>
            <xs:documentation>electric range in km.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="combined">
        <xs:annotation>
            <xs:documentation>
                Combined (in case of plugin hybrid: combined/weighted) emission values
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="co2" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>CO₂ emission value in g/100 km.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="co2-class" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>CO₂ class. This property can have the following values: A, B, C, D, E, F, G.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="discharged">
        <xs:annotation>
            <xs:documentation>
                Emission values for plugin hybrid when battery is discharged
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="co2" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>CO₂ emission value in g/100 km.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="co2-class" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>CO₂ class. This property can have the following values: A, B, C, D, E, F, G.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="emissions">
        <xs:annotation>
            <xs:documentation>
                Emission values, legally required for new cars
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:combined" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:discharged" minOccurs="0" maxOccurs="1"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="weighted-combined-fuel">
        <xs:annotation>
            <xs:documentation>WLTP weighted/combined fuel consumption value. Only for plugin hybrid.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="weighted-combined-power">
        <xs:annotation>
            <xs:documentation>WLTP weighted/combined power consumption value. Only for plugin hybrid.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="fuel-consumption">
        <xs:annotation>
            <xs:documentation>
                WLTP fuel consumption values. In case of plugin hybrid: fuel consumption when battery is discharged.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="combined" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption combined
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="city" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption inner city
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="rural" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption on country roads
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="suburban" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption in the outskirts of city
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="highway" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption on highways
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="power-consumption">
        <xs:annotation>
            <xs:documentation>
                WLTP electrical power consumption values. For plugin hybrid: electrical power consumption in pure electric mode.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="combined" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption combined
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="city" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption inner city
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="rural" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption on country roads
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="suburban" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption in the outskirts of city
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="highway" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>energy consumption on highways
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>


    <xs:element name="consumptions">
        <xs:annotation>
            <xs:documentation>
                Energy consumption values.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:weighted-combined-fuel" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:weighted-combined-power" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:fuel-consumption" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:power-consumption" minOccurs="0" maxOccurs="1"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="fuel-price">
        <xs:annotation>
            <xs:documentation>Assumed price of fuel in EUR per liter or kg</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="optional" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="power-price">
        <xs:annotation>
            <xs:documentation>Assumed price of electricity in EUR per kWh</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="optional" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="consumption-costs">
        <xs:annotation>
            <xs:documentation>Predicted energy (fuel and power) costs in EUR for an annual mileage of 15,000 km.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="optional" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="consumption-price-year">
        <xs:annotation>
            <xs:documentation>Year of which the average fuel and power prices are based upon</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="optional" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="tax">
        <xs:annotation>
            <xs:documentation>Annual vehicle tax in EUR</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="optional" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="time-frame">
        <xs:annotation>
            <xs:documentation>
                The time frame for the predictions being made.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="from" use="optional" type="xs:unsignedInt"/>
            <xs:attribute name="till" use="optional" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="co2-costs">
        <xs:annotation>
            <xs:documentation>
                Predicted CO₂ costs in EUR
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element name="low" minOccurs="0" maxOccurs="1">
                    <xs:annotation>
                        <xs:documentation>
                            for low CO₂ prices
                        </xs:documentation>
                    </xs:annotation>
                    <xs:complexType>
                        <xs:attribute name="base-price" use="optional" type="xs:string"/>
                        <xs:attribute name="accumulated" use="optional" type="xs:string"/>
                    </xs:complexType>
                </xs:element>
                <xs:element name="high" minOccurs="0" maxOccurs="1">
                    <xs:annotation>
                        <xs:documentation>
                            for high CO₂ prices
                        </xs:documentation>
                    </xs:annotation>
                    <xs:complexType>
                        <xs:attribute name="base-price" use="optional" type="xs:string"/>
                        <xs:attribute name="accumulated" use="optional" type="xs:string"/>
                    </xs:complexType>
                </xs:element>
                <xs:element name="middle" minOccurs="0" maxOccurs="1">
                    <xs:annotation>
                        <xs:documentation>
                            for middle CO₂ prices
                        </xs:documentation>
                    </xs:annotation>
                    <xs:complexType>
                        <xs:attribute name="base-price" use="optional" type="xs:string"/>
                        <xs:attribute name="accumulated" use="optional" type="xs:string"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="cost-model">
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:fuel-price" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:power-price" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:consumption-costs" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:consumption-price-year" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:tax" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:time-frame" minOccurs="0" maxOccurs="1"/>
                <xs:element ref="ad:co2-costs" minOccurs="0" maxOccurs="1"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="emission-class" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>EURO 1, 2, 3, 4, .... See
                https://services.mobile.de/refdata/emissionclasses for
                possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="fuel" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Type of fuel. See https://services.mobile.de/refdata/fuels for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="kba">
        <xs:annotation>
            <xs:documentation>Germany only: Classification of makes and models, given by Kraftfahrtbundesamt (KBA)
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="hsn" use="required">
                <xs:annotation>
                    <xs:documentation>Germany only: Herstellerschlüsselnummer</xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="tsn" use="required">
                <xs:annotation>
                    <xs:documentation>Germany only: Typschlüsselnummer</xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="power">
        <xs:annotation>
            <xs:documentation>Power of the vehicle. Notation in KW, integer</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="schwacke-code">
        <xs:annotation>
            <xs:documentation>Classification of makes and models given by Eurotax/Schwacke</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="gearbox" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Stickshift, automatic? See https://services.mobile.de/refdata/gearboxes for possible
                values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="climatisation" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information on the climatisation of the vehicle. See
                https://services.mobile.de/refdata/climatisations for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="licensed-weight">
        <xs:annotation>
            <xs:documentation>Notation in kg, integer. Information only for commercial vehicles.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="axles">
        <xs:annotation>
            <xs:documentation>Number of axles, integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="load-capacity">
        <xs:annotation>
            <xs:documentation>Notation in kg, integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="num-seats">
        <xs:annotation>
            <xs:documentation>number of seats. Information only for Buses</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="operating-hours">
        <xs:annotation>
            <xs:documentation>Notation integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="installation-height">
        <xs:annotation>
            <xs:documentation>Notation in mm, integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="lifting-capacity">
        <xs:annotation>
            <xs:documentation>Notation in kg, integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="lifting-height">
        <xs:annotation>
            <xs:documentation>Notation in mm, integer. Information only for commercial vehicles</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="construction-year">
        <xs:annotation>
            <xs:documentation>Format: yyyy. Information only for commercial vehicles </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="construction-date">
        <xs:annotation>
            <xs:documentation>The day when the vehicle was built</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:date"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="cubic-capacity">
        <xs:annotation>
            <xs:documentation>Cubic-capacity of the engine. Notation integer. Information only for motorcycles
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="driving-mode" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Does the motorbike have a chain or something else? See
                https://services.mobile.de/refdata/drivingmodes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="driving-cab" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the cab of the truck. See
                https://services.mobile.de/refdata/drivingcabs for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="condition" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Is the vehicle new or used? See https://services.mobile.de/refdata/conditions for
                possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="usage-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Type of used car. See https://services.mobile.de/refdata/usagetypes for possible
                values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="highlights">
        <xs:annotation>
            <xs:documentation>Short notes highlighting key features of the vehicle</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element name="highlight" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="description" type="xs:string">
        <xs:annotation>
            <xs:documentation>Closer description of the vehicle</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="enrichedDescription" type="xs:string">
        <xs:annotation>
            <xs:documentation>FOR INTERNAL USE ONLY. There is no guarantee that this element is present in future.
                Please contact us if you need this for some reason.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="images">
        <xs:annotation>
            <xs:documentation>Images of the vehicle</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" ref="ad:image" minOccurs="0"/>
            </xs:sequence>
            <xs:attribute name="count" use="optional" type="xs:unsignedInt"/>
            <xs:attribute name="gallery-url" use="optional" type="xs:anyURI"/>
            <xs:attribute name="url" use="required" type="xs:anyURI"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="image">
        <xs:annotation>
            <xs:documentation>TODO</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" ref="ad:representation" minOccurs="0"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="price-rating">
        <xs:annotation>
            <xs:documentation>Information about price rating</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:label"/>
                <xs:element ref="ad:label-ranges"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="label">
        <xs:annotation>
            <xs:documentation>Price rating label</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="key" use="required">
                <xs:annotation>
                    <xs:documentation>Assigned label for the price rating of the vehicle. See
                        https://services.mobile.de/refdata/pricerating for possible values.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="label-ranges">
        <xs:annotation>
            <xs:documentation>Price ranges of all possible labels</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" ref="ad:label-range"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="label-range">
        <xs:annotation>
            <xs:documentation>The price range for assigning a label</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="key" use="required">
                <xs:annotation>
                    <xs:documentation>Name of the price rating label. See
                        https://services.mobile.de/refdata/pricerating for possible values.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="from" use="required" type="xs:decimal"/>
            <xs:attribute name="to" use="required" type="xs:decimal"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="representation">
        <xs:annotation>
            <xs:documentation>TODO</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="size" use="required">
                <xs:annotation>
                    <xs:documentation>The size of the picture.</xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ICON">
                            <xs:annotation>
                                <xs:documentation>The icon url used in the searchresult.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="S">
                            <xs:annotation>
                                <xs:documentation>The 'SMALL' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="M">
                            <xs:annotation>
                                <xs:documentation>The 'MEDIUM' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="L">
                            <xs:annotation>
                                <xs:documentation>The 'LARGE' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="XL">
                            <xs:annotation>
                                <xs:documentation>The 'EXTRALARGE' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="XXL">
                            <xs:annotation>
                                <xs:documentation>The 'EXTRA EXTRALARGE' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="XXXL">
                            <xs:annotation>
                                <xs:documentation>The 'EXTRA EXTRA EXTRALARGE' picture size.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="url" type="xs:anyURI"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="price">
        <xs:annotation>
            <xs:documentation>Information on the price of the vehicle</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:dealer-price-amount" minOccurs="0"/>
                <xs:element ref="ad:consumer-price-amount"/>
                <xs:element ref="ad:net" minOccurs="0"/>
                <xs:element ref="ad:vatable"/>
                <xs:element ref="ad:vat-rate" minOccurs="0"/>
                <xs:element ref="ad:included-delivery-costs" minOccurs="0"/>
            </xs:sequence>
            <xs:attribute name="currency" use="required" type="xs:NCName">
                <xs:annotation>
                    <xs:documentation>Information in which currency the price is stated </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="type" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="FIXED">
                            <xs:annotation>
                                <xs:documentation>Information about the price type. Only for FSBO ads available
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="NEGOTIABLE">
                            <xs:annotation>
                                <xs:documentation>Information about the price type. Only for FSBO ads available
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="ON_REQUEST">
                            <xs:annotation>
                                <xs:documentation>For trucks only. Please contact the seller for the actual price value.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="dealer-price-amount">
        <xs:annotation>
            <xs:documentation>The dealer-price-amount (gross price).</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:decimal"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="consumer-price-amount">
        <xs:annotation>
            <xs:documentation>The consumer-price-amount (gross price).</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:decimal"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="net">
        <xs:annotation>
            <xs:documentation>This is deprecated and has no function. It never worked anyway.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="vatable">
        <xs:annotation>
            <xs:documentation>Means that the price is vatable</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="vat-rate">
        <xs:annotation>
            <xs:documentation>Notation in floating points or integer</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:decimal"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="included-delivery-costs">
        <xs:annotation>
            <xs:documentation>Information, if the delivery-costs are included in the price</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="interior-color" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the color of the interior of the vehicle. See
                https://services.mobile.de/refdata/interiorcolors for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="interior-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the material used in the interior of the vehicle. See
                https://services.mobile.de/refdata/interiortypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="airbag" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the airbags of the vehicle. See
                https://services.mobile.de/refdata/airbags for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="number-of-previous-owners" type="xs:unsignedInt">
        <xs:annotation>
            <xs:documentation>Information about the number of previous owners of the vehicle</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="countryVersion" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>ISO-3166-1 alpha-2 code of the country for which the vehicle was built. See
                https://services.mobile.de/refdata/countryversion for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="videoUrl" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>video Url of the ad</xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="parking-assistants">
        <xs:annotation>
            <xs:documentation>Information about the parking assistants of the vehicle. See
                https://services.mobile.de/refdata/parkingassistants for possible values.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence>
                        <xs:element ref="ad:parking-assistant" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

    <xs:element name="parking-assistant" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the parking assistants of the vehicle. See
                https://services.mobile.de/refdata/plugtypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="used-car-seal" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about Used-Car-Seals. Not visible to all users. See
                https://services.mobile.de/refdata/sites/{site-key}/classes/{class-key}/usedcarseals for possible
                values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="speed-control" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the speed control of the vehicle. See
                https://services.mobile.de/refdata/speedcontrols for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="radio">
        <xs:annotation>
            <xs:documentation>Information about the radio of the vehicle. See
                https://services.mobile.de/refdata/radiotypes for possible values.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="ad:radio-type" minOccurs="0" maxOccurs="unbounded"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="radio-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the radio of the vehicle. See
                https://services.mobile.de/refdata/radiotypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="daytime-running-lamps" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the type of daytime running lamps of the vehicle. See
                https://services.mobile.de/refdata/daytimerunninglamps for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="sliding-door-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the type of sliding door of the vehicle. See
                https://services.mobile.de/refdata/slidingdoortypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="headlight-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the headlight types of the vehicle. See
                https://services.mobile.de/refdata/headlighttypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="bending-lights-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the type of cornering/bending lights of the vehicle. See
                https://services.mobile.de/refdata/bendinglightstypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="breakdown-service" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the type of breakdown service kit of the vehicle. See
                https://services.mobile.de/refdata/breakdownservices for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="battery" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the battery of the electric vehicle. See
                https://services.mobile.de/refdata/batteries for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="trailer-coupling-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the trailer coupling type of the vehicle. See
                https://services.mobile.de/refdata/trailercouplingtypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>

    <xs:element name="trim-line">
        <xs:annotation>
            <xs:documentation>Information about the trim line a.k.a feature sets (Ausstattungslinie) of the vehicle.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="model-range">
        <xs:annotation>
            <xs:documentation>Information about the model range a.k.a. Baureihe of the vehicle.</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="first-models-production-date">
        <xs:annotation>
            <xs:documentation>Timestamp representing the date of the first models production date. Format: mm.yyyy
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:gYearMonth"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="battery-capacity">
        <xs:annotation>
            <xs:documentation>Battery capacity of the vehicle. Notation in kWh, integer</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="wltp-values">
        <xs:annotation>
            <xs:documentation>Information on Worldwide harmonized Light Duty Test Procedure</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:all>
                <xs:element name="consumption-fuel-combined" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Combined fuel consumption for all nonelectric vehicles, optional for plugin hybrids, number in l/100km (natural gas (CNG) in kg/100km)
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="co2-emission-combined" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Amount of carbon dioxide emissions in g/km for all vehicles, optional for plugin hybrids.
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="consumption-power-combined" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Combined power consumption for electric vehicles in in kWh/100km
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="electric-range" type="xs:unsignedInt" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Electric Range for plugin hybrids and electric vehicles in km
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="consumption-fuel-combined-weighted" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Weighted combined fuel consumption for plugin hybrids
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="consumption-power-combined-weighted" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Weighted combined power consumption for plugin hybrids in kWh/100km
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:element name="co2-emission-combined-weighted" type="xs:decimal" minOccurs="0">
                    <xs:annotation>
                        <xs:documentation>
                            Weighted amount of carbon dioxide emissions in g/km for plugin hybrids
                        </xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
    <xs:element name="number-of-gears">
        <xs:annotation>
            <xs:documentation>Information about the number of EBike gears, integer, Only for EBikes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="frame-shape" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame of the EBike. See
                https://services.mobile.de/refdata/frameshapes for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="frame-material" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame of the EBike. See
                https://services.mobile.de/refdata/framematerials for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="battery-position" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame material of the EBike. See
                https://services.mobile.de/refdata/batterypositions for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="battery-manufacturer" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame material of the EBike. See
                https://services.mobile.de/refdata/batterymanufacturers for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="motor-position" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame material of the EBike. See
                https://services.mobile.de/refdata/motorpositions for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="bike-suitable-for" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame material of the EBike. See
                https://services.mobile.de/refdata/bikesuitablefor for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="bike-gear-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the frame material of the EBike. See
                https://services.mobile.de/refdata/bikegeartypes for possible values. Only for EBikes
            </xs:documentation>
        </xs:annotation>
    </xs:element>
    <xs:element name="wheel-size">
        <xs:annotation>
            <xs:documentation>Information about the wheel size of EBike, Free text, Only for EBikes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="frame-height">
        <xs:annotation>
            <xs:documentation>Information about the number of EBike gears, integer, Only for EBikes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="battery-capacity-wh">
        <xs:annotation>
            <xs:documentation>Battery capacity of the EBike. Notation in Wh, integer, Only for EBikes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="frame-number">
        <xs:annotation>
            <xs:documentation>The number of EBike Frame, Free text, Only for EBikes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="weight">
        <xs:annotation>
            <xs:documentation>weight in kg</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:unsignedInt"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="last-maintenance-date">
        <xs:annotation>
            <xs:documentation>The last maintenance date of vehicle in ISO 8601 date e. g. 2016-07</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="last-maintenance-mileage">
        <xs:annotation>
            <xs:documentation>mileage as of last maintenance/service date</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="trailer-load-braked">
        <xs:annotation>
            <xs:documentation>maximum trailer load, braked</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="trailer-load-unbraked">
        <xs:annotation>
            <xs:documentation>maximum trailer load, unbraked</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="max-nose-weight">
        <xs:annotation>
            <xs:documentation>maximum weight or downward force from the caravan's hitch to the tow car's tow ball</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="operating-weight">
        <xs:annotation>
            <xs:documentation>operating weight in kg</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="seat-height">
        <xs:annotation>
            <xs:documentation>height of seats in mm</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="cylinder">
        <xs:annotation>
            <xs:documentation>amount of cylinders</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="fuel-tank-volume">
        <xs:annotation>
            <xs:documentation>volume of fuel tank in liters</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="heating">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="heating-type" maxOccurs="unbounded" minOccurs="0">
                    <xs:simpleType>
                        <xs:restriction base="xs:string"/>
                    </xs:simpleType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>


    <xs:element name="standing-height">
        <xs:annotation>
            <xs:documentation>standing height in cm</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="payload">
        <xs:annotation>
            <xs:documentation>maximum payload in kg</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="seatbelt-seats">
        <xs:annotation>
            <xs:documentation>amount of seats with seat belts</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="length-type">
        <xs:annotation>
            <xs:documentation>length type, possible enum values are L1, L2, L3, L4, L5</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="height-type">
        <xs:annotation>
            <xs:documentation>height type, possible enum values are H1, H2, H3</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="drive-type">
        <xs:annotation>
            <xs:documentation>drive type, possible values are FRONT, REAR, ALL_WHEEL</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="wheel-base">
        <xs:annotation>
            <xs:documentation>wheel base, possible enum values are SHORT, MIDDLE, LONG, EXTRA_LONG</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="on-customer-behalf">
        <xs:annotation>
            <xs:documentation>If the dealer sells vehicle on customer's behalf</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:boolean"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="bidirectional-charging-types">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="bidirectional-charging-type" maxOccurs="unbounded" minOccurs="0">
                    <xs:simpleType>
                        <xs:restriction base="xs:string"/>
                    </xs:simpleType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

    <xs:element name="battery-warranty">
        <xs:annotation>
            <xs:documentation>
                Warranty conditions for EV batteries.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="years" use="optional" type="xs:int">
                <xs:annotation>
                    <xs:documentation>maximal number of years after first registration.</xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="mileage" use="optional" type="xs:int">
                <xs:annotation>
                    <xs:documentation>maximal number of kilometres</xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="battery-state-of-health">
        <xs:annotation>
            <xs:documentation>
                Health certificate and the extracted residual capacity for an EV battery.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="capacity" use="optional" type="xs:decimal">
                <xs:annotation>
                    <xs:documentation>Remaining capacity in percentage</xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="document-url" use="optional" type="xs:string">
                <xs:annotation>
                    <xs:documentation>Url for the uploaded certificate document which must be of media type pdf</xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:element name="charging-time">
        <xs:annotation>
            <xs:documentation>Normal charging time for EVs, in minutes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="charging-time-fast">
        <xs:annotation>
            <xs:documentation>Fast charging time for EVs, in minutes</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:int"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="plug-types">
        <xs:annotation>
            <xs:documentation>Information about the plug types of the vehicle. See
                https://services.mobile.de/refdata/plugtypes for possible values.
            </xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence>
                        <xs:element ref="ad:plug-type" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

    <xs:element name="plug-type" type="ref:resourceDataType">
        <xs:annotation>
            <xs:documentation>Information about the plug types of the vehicle. See
                https://services.mobile.de/refdata/plugtypes for possible values.
            </xs:documentation>
        </xs:annotation>
    </xs:element>


</xs:schema>
