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

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

    <xs:element name="seller">
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ref:resourceDataType">
                    <xs:sequence minOccurs="0">
                        <xs:element ref="seller:type" minOccurs="0"/>
                        <xs:element ref="seller:last-name" minOccurs="0"/>
                        <xs:element ref="seller:first-name" minOccurs="0"/>
                        <xs:element ref="seller:company-name" minOccurs="0"/>
                        <xs:element ref="seller:address"/>
                        <xs:element ref="seller:phone" minOccurs="0" maxOccurs="unbounded"/>
                        <xs:element ref="seller:email" minOccurs="0"/>
                        <xs:element ref="seller:homepage" minOccurs="0"/>
                        <xs:element ref="seller:mobile-seller-since" minOccurs="0"/>
                        <xs:element ref="seller:coordinates" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="seller:logo-image" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="seller:contact-languages" minOccurs="0" maxOccurs="1" />
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>
    <xs:element name="type">
        <xs:annotation>
            <xs:documentation>TODO</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="value" 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="DEALER">
                            <xs:annotation>
                                <xs:documentation></xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="FOR_SALE_BY_OWNER">
                            <xs:annotation>
                                <xs:documentation></xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="commercial" use="required" type="xs:boolean">
                <xs:annotation>
                    <xs:documentation>TODO</xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>
    <xs:element name="last-name">
        <xs:complexType>
            <xs:attribute name="value" use="required"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="first-name">
        <xs:complexType>
            <xs:attribute name="value" use="required"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="company-name">
        <xs:complexType>
            <xs:attribute name="value" use="required"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="address">
        <xs:complexType>
            <xs:sequence>
                <xs:element ref="seller:street" minOccurs="0"/>
                <xs:element ref="seller:zipcode" minOccurs="0"/>
                <xs:element ref="seller:city" minOccurs="0"/>
                <xs:element ref="seller:country-code" minOccurs="0"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <xs:element name="street">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="zipcode">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="city">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="country-code">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:NCName"/>
        </xs:complexType>
    </xs:element>

    <xs:element name="phone">
        <xs:complexType>
            <xs:attribute name="type">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="FIXED">
                            <xs:annotation>
                                <xs:documentation>Fix net phone.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="CELL">
                            <xs:annotation>
                                <xs:documentation>Cell phone.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="FAX">
                            <xs:annotation>
                                <xs:documentation>Fax.</xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="country-calling-code" use="required" type="xs:short">
                <xs:annotation>
                    <xs:documentation>The international prefix (see http://www.itu.int/publ/T-SP-E.164D-2007/en).</xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="area-code" use="optional" type="xs:string"/>
            <xs:attribute name="number" use="required" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="email">
        <xs:complexType>
            <xs:attribute name="value" use="required"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="homepage">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:anyURI"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="mobile-seller-since">
        <xs:complexType>
            <xs:attribute name="value" use="required" type="xs:date"/>
        </xs:complexType>
    </xs:element>
    <xs:element name="coordinates">
		<xs:complexType>
        	<xs:sequence>
            	<xs:element name="latitude">
	            	<xs:simpleType>
				        <xs:restriction base="xs:decimal">
				            <xs:minInclusive value="-90.0"/>
				            <xs:maxInclusive value="90.0"/>
				        </xs:restriction>
				    </xs:simpleType>
            	</xs:element>
            	<xs:element name="longitude">
            		<xs:simpleType>
				        <xs:restriction base="xs:decimal">
				            <xs:minInclusive value="-180.0"/>
				            <xs:maxExclusive value="180.0"/>
				        </xs:restriction>
				    </xs:simpleType>
            	</xs:element>
        	</xs:sequence>
    	</xs:complexType>
    </xs:element>

    <xs:element name="contact-languages">
        <xs:annotation>
            <xs:documentation>contact-languages used on cz des</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element name="language"  maxOccurs="unbounded" minOccurs="0">
	            	<xs:simpleType>
				        <xs:restriction base="xs:string"/>
				    </xs:simpleType>
            	</xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    
    <xs:element name="logo-image">
        <xs:annotation>
            <xs:documentation>Dealer Logo We do this the right way in seller2.0</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" ref="seller:representation" minOccurs="0"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    
    <xs:element name="representation">
        <xs:annotation>
            <xs:documentation>We do this the right way in seller2.0</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:schema>
