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

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:04-10-2023

Inwerkingtreding:04-10-2023




Bekijk bron...

13.4. 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 onz-g:eindDatum ?eind_functie}
38           
39            # selecteer kwalificatie niveau en converteer naar integer
40            ?functie_niveau
41                a onz-pers:ODBKwalificatieWaarde ;
42                rdfs:label ?niveau .
43            BIND(xsd:integer(REPLACE(?niveau, "\\D+", "")) AS ?niveau_number)
44            
45            # filter medewerkers met kwalificatieniveau 1 t/m 6
46            FILTER((?niveau_number >=1) && (?niveau_number <=6))
47            
48            # filter de functies relevant tijdens de peildatum
49            FILTER (?start_functie <= ?peildatum && ((?eind_functie >= ?peildatum)||(!BOUND(?eind_functie))))
50        }
51        GROUPBY ?medewerker 
52	}
53    {
54        SELECT 
55            ?medewerker
56            (MIN(?niveau_number) AS ?kwalificatie_kwartaal)
57        WHERE
58        {    
59            # definieer peildatum  
60            BIND($(peildatum) AS ?peildatum)
61
62            # functie om kwartaal eerder de berekenen 
63            BIND((?peildatum - "P3M"^^xsd:duration) AS ?kwartaal_datum)
64            
65            # selecteer medewerkers met functie
66            ?medewerker 
67                a onz-g:Human ;
68                ^onz-pers:heeftOpdrachtnemer/ onz-g:isAbout ?functie .
69            
70            # selecteer werkovereenkomsten waarbij werknemer een zorgverlenerfunctie heeft
71            ?functie 
72                a onz-pers:ZorgverlenerFunctie ;  
73                onz-g:startDatum ?start_functie ;
74                a/ onz-g:hasQuality /onz-g:hasQualityValue ?functie_niveau .
75            OPTIONAL {?functie onz-g:eindDatum ?eind_functie}
76            
77            # selecteer kwalificatie niveau en converteer naar integer
78            ?functie_niveau
79                a onz-pers:ODBKwalificatieWaarde ;
80                rdfs:label ?niveau .
81            BIND(xsd:integer(REPLACE(?niveau, "\\D+", "")) AS ?niveau_number)
82            
83            # filter medewerkers met kwalificatieniveau 1 t/m 6
84            FILTER((?niveau_number >=1) && (?niveau_number <=6))
85            
86            # filter de functies relevant tijdens de kwartaal_datum
87            FILTER (?start_functie <= ?kwartaal_datum && ((?eind_functie >= ?kwartaal_datum)||(!BOUND(?eind_functie))))
88        }
89        GROUPBY ?medewerker
90	}
91    # definieer teller en noemer
92    BIND(1 AS ?aantal_medewerkers)
93    BIND(IF(?kwalificatie_kwartaal > ?kwalificatie_peildatum, 1, 0) AS ?daling_kwalificatieniveau)
94}

Heb je feedback?

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