<?xml version="1.0" encoding="UTF-8"?>
<xs:schema
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:r="http://schemas.ingatlanbazar.hu/Import/"
    xmlns:html="http://www.w3.org/1999/xhtml"
    xmlns="http://schemas.ingatlanbazar.hu/Import/"
    targetNamespace="http://schemas.ingatlanbazar.hu/Import/"
    elementFormDefault="qualified"
    version="2.0t">

    <xs:include schemaLocation="types.xsd">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a séma tartalmazza az érvényes ingatlan típusokat.</xs:documentation>
            <xs:documentation xml:lang="en">This schema contains the valid property types.</xs:documentation>
        </xs:annotation>
    </xs:include>
    <xs:include schemaLocation="conditions.xsd">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a séma tartalmazza az érvényes ingatlan állapotokat.</xs:documentation>
            <xs:documentation xml:lang="en">This schema contains the valid conditions.</xs:documentation>
        </xs:annotation>
    </xs:include>
    <xs:include schemaLocation="heatings.xsd">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a séma tartalmazza az érvényes fűtés típusokat.</xs:documentation>
            <xs:documentation xml:lang="en">This schema contains the valid heating types.</xs:documentation>
        </xs:annotation>
    </xs:include>
    <xs:include schemaLocation="floors.xsd">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a séma tartalmazza az érvényes emelet opciókat.</xs:documentation>
            <xs:documentation xml:lang="en">This schema contains the valid floor options.</xs:documentation>
        </xs:annotation>
    </xs:include>
    <xs:include schemaLocation="regions.xsd"><!-- deprecated -->
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a séma tartalmazza az érvényes megye opciókat.</xs:documentation>
            <xs:documentation xml:lang="en">This schema contains the valid county options.</xs:documentation>
        </xs:annotation>
    </xs:include>

    <xs:element name="import" type="importType"/>
    
    <xs:complexType name="importType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az import xml gyökér eleme.</xs:documentation>
            <xs:documentation xml:lang="en">The root node of the import xml.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="officeList" type="officeListType">
                <xs:key name="office-id">
                    <xs:selector xpath="r:office"/>
                    <xs:field xpath="@ingatlanbazarId"/>
                </xs:key>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="officeListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az importálandó irodák listája.</xs:documentation>
            <xs:documentation xml:lang="en">The list of offices to be imported.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="office" type="officeType" maxOccurs="unbounded">
                <xs:keyref name="agent-foreign-id-ref" refer="agent-foreign-id">
                    <xs:selector xpath=".//r:ad"/>
                    <xs:field xpath="@agentId"/>
                </xs:keyref>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="officeType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az importálandó iroda adatai.</xs:documentation>
            <xs:documentation xml:lang="en">The details of one office.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="information" type="officeInformationType"/>
            <xs:element name="agentList" type="agentListType">
                <xs:key name="agent-foreign-id">
                    <xs:selector xpath="r:agent"/>
                    <xs:field xpath="@foreignId"/>
                </xs:key>
            </xs:element>
            <xs:element name="adList" type="adListType">
                <xs:key name="ad-foreign-id">
                    <xs:selector xpath="r:ad"/>
                    <xs:field xpath="@foreignId"/>
                </xs:key>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="ingatlanbazarId" type="xs:positiveInteger" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az iroda azonosítója az ingatlanbazár rendszerén belül. Az officeList elemen belül egyedi kell legyen.</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the office in the ingatlanbazar database. The value of this attribute should be unique in the officeList element.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="officeInformationType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az iroda elérhetőségei.</xs:documentation>
            <xs:documentation xml:lang="en">The contact informations of one office.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="notificationmailList" type="notificationmailListType"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="notificationmailListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Értesítési email címek listája, ahova bármilyen technikai problémával fordulhatunk.</xs:documentation>
            <xs:documentation xml:lang="en">The list of notification email addresses where we can send emails about technical problems.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="notificationmailText" type="emailType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="agentListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az iroda referenseinek listája.</xs:documentation>
            <xs:documentation xml:lang="en">The list of the agents of the office.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="agent" type="agentType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="agentType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Egy referens elérhetőségei.</xs:documentation>
            <xs:documentation xml:lang="en">Contact informations of an agent.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="nameText" type="nonEmptyToken">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A referens neve.</xs:documentation>
                    <xs:documentation xml:lang="en">The name of the agent.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="addressText" type="nonEmptyToken" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A referens címe.</xs:documentation>
                    <xs:documentation xml:lang="en">The address of the agent.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:choice>
                <xs:sequence>
                    <xs:element name="phonenumberText" type="nonEmptyToken">
                        <xs:annotation>
                            <xs:documentation xml:lang="hu">A referens vonalas telefonszáma.</xs:documentation>
                            <xs:documentation xml:lang="en">The landline phone number of the agent.</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                    <xs:element name="mobilenumberText" type="nonEmptyToken" minOccurs="0">
                        <xs:annotation>
                            <xs:documentation xml:lang="hu">A referens mobilszáma.</xs:documentation>
                            <xs:documentation xml:lang="en">The cellphone number of the agent.</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:sequence>
                <xs:element name="mobilenumberText" type="nonEmptyToken"/>
            </xs:choice>
            <xs:element name="emailText" type="emailType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A referens email címe.</xs:documentation>
                    <xs:documentation xml:lang="en">The email address of the agent.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="foreignId" type="nonEmptyToken" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">A referens azonosítója az iroda rendszerében. Egy agentList elemen belül egyedinek kell lennie.</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the agent in the office's database. It must be unique in an agentList element.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="adListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az iroda hirdetéseinek listája.</xs:documentation>
            <xs:documentation xml:lang="en">The list of the office's adverts.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="ad" type="adType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="adType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ez a típus tartalmazza egy hirdetés adatait.</xs:documentation>
            <xs:documentation xml:lang="en">This type contains the details of one advert.</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="type" type="typeType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan típusa, a típusdefiníció a types.xsd file-ban található.</xs:documentation>
                    <xs:documentation xml:lang="en">The type of the property, the type definition is in types.xsd.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="agreement" type="agreementType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A hirdetés típusa. Ld. agreementType</xs:documentation>
                    <xs:documentation xml:lang="en">The type of the advert. See: agreementType</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:choice>
                <xs:sequence>
                    <xs:choice>
                        <xs:element name="region" type="regionType"><!-- deprecated -->
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése megyei szinten. A típusdefiníció a regions.xsd file-ban található.</xs:documentation>
                                <xs:documentation xml:lang="en">The county where the property is located. The type definition is in regions.xsd.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="regionText" type="nonEmptyToken">
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése megyei szinten; a megye neve.</xs:documentation>
                                <xs:documentation xml:lang="en">The county where the property is located; the name of the county.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:choice>
                    <xs:choice>
                        <xs:element name="city" type="cityType"><!-- deprecated -->
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése település szinten.</xs:documentation>
                                <xs:documentation xml:lang="en">The city where the property is located.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="cityText" type="nonEmptyToken">
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése település szinten; a település neve.</xs:documentation>
                                <xs:documentation xml:lang="en">The city where the property is located; the name of the city.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:choice>
                    <xs:choice>
                        <xs:element name="suburb" type="suburbType" minOccurs="0"><!-- deprecated -->
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése városrész szinten.</xs:documentation>
                                <xs:documentation xml:lang="en">The suburb where the property is located.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                        <xs:element name="suburbText" type="nonEmptyToken" minOccurs="0">
                            <xs:annotation>
                                <xs:documentation xml:lang="hu">Az ingatlan elhelyezkedése városrész szinten; a városrész neve.</xs:documentation>
                                <xs:documentation xml:lang="en">The suburb where the property is located; the name of the suburb.</xs:documentation>
                            </xs:annotation>
                        </xs:element>
                    </xs:choice>
                    <xs:element name="address" type="addressType" minOccurs="0">
                        <xs:annotation>
                            <xs:documentation xml:lang="hu">Az ingatlan címe.</xs:documentation>
                            <xs:documentation xml:lang="en">The address of the property.</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:sequence>
                <xs:element name="coordinates" type="coordinatesType">
                    <xs:annotation>
                        <xs:documentation xml:lang="hu">Az ingatlan koordinátái.</xs:documentation>
                        <xs:documentation xml:lang="en">The coordinates of the property.</xs:documentation>
                    </xs:annotation>
                </xs:element>
            </xs:choice>
            <xs:element name="price" type="intvalType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan ára.</xs:documentation>
                    <xs:documentation xml:lang="en">The price of the property.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="currency" type="currencyType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A pénznem, amiben az ár értendő.</xs:documentation>
                    <xs:documentation xml:lang="en">The currency part of the price.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="payingperiod" type="payingperiodType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Ld. payinperiodType</xs:documentation>
                    <xs:documentation xml:lang="en">See: payingperiodType</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="condition" type="conditionType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan állapota. A típusdefiníció a conditions.xsd file-ban található.</xs:documentation>
                    <xs:documentation xml:lang="en">The condition of the property. The type definition is in conditions.xsd.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heating" type="heatingType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan fűtésének típusa; A típusdefiníció a heatings.xsd file-ban található.</xs:documentation>
                    <xs:documentation xml:lang="en">The heating type of the property. The type definition is in heatings.xsd.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="floors" type="floorsType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az emelet, melyen az ingatlan található.</xs:documentation>
                    <xs:documentation xml:lang="en">The floor where the property is located.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="rooms" type="intvalType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan szobáinak száma.</xs:documentation>
                    <xs:documentation xml:lang="en">The number of rooms of the property.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="halfrooms" type="intvalType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan félszobáinak száma.</xs:documentation>
                    <xs:documentation xml:lang="en">The number of halfrooms of the property.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="floorspace" type="intvalType">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan alapterülete (telek esetén a telek területe) négyzetméterben.</xs:documentation>
                    <xs:documentation xml:lang="en">The floorspace of the property (in case of building lot, the lot area) in square metres.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="propertyspace" type="intvalType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan telekterülete (telek esetén nincs értelmezve) négyzetméterben.</xs:documentation>
                    <xs:documentation xml:lang="en">The lot area of the property (in case of building lot, it's not processed) in square metres.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="descriptionText" type="nonEmptyToken">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az ingatlan leírása. Csak sima szöveg engedélyezett.</xs:documentation>
                    <xs:documentation xml:lang="en">The description of the property. Only plaintext is allowed.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="tagsText" type="nonEmptyToken" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az adott ingatlantípusnál érvényes, az ingatlanhoz tartozó extrák vesszővel elválasztott listája</xs:documentation>
                    <xs:documentation xml:lang="en">Comma delimited list of extras applicable to the type of the property</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="imageList" type="imageListType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A hirdetés képeinek listája.</xs:documentation>
                    <xs:documentation xml:lang="en">The list of the advert's images.</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="highlightingList" type="highlightingListType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">A hirdetéshez tartozó kiemelések listája.</xs:documentation>
                    <xs:documentation xml:lang="en">The list of the services which should be applied on the advert.</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="foreignId" type="nonEmptyToken" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az ingatlan azonosítója az iroda rendszerén belül.</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the property in the office's database.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="agentId" type="nonEmptyToken" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az értékesítő azonosítója, akihez a hirdetés tartozik. Ennek az ID-nak szerepelnie kell az agentList-en belül.</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the agent who is the owner of the advert. This ID has to be included in the agentList.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="projectId" type="xs:positiveInteger">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Ha az ingatlan új építésű projecthez tartozik, itt adható meg a project adatlap azonosítója.</xs:documentation>
                <xs:documentation xml:lang="en">If the property belongs to a project, the ID of the project can be provided here.</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="typeType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ingatlan típus</xs:documentation>
            <xs:documentation xml:lang="en">Type of a property</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="typeOptionType" use="required"/>
    </xs:complexType>

    <xs:complexType name="agreementType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az értékesítés típusa</xs:documentation>
            <xs:documentation xml:lang="en">The type of the agreement</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="hu">Eladó</xs:documentation>
                            <xs:documentation xml:lang="en">For sale</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                    <xs:enumeration value="2">
                        <xs:annotation>
                            <xs:documentation xml:lang="hu">Kiadó</xs:documentation>
                            <xs:documentation xml:lang="en">To let</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="regionType"><!-- deprecated -->
        <xs:annotation>
            <xs:documentation xml:lang="hu">Megyei szintű elhelyezkedés</xs:documentation>
            <xs:documentation xml:lang="en">Location; county level</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="regionOptionType" use="required"/>
    </xs:complexType>

    <xs:complexType name="cityType"><!-- deprecated -->
        <xs:annotation>
            <xs:documentation xml:lang="hu">Település szintű elhelyezkedés</xs:documentation>
            <xs:documentation xml:lang="en">Location; city level</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="xs:positiveInteger" use="required"/>
    </xs:complexType>

    <xs:complexType name="suburbType"><!-- deprecated -->
        <xs:annotation>
            <xs:documentation xml:lang="hu">Városrész szintű elhelyezkedés</xs:documentation>
            <xs:documentation xml:lang="en">Location; suburb level</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="xs:positiveInteger" use="required"/>
    </xs:complexType>

    <xs:complexType name="addressType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Cím szintű elhelyezkedés</xs:documentation>
            <xs:documentation xml:lang="en">Location; address level</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="street" type="nonEmptyToken">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Közterület neve</xs:documentation>
                    <xs:documentation xml:lang="en">Name of the street</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="number" type="xs:positiveInteger">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Házszám</xs:documentation>
                    <xs:documentation xml:lang="en">The number of the building</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="building" type="nonEmptyToken" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Az épület neve</xs:documentation>
                    <xs:documentation xml:lang="en">The name of the building</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="floor" type="floorsOptionType" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Emelet</xs:documentation>
                    <xs:documentation xml:lang="en">The floor of the property if applicable</xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="roomNumber" type="xs:positiveInteger" minOccurs="0">
                <xs:annotation>
                    <xs:documentation xml:lang="hu">Szoba / lakás száma</xs:documentation>
                    <xs:documentation xml:lang="en">Room / flat number</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="visible" type="xs:boolean" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Ez az attribútum határozza meg, hogy az ingatlan látható-e a térképen</xs:documentation>
                <xs:documentation xml:lang="en">This attribute controls whether the property is visible on the map or not</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="coordinatesType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Egy koordináta pár</xs:documentation>
            <xs:documentation xml:lang="en">A coordinate</xs:documentation>
        </xs:annotation>
        <xs:attribute name="latitude" type="geoLatType" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Szélességi fok decimális jelöléssel</xs:documentation>
                <xs:documentation xml:lang="en">Latitude in decimal notation</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="longitude" type="geoLonType" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Hosszúsági fok decimális jelöléssel</xs:documentation>
                <xs:documentation xml:lang="en">Longitude in decimal notation</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:simpleType name="geoLatType">
        <xs:restriction base="xs:decimal">
            <xs:totalDigits value="8"/>
            <xs:fractionDigits value="6"/>
            <xs:minInclusive value="-90"/>
            <xs:maxInclusive value="90"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="geoLonType">
        <xs:restriction base="xs:decimal">
            <xs:totalDigits value="9"/>
            <xs:fractionDigits value="6"/>
            <xs:minInclusive value="-180"/>
            <xs:maxInclusive value="180"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:complexType name="intvalType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Típus pozitív egész szám átadására</xs:documentation>
            <xs:documentation xml:lang="en">A type to provide a positive integer</xs:documentation>
        </xs:annotation>
        <xs:attribute name="intval" type="xs:positiveInteger" use="required"/>
    </xs:complexType>

    <xs:complexType name="currencyType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Pénznem típus</xs:documentation>
            <xs:documentation xml:lang="en">Type of currency</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:integer">
                    <xs:enumeration value="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Hungarian Forint</xs:documentation>
                            <xs:documentation xml:lang="hu">Forint</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                    <xs:enumeration value="2">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Euro</xs:documentation>
                            <xs:documentation xml:lang="hu">Euró</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="payingperiodType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">A fizetés rendszeressége</xs:documentation>
            <xs:documentation xml:lang="en">The frequency of payments</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:integer">
                    <xs:enumeration value="1">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Lump sum (?)</xs:documentation>
                            <xs:documentation xml:lang="hu">Egyszeri</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                    <xs:enumeration value="2">
                        <xs:annotation>
                            <xs:documentation xml:lang="en">Monthly</xs:documentation>
                            <xs:documentation xml:lang="hu">Havi</xs:documentation>
                        </xs:annotation>
                    </xs:enumeration>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="conditionType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Ingatlan állapot típus</xs:documentation>
            <xs:documentation xml:lang="en">Property condition type</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="conditionOptionType" use="required"/>
    </xs:complexType>

    <xs:complexType name="heatingType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Fűtés típus</xs:documentation>
            <xs:documentation xml:lang="en">Heating type</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="heatingOptionType" use="required"/>
    </xs:complexType>

    <xs:complexType name="floorsType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Az emelet megadására szolgáló típus, melyen az ingatlan elhelyezkedik</xs:documentation>
            <xs:documentation xml:lang="en">A type to denote the floor on which a property is located</xs:documentation>
        </xs:annotation>
        <xs:attribute name="option" type="floorsOptionType" use="required"/>
    </xs:complexType>

    <xs:complexType name="imageListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Képek listájának megadására szolgáló típus</xs:documentation>
            <xs:documentation xml:lang="en">This type contains a list of images</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="image" type="imageType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="imageType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Egy kép adatainak megadására szolgáló típus</xs:documentation>
            <xs:documentation xml:lang="en">This type contains the details of an image</xs:documentation>
        </xs:annotation>
        <xs:attribute name="foreignId" type="nonEmptyToken">
            <xs:annotation>
                <xs:documentation xml:lang="hu">A kép azonosítója az iroda rendszerében</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the image in the office's database</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="href" type="urlType" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az URL, ahonnan a kép letölthető</xs:documentation>
                <xs:documentation xml:lang="en">The URL from where the image can be downloaded</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:complexType name="highlightingListType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Kiemelések listája</xs:documentation>
            <xs:documentation xml:lang="en">List of highlightings</xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:element name="highlighting" type="highlightingType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="highlightingType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Egy hirdetésre alkalmazandó kiemelés</xs:documentation>
            <xs:documentation xml:lang="en">A highlighting to be applied on an advert</xs:documentation>
        </xs:annotation>
        <xs:attribute name="id" type="xs:positiveInteger" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">A szolgáltatás azonosítója</xs:documentation>
                <xs:documentation xml:lang="en">The ID of the service</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="start" type="xs:date" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az első nap, amikor a szolgáltatás aktív</xs:documentation>
                <xs:documentation xml:lang="en">The first date when the service should be active</xs:documentation>
            </xs:annotation>
        </xs:attribute>
        <xs:attribute name="duration" type="xs:positiveInteger" use="required">
            <xs:annotation>
                <xs:documentation xml:lang="hu">Az egymást követő napok száma, amíg a szolgáltatás aktív (az első napot beleértve)</xs:documentation>
                <xs:documentation xml:lang="en">The consecutive number of days when the service should be active (including the start date)</xs:documentation>
            </xs:annotation>
        </xs:attribute>
    </xs:complexType>

    <xs:simpleType name="urlType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">URL megadására szolgáló típus</xs:documentation>
            <xs:documentation xml:lang="en">This type contains a URL</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:anyURI">
            <xs:whiteSpace value="collapse"/>
            <xs:pattern value="https?://.+"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="emailType">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Email cím megadására szolgáló típus</xs:documentation>
            <xs:documentation xml:lang="en">This type contains an email address</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:token">
            <xs:pattern value="[A-Za-z0-9_]+([-+.'][A-Za-z0-9_]+)*@[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*\.[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="nonEmptyToken">
        <xs:annotation>
            <xs:documentation xml:lang="hu">Segédtípus; nem-üres szöveg</xs:documentation>
            <xs:documentation xml:lang="en">Helper type; non-empty string</xs:documentation>
        </xs:annotation>
        <xs:restriction base="xs:token">
            <xs:minLength value="1"/>
        </xs:restriction>
    </xs:simpleType>

</xs:schema>
