У меня есть следующий XML. Когда я ищу для города, как Бангалор & государства как Telegana он не должен возвращать никакого результата, так как город и государство принадлежат к разным элементам адреса ...Поиск документов с родительско-детским контекстом: Marklogic
XML Document :
<person>
<name>Sundeep</name>
<address>
<city>Bangalore</city>
<state>Karnataka</state>
</address>
<address>
<city>Hyderabad</city>
<state>Telangana</state>
</address>
</person>
Искать: город = Бангалор & состояния = Telangana
Выходной ток: Это возвращает человека документ при использовании ниже запроса
<search:and-query>
<search:value-query>
<search:element name="city"/>
<search:text>Bangalore</search:text>
</search:value-query>
<search:value-query>
<search:element name="state"/>
<search:text>Telangana</search:text>
</search:value-query>
</search:and-query>
Exce pted Output: Поскольку город и государство принадлежат к двум различным элементам адреса , он не должен возвращать вышеуказанный документ в результате. Любые указатели при решении этой проблемы с использованием REST-API или XQuery?
Спасибо большое вы можете помочь мне с эквивалентным запросом на отдых? –
Несколько сносок на предложение Роба. 1). Вам не нужно создавать индексы диапазонов для значений запросов выше по городу и штату. 2). Самый простой способ устранить ложные срабатывания для сдерживания - включить фильтрацию, добавив опцию filter search-option>. 3). В REST API вы можете либо установить параметры запроса, либо отправить строковый запрос, либо отправить структурированный запрос, эквивалентный комбинации строкового запроса с параметрами запроса. –
ehennum
@ehennum: Спасибо за подсказку по индексам. Я дал отфильтрованный search-option> снимок, но ему не удавалось заставить его работать. Мне было бы интересно узнать больше. Хороший вопрос №3, я исправлю свой другой ответ, чтобы включить это. –