-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathinkraftquery.sparql
32 lines (28 loc) · 1.33 KB
/
inkraftquery.sparql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
PREFIX jolux: <http://data.legilux.public.lu/resource/ontology/jolux#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX DEUTSCH: <http://publications.europa.eu/resource/authority/language/DEU>
select ?dateApplicability (str(?rsNode) as ?rs) ?droit ?title {
{
select (str(?dateApplicabilityNode) as ?dateApplicability) ?lang ?legalTopicRegex ?consolidationAbstract {
values (?startDate ?endDate ?lang ?legalTopicRegex) {
('%s' '%s' DEUTSCH: '^(%s)')
}
?consolidation a jolux:Consolidation ;
jolux:dateApplicability ?dateApplicabilityNode ;
jolux:isMemberOf ?consolidationAbstract .
filter(xsd:date(?dateApplicabilityNode) >= xsd:date(?startDate) && xsd:date(?dateApplicabilityNode) <= xsd:date(?endDate))
}
}
?consolidationAbstract jolux:classifiedByTaxonomyEntry/skos:notation ?rsNode .
optional {
?consolidationAbstract jolux:isRealizedBy ?expression .
?expression jolux:language ?lang ;
jolux:title ?title .
}
#filter(datatype(?rsNode) = <https://fedlex.data.admin.ch/vocabulary/notation-type/id-systematique>)
bind(if(strstarts(?rsNode, '0.'), 'International', 'National') as ?droit)
FILTER(REGEX (?rsNode, ?legalTopicRegex))
}
order by ?dateApplicability ?rsNode
limit 500