Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:27-06-2024

Inwerkingtreding:01-10-2024




Bekijk bron...

13.4.0 Percentage doorstroom personeel in loondienst naar aflopend kwalificatieniveau

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 13.4
2# Parameters: $(peildatum)
3# Ontologie: versie 2.0.0 of nieuwer
4
5PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
6PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
7PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
8PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
9PREFIX onz-g: <http://purl.org/ozo/onz-g#>
10PREFIX onz-zorg: <http://purl.org/ozo/onz-zorg#>
11
12SELECT 
13	(SUM(?daling_kwalificatieniveau) AS ?teller)
14	(SUM(?aantal_medewerkers) AS ?noemer)
15	(SUM(?daling_kwalificatieniveau)/SUM(?aantal_medewerkers) AS ?indicator)
16WHERE
17{   
18    {
19        SELECT 
20            ?medewerker
21            (MIN(?niveau_number) AS ?kwalificatie_peildatum)
22        WHERE
23        {   
24            # definieer peildatum
25            BIND($(peildatum) AS ?peildatum)
26
27            # selecteer medewerkers met functie
28            ?medewerker 
29                a onz-g:Human ;
30                ^onz-pers:heeftOpdrachtnemer/ onz-g:isAbout ?functie .
31            
32            # selecteer werkovereenkomsten waarbij werknemer een zorgverlenerfunctie heeft
33            ?functie 
34                a onz-pers:ZorgverlenerFunctie ;  
35                onz-g:startDatum ?start_functie ;
36                a/ onz-g:hasQuality /onz-g:hasQualityValue ?functie_niveau .
37            OPTIONAL {?functie a onz-pers:ZorgverlenerFunctie ; 
38                onz-g:eindDatum ?eind_functie}
39           
40            # selecteer kwalificatie niveau en converteer naar integer
41            ?functie_niveau
42                a onz-pers:ODBKwalificatieWaarde ;
43                rdfs:label ?niveau .
44            BIND(xsd:integer(REPLACE(?niveau, "\\D+", "")) AS ?niveau_number)
45            
46            # filter medewerkers met kwalificatieniveau 1 t/m 6
47            FILTER((?niveau_number >=1) && (?niveau_number <=6))
48            
49            # filter de functies relevant tijdens de peildatum
50            FILTER (?start_functie <= ?peildatum && ((?eind_functie >= ?peildatum)||(!BOUND(?eind_functie))))
51        }
52        GROUP BY ?medewerker 
53	}
54    {
55        SELECT 
56            ?medewerker
57            (MIN(?niveau_number) AS ?kwalificatie_kwartaal)
58        WHERE
59        {    
60            # definieer peildatum  
61            BIND($(peildatum) AS ?peildatum)
62
63            # functie om kwartaal eerder de berekenen 
64            BIND((?peildatum - "P3M"^^xsd:duration) AS ?kwartaal_datum)
65            
66            # selecteer medewerkers met functie
67            ?medewerker 
68                a onz-g:Human ;
69                ^onz-pers:heeftOpdrachtnemer/ onz-g:isAbout ?functie .
70            
71            # selecteer werkovereenkomsten waarbij werknemer een zorgverlenerfunctie heeft
72            ?functie 
73                a onz-pers:ZorgverlenerFunctie ;  
74                onz-g:startDatum ?start_functie ;
75                a/ onz-g:hasQuality /onz-g:hasQualityValue ?functie_niveau .
76            OPTIONAL {?functie a onz-pers:ZorgverlenerFunctie ; 
77                onz-g:eindDatum ?eind_functie}
78            
79            # selecteer kwalificatie niveau en converteer naar integer
80            ?functie_niveau
81                a onz-pers:ODBKwalificatieWaarde ;
82                rdfs:label ?niveau .
83            BIND(xsd:integer(REPLACE(?niveau, "\\D+", "")) AS ?niveau_number)
84            
85            # filter medewerkers met kwalificatieniveau 1 t/m 6
86            FILTER((?niveau_number >=1) && (?niveau_number <=6))
87            
88            # filter de functies relevant tijdens de kwartaal_datum
89            FILTER (?start_functie <= ?kwartaal_datum && ((?eind_functie >= ?kwartaal_datum)||(!BOUND(?eind_functie))))
90        }
91        GROUP BY ?medewerker
92	}
93    # definieer teller en noemer
94    BIND(1 AS ?aantal_medewerkers)
95    BIND(IF(?kwalificatie_kwartaal > ?kwalificatie_peildatum, 1, 0) AS ?daling_kwalificatieniveau)
96}
97

Heb je feedback?

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