мой проект позволяет пользователю вводить запрос, и наилучшие результаты должны отображаться пользователю. это мой файл RDF
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:foaf="http://www.xmlns.com/foaf/0.1">
<rdf:Description>
<foaf:name>interview</foaf:name>
<foaf:url>urlname1</foaf:url>
</rdf:Description>
<rdf:Description>
<foaf:name>technical</foaf:name>
<foaf:url>urlname2</foaf:url>
</rdf:Description> </rdf:RDF>
теперь, если пользователь вводит «технические вопросы», я закодировал способ принимать «технические» и «вопросы» в массив и динамически генерировать запрос SPARQL, поэтому мой запрос будет выглядеть как
Строка queryString = "ПРЕФИКС rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# "+" ПРЕФИКС foaf: http://www.xmlns.com/foaf/0.1 "+" SELECT? url WHERE {? a foaf: name? name ФИЛЬТР regex (? name, '"+ values [i] +"')? a foaf : url? url.} ";
здесь values [i] - это массив, определенный для "технических" и "вопросов". Таким образом, это дает мне результат как
------------- | url | ============= | "urlname2"| -------------
и когда пользователь вводит "вопросы для собеседования", результат будет
------------- | url | ============= | "urlname1"| -------------
Но если пользователь вводит «технические вопросы на собеседовании», я получаю и то, и другое, как
------------- | url | ============= | "urlname2"| ------------- ------------- | url | ============= | "urlname1"| -------------
но o / p, который я должен получить, - это только первая таблица, которая дает мне URL-адрес для подготовки к техническим вопросам (urlname2). Не могли бы вы рассказать мне, как изменить мой формат запроса / RDF, чтобы получить желаемый o / p? Спасибо