2314 xquery and 3111 xquery

Hi All,

I have tried the following query in Tamino Interactive Interface version 2.3.1.4 and 3.1.1.1.
/CompleteDocument[(DocContent/Document[(NITF)]~=‘Training’)]
It works fine in 2.3.1.4:
messageline: “XQL Request processed, no object returned”

but I’ve got an error in 3.1.1.1:
messageline: ““INOXIE8319”>Internal error occurred during query processing: unknown request”

I have to rewrite my query-parser to change my query something like this:
/CompleteDocument[(DocContent/Document/NITF~=‘Training’)]

----
The DocContent/Document type is ANY, the index-type is text. It has no child nodes (in schema definition), it contains the total XML document. I uploaded (without any changes) the version 2 schema to the 3.1.1.1.

My questions are:

1. Why does not work the above query in 3.1.1.1?
2. What is about backward compatibility?
3. The same query does not work under different versions?

Thanks in advance,
DZSOLT

This is a bug with nested filters and in fact it does not work as it should in both versions. With slightly different behaviour, though:

    in 2.3, the ~= operator is not passed to the index processor because of a problem with binding the operator to the proper text index. The result is correct, but performance may suffer, because the index is not used.
    in 3.1, the ~= is passed to the index processor, but the nested filter is not correctly processed there, resulting in the 8319 response.
A workaround could be to use the equivalent query
code:

/CompleteDocument[DocContent/Document[NITF and .~=‘Training’]]

moving the ~= into the inner filter. This avoids both of the above effects and will use the text index in 2.3 and 3.1.

A fix for this bug will of course go into future versions. Please contact Tamino support for availability.

Best regards,
Gunther Rademacher
Tamino Development