Autor | Zpráva | ||
---|---|---|---|
iru Profil |
#1 · Zasláno: 2. 7. 2014, 14:56:16
Zdravím, mám problém s validací xml souboru, který mi neprojde validací přestože se jedná o vzorový příklad, který by měl sedět. Chybová zpráva:
DOMDocument::schemaValidate() Generated Errors! Error 1845: Element '{http://www.stormware.cz/schema/version_2/data.xsd}dataPack': No matching global declaration available for the validation root. nemůžu přijít na to, co chybu způsobuje. Mám PHP 5.4.7 a libxml verzi 2.7.8. validaci provádím takto: public function validateXml($dokument){ // Enable user error handling libxml_use_internal_errors(true); $xml = new DOMDocument(); $xml->load($dokument); $tempFile = time() . '-' . rand() . '-document.tmp'; $xml->save($tempFile); $tempDom = new DOMDocument(); $tempDom->load($tempFile); // Delete temporary file. if (is_file($tempFile)) { unlink($tempFile); } if (!$tempDom->schemaValidate('order.xsd')) { print '<b>DOMDocument::schemaValidate() Generated Errors!</b>'; $this->libxml_display_errors(); } } zkoušela jsem i varinatu bez ukládání do tmp, nebo číst přímo data, nevalidovat soubor, ale výsledek je ve všech případech stejný. Máte někdo nějaký nápad? |
||
Časová prodleva: 16 dní
|
|||
iru Profil |
#2 · Zasláno: 18. 7. 2014, 10:08:37
žádný nápad? Nebo tip kde hledat, nějaké nasměrování? Dotaz je stále aktuální, za každou reakci díky...
|
||
juriad Profil |
#3 · Zasláno: 18. 7. 2014, 10:11:56
iru:
Ukaž to xml a xsd, ať si to kdyžtak někdo může vyzkoušet. Stejně jako ty, chybu k kódu na první pohled nevidím. |
||
iru Profil |
#4 · Zasláno: 18. 7. 2014, 10:42:58
juriad:
díky, xsd je tady: www.stormware.cz/schema/version_2/data.xsd a xml tady: <?xml version="1.0" encoding="Windows-1250"?> <dat:dataPack id="ob001" ico="12345678" application="StwTest" version = "2.0" note="Import Objednávky" xmlns:dat="http://www.stormware.cz/schema/version_2/data.xsd" xmlns:ord="http://www.stormware.cz/schema/version_2/order.xsd" xmlns:typ="http://www.stormware.cz/schema/version_2/type.xsd" > <dat:dataPackItem id="OBJ001" version="2.0"> <ord:order version="2.0"> <!--prijata objednavka s polozkama--> <ord:orderHeader> <ord:orderType>receivedOrder</ord:orderType> <ord:numberOrder>20140505A001</ord:numberOrder> <ord:date>2014-10-14</ord:date> <ord:dateFrom>2014-10-14</ord:dateFrom> <ord:dateTo>2014-10-14</ord:dateTo> <ord:text>Objednáváme u Vás zboží dle ústní dohody</ord:text> <ord:partnerIdentity> <typ:address> <typ:company>Otma a.s.</typ:company> <typ:division>Obchodní oddělení</typ:division> <typ:name>Petr Novák</typ:name> <typ:city>Brno</typ:city> <typ:street>Nová 15</typ:street> <typ:zip>61900</typ:zip> <typ:ico>789456</typ:ico> <typ:dic>CZ789456</typ:dic> </typ:address> </ord:partnerIdentity> <ord:paymentType> <typ:ids>hotově</typ:ids> </ord:paymentType> <ord:priceLevel> <typ:ids>Sleva 1</typ:ids> </ord:priceLevel> </ord:orderHeader> <ord:orderDetail> <!--textova polozka--> <ord:orderItem> <ord:text>Sestava PC</ord:text> <ord:quantity>1</ord:quantity> <ord:delivered>0</ord:delivered> <ord:rateVAT>high</ord:rateVAT> <ord:homeCurrency> <typ:unitPrice>200</typ:unitPrice> </ord:homeCurrency> </ord:orderItem> <!--skladova polozka--> <ord:orderItem> <ord:quantity>1</ord:quantity> <ord:delivered>0</ord:delivered> <ord:rateVAT>high</ord:rateVAT> <ord:homeCurrency> <typ:unitPrice>198</typ:unitPrice> </ord:homeCurrency> <ord:stockItem> <typ:stockItem> <typ:ids>STM</typ:ids> </typ:stockItem> </ord:stockItem> </ord:orderItem> </ord:orderDetail> <ord:orderSummary> <ord:roundingDocument>math2one</ord:roundingDocument> </ord:orderSummary> </ord:order> </dat:dataPackItem> </dat:dataPack> |
||
Časová prodleva: 10 let
|
0