title: Расписание учителя
Запрос расписания учителя по дню недели
http://a.roz37.ru:9984/garpix/semantik/app/request/execute?rp=http://a.roz37.ru/lipers/запросы/расписание-учителя&номерЛичногоДела=А-2021&деньНедели=1
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX признак: <http://lipers.ru/схема/признаки/>
PREFIX онтология: <http://lipers.ru/схема/онтология/>
SELECT ?урокНомер ?предмет ?названиеКласса ?названиеПодгруппы
WHERE
{
GRAPH ?g {
<http://lipers.ru/схема/сущности/учителя/#{{номерЛичногоДела}}> rdf:type онтология:Учитель;
признак:имеетУчебноеЗанятие ?имеетУчебноеЗанятие.
?имеетУчебноеЗанятие признак:деньНеделиНомер "{{деньНедели}}";
признак:урокНомер ?урокНомер;
признак:названиеПредмета ?названиеПредмета;
признак:названиеКласса ?названиеКласса;
признак:названиеПодгруппы ?названиеПодгруппы.
GRAPH ?v {
?идентификаторПредмета
признак:кодПредмета ?названиеПредмета;
признак:названиеПредмета ?предмет
}
}
}
ORDER BY ?урокНомер
declare namespace ns="http://www.w3.org/2005/sparql-results#";
declare variable $results external;
let $data := $results
let $признаки := ("предмет", "названиеКласса", "названиеПодгруппы")
for $i in $data
let $урок :=
for $ii in $признаки
return
$i//ns:binding[@name=$ii]/ns:*/text()
return
string-join(('Урок:', $i//ns:binding[@name="урокНомер"]/ns:*/text(), ':', $урок, '; '), ' ')
<result/>