Запрос формирует реестр классов
http://a.roz37.ru:9984/garpix/semantik/app/request/execute?rp=http://a.roz37.ru/lipers/запросы/темы-рефератов&источник=http://lipers.ru/lipers-simplex/SSM/Thems.xlsx&названиеПредмета=Экономика
# список классов http://lipers.ru/lipers-simplex/SSM/Thems.xlsx
PREFIX источник: <{{источник}}>
PREFIX sch: <http://ivgpu.com/simplex/схема/>
SELECT ?темаРеферата ?кодовоеСлово ?URL
WHERE {
graph источник:{
?s sch:предмет "{{названиеПредмета}}".
?s sch:темаРеферата ?темаРеферата.
?s sch:кодовоеСлово ?кодовоеСлово.
?s sch:URL ?URL.
}
}
declare namespace ns="http://www.w3.org/2005/sparql-results#";
let $data := .
let $pos := round(random-number-generator()?number * (count($data)-1))+1
let $реферат := $data[$pos]
let $результат :=
(
<темаРеферата>{$реферат/ns:binding[@name="темаРеферата"]/ns:literal/text()}</темаРеферата>,
<кодовоеСлово>{$реферат/ns:binding[@name="кодовоеСлово"]/ns:literal/text()}</кодовоеСлово>,
<URL>{$реферат/ns:binding[@name="URL"]/ns:literal/text()}</URL>
)
return
$результат
<result/>