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

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

5.1.2 Leeftijdsopbouw personeel Q2 2023

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 5.1
2# Parameters: ($kwartaal)
3# Ontologie: versie 2.1.1
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(?1620) AS ?16_20)
15(SUM(?2125) AS ?21_25)
16(SUM(?2630) AS ?26_30)
17(SUM(?3135) AS ?31_35)
18(SUM(?3640) AS ?36_40)
19(SUM(?4145) AS ?41_45)
20(SUM(?4650) AS ?46_50)
21(SUM(?5155) AS ?51_55)
22(SUM(?5660) AS ?56_60)
23(SUM(?6165) AS ?61_65)
24(SUM(?6670) AS ?66_70)
25(SUM(?7175) AS ?71_75)
26
27{
28    BIND('Q2' AS ?kwartaal)
29    BIND(IF(?kwartaal = 'Q1', '2023-01-01'^^xsd:date, 
30        IF(?kwartaal = 'Q2', '2023-04-01'^^xsd:date,
31        IF(?kwartaal = 'Q3', '2023-07-01'^^xsd:date,
32        IF(?kwartaal = 'Q4', '2023-10-01'^^xsd:date, 
33            '')))) AS ?start_periode )
34    BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode)
35    ?overeenkomst 
36        a onz-pers:ArbeidsOvereenkomst ;
37        onz-pers:heeftOpdrachtnemer ?werknemer ;
38        onz-g:isAbout ?locatie ;
39        onz-g:startDatum ?start_overeenkomst .
40        OPTIONAL {?overeenkomst onz-g:eindDatum ?eind_overeenkomst}
41    FILTER(?start_overeenkomst <= ?eind_periode && (?eind_overeenkomst >= ?start_periode|| !BOUND(?eind_overeenkomst)))
42    ?locatie 
43        a onz-g:StationaryArtifact ;
44        onz-g:partOf* ?v .
45    {
46        ?v 
47            a onz-org:Vestiging ;
48            onz-g:identifiedBy ?vest_nr.
49        ?vest_nr a onz-org:Vestigingsnummer ;
50            onz-g:hasDataValue ?vestiging .
51    } UNION {
52        #Includeer ook de organisatie als geheel en label deze als vestiging
53        ?v onz-org:vestigingVan ?organisatie_uri .
54        ?organisatie_uri 
55            a onz-g:Business ;
56            rdfs:label ?Organisatie .
57        BIND(CONCAT('Totaal ',?Organisatie) AS ?vestiging)
58    }        
59    ?werknemer 
60        a onz-g:Human ;
61        onz-g:hasDateOfBirth ?geboortedatum .
62    
63    BIND(YEAR(?eind_periode) - YEAR(?geboortedatum) AS ?leeftijd_voorl)
64    BIND(IF(MONTH(?geboortedatum) > MONTH(?eind_periode) 
65        || (MONTH(?geboortedatum) > MONTH(?eind_periode) && DAY(?geboortedatum) > DAY(?eind_periode)), 
66        ?leeftijd_voorl - 1, ?leeftijd_voorl) AS ?leeftijd)
67    
68    BIND(IF(?leeftijd >= 16 && ?leeftijd <= 20, 1, 0) AS ?1620)
69    BIND(IF(?leeftijd >= 21 && ?leeftijd <= 25, 1, 0) AS ?2125)
70    BIND(IF(?leeftijd >= 26 && ?leeftijd <= 30, 1, 0) AS ?2630)
71    BIND(IF(?leeftijd >= 31 && ?leeftijd <= 35, 1, 0) AS ?3135)
72    BIND(IF(?leeftijd >= 36 && ?leeftijd <= 40, 1, 0) AS ?3640)
73    BIND(IF(?leeftijd >= 41 && ?leeftijd <= 45, 1, 0) AS ?4145)
74    BIND(IF(?leeftijd >= 46 && ?leeftijd <= 50, 1, 0) AS ?4650)
75    BIND(IF(?leeftijd >= 51 && ?leeftijd <= 55, 1, 0) AS ?5155)
76    BIND(IF(?leeftijd >= 56 && ?leeftijd <= 60, 1, 0) AS ?5660)
77    BIND(IF(?leeftijd >= 61 && ?leeftijd <= 65, 1, 0) AS ?6165)
78    BIND(IF(?leeftijd >= 66 && ?leeftijd <= 70, 1, 0) AS ?6670)
79    BIND(IF(?leeftijd >= 71 && ?leeftijd <= 75, 1, 0) AS ?7175)
80    BIND(IF(?leeftijd >= 75 , 1, 0) AS ?75_)
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!