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

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

1.1.2 Gemiddeld aantal personeelsleden Q2 2023

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 1.1
2# Parameters: ($kwartaal)
3# Ontologie: versie 2.0.0 of nieuwer
4
5PREFIX onz-g: <http://purl.org/ozo/onz-g#>
6PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
7PREFIX onz-org: <http://purl.org/ozo/onz-org#>
8PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
9PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
10PREFIX time: <http://www.w3.org/2006/time#>
11
12SELECT 
13    ?Vestiging 
14    (SUM(?zorg_factor) AS ?Zorg) 
15    (SUM(?factor) - SUM(?zorg_factor) AS ?Niet_zorg)
16    (SUM(?factor) AS ?Totaal) 
17{
18    {
19        SELECT ?persoon ?Vestiging (MAX(?zorgfunctie) AS ?zorg_boolean) (?dagen_indicator/90 AS ?factor)
20        {
21            # Bepaal een meetperiode van drie maanden, startend vanaf een in te vullen datum
22            BIND("2023-04-01"^^xsd:date AS ?start_periode)
23            BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode)
24            
25            # Bepaal filter voor definitie van overeenkomsten die geldig zijn voor personeelsleden
26            VALUES ?personeels_overeenkomst 
27            { 
28                onz-pers:ArbeidsOvereenkomst
29#        		onz-pers:OproepOvereenkomst # automatically taken into account as it is a type of Arbeidsovereenkomst
30                onz-pers:UitzendOvereenkomst
31                onz-pers:InhuurOvereenkomst
32            }
33
34            ?functie 
35                a onz-g:OccupationalPositionRole ;
36                a ?type_functie ;
37                onz-g:startDatum ?start_functie .
38            OPTIONAL {?functie a onz-g:OccupationalPositionRole ; 
39                            onz-g:eindDatum ?eind_functie}
40            FILTER(?start_functie <= ?eind_periode && ((?eind_functie >= ?start_periode) || (!BOUND(?eind_functie))))
41            BIND(IF(?type_functie = onz-pers:ZorgverlenerFunctie, 1, 0) AS ?zorgfunctie)
42
43            ?overeenkomst 
44                a ?personeels_overeenkomst ;
45                onz-pers:heeftOpdrachtnemer ?persoon ;
46                onz-g:isAbout ?locatie ;
47                onz-g:isAbout ?functie .
48
49            ?persoon a onz-g:Human .
50
51            # Bepaal de vestiging waar de werkzaamheden verricht worden volgens de werkovereenkomst
52            {
53                ?locatie onz-g:partOf* ?vestiging_uri .
54                ?vestiging_uri a onz-org:Vestiging ;
55                            onz-g:identifiedBy ?vest_nr.
56                ?vest_nr a onz-org:Vestigingsnummer ;
57                        onz-g:hasDataValue ?Vestiging .
58            } UNION {
59                # Includeer ook de organisatie als geheel en label deze als vestiging
60                ?locatie onz-g:partOf*/onz-org:vestigingVan ?organisatie_uri .
61                ?organisatie_uri 
62                    a onz-g:Business ;
63                    rdfs:label ?Organisatie .
64                BIND(CONCAT('Totaal ',?Organisatie) AS ?Vestiging)
65            }
66            
67            # Bepaal aantal dagen overeenkomst in rapportageperiode
68            BIND(IF(?start_functie < ?start_periode, ?start_periode, ?start_functie) AS ?start_indicator)
69            BIND(IF(?eind_functie > ?eind_periode || !BOUND(?eind_functie), ?eind_periode, ?eind_functie) AS ?eind_indicator)
70    
71            ?start_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_indicator_final .
72            ?eind_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_indicator_final .
73            BIND(?eind_indicator_final - ?start_indicator_final + 1 AS ?dagen_indicator)
74
75        } GROUP BY ?persoon ?Vestiging ?functie ?start_indicator ?eind_indicator ?dagen_indicator
76
77    }
78    BIND(?zorg_boolean * ?factor AS ?zorg_factor)
79} GROUP BY ?Vestiging

Heb je feedback?

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