RestAPI Validierung fehlerhaft?

129 views
Skip to first unread message

Richard Neumann

unread,
Jun 3, 2014, 9:21:18 AM6/3/14
to immobilienscou...@googlegroups.com
Hallo zusammen,

ich versuche in der Sandbox folgende Immobilie hochzuladen:
<?xml version="1.0" ?><ns1:apartmentRent xmlns:ns1="http://rest.immobilienscout24.de/schema/offer/realestates/1.0"><externalId>1.33.411</externalId><title>Gemütliche 1 Zimmer Wohnung - WGH Herrenhausen eG!</title><address><street>Ricklinger Stadtweg</street><houseNumber>66</houseNumber><postcode>30459</postcode><city>Hannover-Ricklingen</city></address><realEstateState>ACTIVE</realEstateState><descriptionNote>Gemütliche 1 Zimmer Wohnung, ideal für Singels, Azubis, Studenten und Pendler. Modernes Bad mit Dusche und Fenster, Balkon. Sehr gute Verkehrsanbindung. Einkaufsmöglichkeiten in der Nähe. Frei nach Vereinbarung.</descriptionNote><locationNote>links</locationNote><showAddress>true</showAddress><apartmentType>NO_INFORMATION</apartmentType><floor>1</floor><lift>false</lift><energyCertificate><energyCertificateCreationDate>NOT_APPLICABLE</energyCertificateCreationDate></energyCertificate><cellar>NOT_APPLICABLE</cellar><handicappedAccessible>NOT_APPLICABLE</handicappedAccessible><interiorQuality>NO_INFORMATION</interiorQuality><constructionYearUnknown>true</constructionYearUnknown><freeFrom>01.08.2014</freeFrom><buildingEnergyRatingType>NO_INFORMATION</buildingEnergyRatingType><numberOfFloors>0</numberOfFloors><usableFloorSpace>0.0</usableFloorSpace><numberOfBathRooms>0</numberOfBathRooms><guestToilet>NOT_APPLICABLE</guestToilet><baseRent>0.0</baseRent><totalRent>329.5</totalRent><serviceCharge>90.0</serviceCharge><heatingCosts>0.0</heatingCosts><heatingCostsInServiceCharge>NOT_APPLICABLE</heatingCostsInServiceCharge><petsAllowed>NO</petsAllowed><livingSpace>1.0</livingSpace><numberOfRooms>1.0</numberOfRooms><energyPerformanceCertificate>false</energyPerformanceCertificate><builtInKitchen>false</builtInKitchen><balcony>true</balcony><garden>false</garden><courtage><hasCourtage>NO</hasCourtage></courtage></ns1:apartmentRent>

und bekomme folgende Fehlermeldung:
<?xml version="1.0" ?><ns1:messages xmlns:ns1="http://rest.immobilienscout24.de/schema/common/1.0"><message><messageCode>ERROR_RESOURCE_VALIDATION</messageCode><message>Error while validating input for the resource. [MESSAGE: livingRentInformation.heatingCostsInServiceCharge : null : HEATING_COSTS_IN_SERVICE_CHARGE_INVALID]</message></message></ns1:messages>

Diese Fehlermeldung ist offensichtlich falsch, da der Wert des Feld nicht null, sondern NOT_APPLICABLE ist.
Laut der common-1.0.xsd ist dieser Wert auch vollkommen valide:
            <xs:element name="heatingCostsInServiceCharge" type="YesNoNotApplicableType" minOccurs="0">
               
<xs:annotation>
                   
<xs:documentation xml:lang="en">heating costs in service charge</xs:documentation>
                   
<xs:documentation xml:lang="de-DE">Heizkosten in Nebenkosten enthalten</xs:documentation>
               
</xs:annotation>
           
</xs:element>

Ich wäre für Lösungsansätze dankbar!

Mit freundlichen Grüßen

Richard Neumann

Richard Neumann

unread,
Jun 3, 2014, 9:37:06 AM6/3/14
to immobilienscou...@googlegroups.com
PS: Wenn ich den Wert auf 'YES' oder 'NO' setzte, funktioniert es.
Warum ist dann aber in den XSDs der Typ "YesNoNotApplicableType" angegeben und nicht ein bool'scher Wert?
Und warum wird nicht darauf verwiesen, dass dieser Wert nicht erlaubt ist, so wie es bei CourtageInfo.hasCourtage gemacht wurde?

Die vielen Bugs (s. meine Anderen Posts) machen die Arbeit mit der RestAPI wirklich unangenehm.

Fabian Mielke

unread,
Jun 25, 2014, 9:58:01 AM6/25/14
to immobilienscou...@googlegroups.com
Hallo Richard,

"heatingCostsInServiceCharge" ist richtigerweise vom Typ YesNoNotApplicableType.

Erklärung: Wenn du "heatingCosts" mit einem Wert füllst, kannst du nicht bei "heatingCostsInServiceCharge" NOT_APPLICABLE eintragen, denn du hast ja ausdrücklich gesagt, dass du weißt wieviel "heatingCosts" es sind. Dabei greift die Java Validierung hinter der Schema Validierung um falsche Eingaben wie diese abzuweisen.

MfG Fabian

Fabian Mielke

unread,
Jun 25, 2014, 10:00:29 AM6/25/14
to immobilienscou...@googlegroups.com
In der Dokumentation ist das Feld mit folgendem Zusatz versehen: NOT_APPLICABLE, YES, NO ("NO" is available from 29.1.2014). If you've entered a value for "heating costs", than NOT_APPLICABLE is not allowed for this attribute.

MfG Fabian

Richard Neumann

unread,
Jun 25, 2014, 10:22:05 AM6/25/14
to immobilienscou...@googlegroups.com
Hallo Fabian,

vielen Dank für den Hinweis!
Auf welche Dokumentation beziehst du dich denn da?
Diese scheint ja einige Hinweise zu enthalten, die ganz nützlich scheinen.
In den XSDs steht diese Anmerkung ja schliesslich nicht.
Und das developerwiki habt ihr ja auch mal einfach verschwinden lassen und gegen die our-apis website getauscht.

MfG

Richard

Richard Neumann

unread,
Jun 25, 2014, 10:28:18 AM6/25/14
to immobilienscou...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages