Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[XML] Include i.c.m. dynamic XPath query werkt niet

Pagina: 1
Acties:

  • r0bert
  • Registratie: September 2001
  • Laatst online: 30-07 02:32
Ik heb weinig aanknopingspunten voor mijn probleem, en ik denk dat dat ook de grootste oorzaak van mijn probleem is. Ik probeer een transformatie door middel van XSLT uit te voeren, maar hierbij doet zich een fout voor:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Warning: XSLTProcessor::transformToXml() 
[function.XSLTProcessor-transformToXml]: 
Undefined namespace prefix in 
/var/www/client/sove.nl/httpdocs/class.xml.php on line 52

Warning: XSLTProcessor::transformToXml() 
[function.XSLTProcessor-transformToXml]: 
xmlXPathEval: evaluation failed in 
/var/www/client/sove.nl/httpdocs/class.xml.php on line 52

Warning: XSLTProcessor::transformToXml() 
[function.XSLTProcessor-transformToXml]: 
dyn:evaluate() : unable to evaluate expression 
'//data:xml[@name='boeken']/core:root/boek:boek' in 
/var/www/client/sove.nl/httpdocs/class.xml.php on line 52

Ik snap niet hoe ik aan de hand van zulke foutmeldingen, mijn fout kan vinden. Geen enkele trace o.i.d.

Ik kan geen typo's in namespaces vinden, dus misschien dat het probleem ergens anders te vinden is.
Ik heb een aantal bestanden online staan:

http://sove.nl/functions.php
http://sove.nl/functions.xml
- http://sove.nl/boeken.xml
- http://sove.nl/leverancier.xml
http://sove.nl/functions.xsl

Wat doe ik nu werkelijk fout? Kan ik uberhaupt uitgebreidere foutmeldingen bij XSLT/XML krijgen?

Het is me ook niet duidelijk of de fout nu al zit bij de xinclude, of dat het zich pas voordoet bij de evaluate van de xpath query?

Vanzelfsprekend heb ik al veel geschoven en geprobeerd, maar zonder duidelijk oorzaak is het moeilijk het probleem op te lossen. Vandaar dit topic.

[ Voor 10% gewijzigd door r0bert op 16-04-2008 16:08 . Reden: Belangrijkste link vergeten :/ ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 18-11 23:16

TeeDee

CQB 241

Het lijkt me een behoorlijke longshot maar is
code:
1
<core:param name="parent">leveeranciers</core:param>

wel helemaal goed?

Even vanuit de heup geschoten hoor (moet me toch weer eens (of beter) in XSLT gaan verdiepen), maar speel eens met omit-xml en exclude-prefix attributen.

[ Voor 36% gewijzigd door TeeDee op 16-04-2008 16:26 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • r0bert
  • Registratie: September 2001
  • Laatst online: 30-07 02:32
Nee, dat is niet 'goed'. Maar het is ook niet fout :) Da's een slechte typo, maar geen gevolgen voor het script (wel voor de output). Zeker bedankt :P

Was nog vergeten ..
http://sove.nl/functions.php
.. toe te voegen

Ik zie dat xi:include ook de XMLNS attributen meeneemt met includen. Meerdere keren (gelijk) definiëren van xml-namespaces, kan dat een probleem vormen?

[ Voor 45% gewijzigd door r0bert op 16-04-2008 16:15 ]


  • r0bert
  • Registratie: September 2001
  • Laatst online: 30-07 02:32
Foutmelding is weg, XSLT gebruikte niet de goede namespaces van de geïnclude bestanden. Ik rol hiermee direct in het volgende probleem dat dyn:map me continu exslt:boolean teruggeeft i.p.v. de nodesets (zie bron). Hoewel dit buiten de scope van het topic gaat, zijn antwoorden hierop welkom ;)

Edit: Lag aan mijn wijze van noteren (expr1 = expr2 als voorwaarde, returned natuurlijk (terecht) boolean).

[ Voor 15% gewijzigd door r0bert op 16-04-2008 17:36 ]


  • Sebazzz
  • Registratie: September 2006
  • Laatst online: 18:15

Sebazzz

3dp

Klopt het trouwens dat functions.php text/html teruggeeft terwijl je code die je meestuurt XML is?
Gebruik afhankelijk van wat je toepassingen zijn text/xml of application/xml.

[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]


  • r0bert
  • Registratie: September 2001
  • Laatst online: 30-07 02:32
Ja, correct. :) Moet verbeterd worden in de utieindelijke versie.
Pagina: 1