After upgrading to 7.3, our application broke.

BaseX returns this (ill-formed) XML:

    <result-extract>
      <libx:body xmlns:libx="http://libx.org/xml/libx2"; xmlns="
http://www.w3.org/2005/Atom";>... that searches by <mark xmlns="
http://libx.org/xml/libx2"; xmlns="http://www.w3.org/2005/Atom";>ISBN</mark>
*/
var cue = new libx.cues.CatalogCue('i', tuple.<mark xmlns="
http://libx.org/xml/libx2"; xmlns="http://www.w3.org/2005/Atom";>isbn</mark>);
<mark xmlns="http://libx.org/xml/libx2"; xmlns="http://www.w3.org/2005/Atom";>
</mark>cue.insertBefore(tuple.position);
cue.image.setAttribute('width', '16'...</libx:body>
    </result-extract>

resulting in:

[Fatal Error] :61:237: Attribute "xmlns" bound to namespace "
http://www.w3.org/2005/Atom/"; was already specified for element "mark".

The wrong XML appears numerous times inside <mark> tag. A <mark> element
should not have more than one xmlns= attribute (why it has any, btw, I
don't understand).

The ill-formed output appears to be produced by the 'ft:extract()'
function; here's an excerpt from the XQuery:

  for $extract in $entry/descendant::*[text() contains text "ISBN"]
     return <result-extract>{ft:extract($extract[text() contains text
"ISBN"])}</result-extract>

This is a show stopper that prevents us from upgrading to 7.3, obviously -
let me know if you can fix this with the information provided, or if you
need a complete test case.

Is this issue fixed in the last snapshot?

 - Godmar
_______________________________________________
BaseX-Talk mailing list
BaseX-Talk@mailman.uni-konstanz.de
https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk

Reply via email to