Let op: dit is een oudere versie van deze publicatie. Ga naar de laatste versie

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

2.1.2 Aantal ingezette uren personeel Q3 2023

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 2.1
2# Parameters: ($kwartaal)
3# Ontologie: versie 2.0.0 of nieuwer
4
5PREFIX onz-g: <http://purl.org/ozo/onz-g#>
6PREFIX onz-org: <http://purl.org/ozo/onz-org#>
7PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
8PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
9PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
10PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
11
12SELECT
13    ?Vestiging
14    (SUM(?inzet_uren) AS ?indicator)
15{
16    {
17        SELECT DISTINCT
18            ?locatie
19            ?inzet
20            ?gewerkte_tijd
21        {
22            BIND(('Q3') AS ?kwartaal)
23            BIND(IF(?kwartaal = 'Q1', '2023-01-01'^^xsd:date,
24                 IF(?kwartaal = 'Q2', '2023-04-01'^^xsd:date,
25                 IF(?kwartaal = 'Q3', '2023-07-01'^^xsd:date,
26                 IF(?kwartaal = 'Q4', '2023-10-01'^^xsd:date,
27                 '')))) AS ?start_periode)
28            BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode)
29            
30            ?functie
31                a onz-pers:ZorgverlenerFunctie ;
32                onz-g:startDatum ?start_functie .
33            OPTIONAL { ?functie onz-g:eindDatum ?eind_functie . }
34            
35            FILTER(?start_functie <= ?eind_periode && ((?eind_functie >= ?start_periode) || (!BOUND(?eind_functie))))
36            BIND(IF(!BOUND(?eind_functie), ?eind_periode, 
37                IF(?eind_functie < ?eind_periode, ?eind_functie, ?eind_periode)
38            ) AS ?eind_functie_reken)
39            BIND(IF(?start_functie < ?start_periode, ?start_periode, ?start_functie) AS ?start_functie_reken)
40            
41            ?overeenkomst
42                a onz-pers:ArbeidsOvereenkomst ;
43                onz-g:isAbout ?locatie_contract ;
44                onz-g:isAbout ?functie .
45            
46            ?inzet 
47                a onz-pers:GewerktePeriode ;
48                onz-g:definedBy ?overeenkomst ;
49                onz-g:hasBeginTimeStamp ?start_inzet_datetime ;
50                onz-g:hasEndTimeStamp ?eind_inzet_datetime ;
51                onz-g:hasQuality ?gewerkte_tijd .
52            OPTIONAL{?inzet onz-g:hasPerdurantLocation ?locatie_werk} 
53            # Als begin- en endTimeStamp van type dateTime zijn dan omzetten zodat vergeleken kan worden met start en eind period
54            BIND(STRDT(SUBSTR(STR(?start_inzet_datetime), 1, 10), xsd:date) AS ?start_inzet)
55            BIND(STRDT(SUBSTR(STR(?eind_inzet_datetime), 1, 10), xsd:date) AS ?eind_inzet)
56            FILTER (?start_inzet >= ?start_functie_reken && ?eind_inzet <= ?eind_functie_reken)
57
58            ?locatie_contract a onz-g:StationaryArtifact .
59            BIND(IF(!BOUND(?locatie_werk), ?locatie_contract, ?locatie_werk) AS ?locatie)
60        }
61    }
62    # Bepaal de vestiging waar de werkzaamheden verricht worden volgens de werkovereenkomst
63    {
64        ?locatie onz-g:partOf* ?vestiging_uri .
65        ?vestiging_uri 
66            a onz-org:Vestiging ;
67            onz-g:identifiedBy ?vest_nr.
68        ?vest_nr a onz-org:Vestigingsnummer ;
69            onz-g:hasDataValue ?Vestiging .
70    } UNION {
71        # Includeer ook de organisatie als geheel en label deze als vestiging
72        ?locatie onz-g:partOf*/onz-org:vestigingVan ?organisatie_uri .
73        ?organisatie_uri 
74            a onz-g:Business ;
75            rdfs:label ?Organisatie .
76        BIND(CONCAT('Totaal ',?Organisatie) AS ?Vestiging)
77    }
78    ?gewerkte_tijd
79        a onz-pers:GewerkteTijd ;
80        onz-g:hasQualityValue/onz-g:hasDataValue ?inzet_uren .
81}
82GROUP BY ?Vestiging

Heb je feedback?

Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!