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

Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:21-12-2023

Inwerkingtreding:21-12-2023




Bekijk bron...

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!