Entwickler-Ecke
Sonstiges (Delphi) - Fehler bei XML Validierung bei Datentyp double
MaxWurzel - Mi 30.08.17 15:24
Titel: Fehler bei XML Validierung bei Datentyp double
Hallo,
ich verwende bei einem TXMLDocument Objekt die Eigenschaft poValidateOnParse, um die XML-Datei gegen ein Schema zu validieren. Dabei habe ich folgendes Problem festgestellt:
In der Schemadatei wird ein Attribut vom type xs:double definiert. Wenn in der XML-Datei dieses Attribut mit dem Wert 0.00 belegt wird, schlägt die Validierung fehl:
Datatype error: Type:InvalidDatatypeFacetException, Message: Value '0.00' shall be in the range of '-2,4703282292032327208828439643411E-324','+2,4703282292032327208828439643411E-324'.
Wenn ich 0.0 eingebe, habe ich kein Problem. Auch nicht bei 1.00 oder 0.01.
Ich verwende den DOMVendor Xerxes XML
Hat jemand eine Idee woran das liegen könnte?
Gruß
Gammatester - Mi 30.08.17 15:57
MaxWurzel hat folgendes geschrieben : |
'+2,4703282292032327208828439643411E-324'.
|
Ich verstehe zwar nichts von XML, aber dieses ist
keine gültige double-Zahl, sie ist nur (etwa) halb so groß wie die kleinste
subnormale double-Zahl m=4.94065645841247E-324, d.h. jede Zahl zwischen 0 und m wird entweder auf 0 oder m gerundet. Kann es sein, daß Zahlen der Größe von zB 2.0E-234 getestet werden sollen?
Delete - Mi 30.08.17 16:26
- Nachträglich durch die Entwickler-Ecke gelöscht -
Gammatester - Mi 30.08.17 16:33
Frühlingsrolle hat folgendes geschrieben : |
Du verstehst schon, um was es dem TE geht?! Er möchte wissen, warum das gesetzte Attribut den Wert 0.0 akzeptiert. 0.00 jedoch nicht. |
Nein, wie schon gesagt, ich verstehe nichts von XML, ich weiß nur, daß die Fehlermeldung für double ziemlich sinnlos ist.
MaxWurzel - Mi 30.08.17 16:43
Hallo,
ich habe jetzt den DOMVendor von Xerces XML in MSXML geändert. Jetzt wird mir kein Fehler mehr bei Eingabe von 0.00 ausgegeben. :-)
Scheint mir ein Bug bei Xerces XML zu sein.
Gruß
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!