опция Score-функции в cts: элемент-диапазон-запрос, кажется, не работает в marklogic версии 9.0-9.1.но он работает в marklogic версии 8.
Чтобы проверить это, вставил несколько документов в базу данных документов с помощью запроса вставки:
xdmp:document-insert("/test1.xml", <rating>1</rating>, (), "temp"),
xdmp:document-insert("/test2.xml", <rating>2</rating>, (), "temp"),
xdmp:document-insert("/test3.xml", <rating>3</rating>, (), "temp"),
xdmp:document-insert("/test4.xml", <rating>4</rating>, (), "temp")
добавил индекс диапазона элементов для элемента "rating" в документбаза данных
cts:search(fn:doc(), cts:element-range-query(fn:QName("","rating"), "<=", xs:int("4"), ("score-function=reciprocal"), 2))
результат ML 9.0-9.1
<?xml version="1.0" encoding="UTF-8"?>
<rating>1</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>3</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>2</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>4</rating>
результат ML 8.0-4.2
<?xml version="1.0" encoding="UTF-8"?>
<rating>4</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>3</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>2</rating>
<?xml version="1.0" encoding="UTF-8"?>
<rating>1</rating>
Кто-нибудь заметил эту разницу?Есть ли что-то, что я здесь упускаю?
Любое предложение будет наиболее ценно