У меня есть XML-документ. Структура документов такая: -
<?xml version="1.0" encoding="UTF-8"?>
<patent-assignment>
<assignment-record>
<correspondent>
<name>NORTH AMERICA INTERNATIONAL PATENT OFFIC</name>
<address-1>P.O. BOX 506</address-1>
<address-2>MERRIFIELD, VA 22116</address-2>
</correspondent>
</assignment-record>
<patent-assignors>
<patent-assignor>
<assignor-name>TSAI, YU-WEN</name>
<execution-date>
<date>20050331</date>
</execution-date>
</patent-assignor>
<patent-assignor>
<assignor-name>HUANG, CHENG-I</name>
<execution-date>
<date>20050331</date>
</execution-date>
</patent-assignor>
</patent-assignors>
<patent-assignees>
<patent-assignee>
<assignee-name>FARADAY TECHNOLOGY CORP.</name>
<address-1>NO.10-2, LI-HSIN ROAD 1, SCIENCE-BASED INDUSTRIAL PARK</address-1>
<city>HSIN-CHU CITY</city>
<country-name>TAIWAN</country-name>
</patent-assignee>
</patent-assignees>
</patent-assignment>
Я создал поля на assignor-name
и assignee-name
. Теперь я выполняю запрос cts:search
следующим образом: -
let $query:=cts:and-query((
cts:element-query(xs:QName("assignor-name"),
cts:field-word-query("Assignor Name", "apple")),
cts:element-query(xs:QName("assignee-name"),
cts:field-word-query("Assignee Name", "salix"))
))
for $x in cts:search(fn:doc(), $query)
return $x
где Assignor Name и Assignee Name - имена созданных мной полей. И эти поля имеют assignor-name
и assignee-name
в качестве локального имени соответственно. Но когда я запускаю этот запрос, он дает мне пустую последовательность. Я также проверил свои xml-документы, и в них есть данные, где assignor-name
- "яблоко", а assignee-name
- "salix", но я не получаю результата. Когда я запускаю этот запрос только для имени исполнителя или имени исполнителя, я получаю результаты, но когда я объединяю их в and-query
, я не получаю никаких результатов. Пожалуйста помоги.