Uitwisselprofiel Nza Structurele Informatieverstrekking Bedrijfsvoering Wmg

Versie:1.0-RC1

Publicatiedatum:02-04-2024

Inwerkingtreding:02-04-2024




Bekijk bron...

2.1.2. Gemiddeld aantal ingezette fte aan personeel niet in loondienst (PNIL) met een zorgfunctie.

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: NZA JMV 2.1.2
2# Parameters: -
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 xsd: <http://www.w3.org/2001/XMLSchema#>
8PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
9PREFIX time: <http://www.w3.org/2006/time#>
10
11SELECT 
12     ("Totaal_organisatie" AS ?Organisatie_onderdeel) 
13     (SUM(?gem_aantal_uren_per_overeenkomst) AS ?Gemiddeld_aantal_ingezette_fte_per_medewerker_per_week_aan_PNIL_met_een_zorgfunctie)
14WHERE 
15{
16    {
17        SELECT
18            ?functie
19            (SUM(?uren) AS ?uren_per_functie)
20        WHERE
21        {
22            BIND ("2023-01-01"^^xsd:date AS ?start_periode_datum)
23            BIND ("2023-12-31"^^xsd:date AS ?eind_periode_datum) 
24            
25            VALUES ?type_overeenkomst { onz-pers:InhuurOvereenkomst onz-pers:UitzendOvereenkomst }
26            
27            # selecteer zorgverlenerfuncties die geldig zijn binnen de periode
28            ?functie a onz-pers:ZorgverlenerFunctie ;
29                onz-g:startDatum ?start_functie .
30            OPTIONAL {
31                ?functie onz-g:eindDatum ?eind_functie
32            }
33            FILTER (?start_functie <= ?eind_periode_datum && (?eind_functie >= ?eind_periode_datum || !BOUND(?eind_functie)))
34
35            # selecteer de arbeidsovereenkomst die hoort bij de functie
36            ?overeenkomst
37                onz-g:isAbout ?functie ;
38                a ?type_overeenkomst ;
39                onz-g:isAbout ?gewerkte_periode .
40            
41            # selecteer aantal gewerkte uren binnen periode die gekoppeld zijn aan werkovereenkomst 
42            ?gewerkte_periode 
43                a onz-pers:GewerktePeriode ;
44                onz-g:hasBeginTimeStamp ?start_gewerktDT ;
45                onz-g:hasEndTimeStamp ?eind_gewerktDT ;
46                onz-g:hasQuality / onz-g:hasQualityValue / onz-g:hasDataValue ?uren .
47            BIND(STRDT(SUBSTR(STR(?start_gewerktDT),1,10), xsd:date) AS ?start_gewerkt)
48            BIND(STRDT(SUBSTR(STR(?eind_gewerktDT),1,10), xsd:date) AS ?eind_gewerkt)
49            # selecteer gewerkte tijd in de gevraagde periode
50            FILTER(?start_gewerkt >= ?start_periode_datum && ?eind_gewerkt <= ?eind_periode_datum)
51
52        } GROUP BY ?functie
53    } 
54    
55    BIND ("2023-01-01"^^xsd:date AS ?start_periode_datum)
56    BIND ("2023-12-31"^^xsd:date AS ?eind_periode_datum) 
57    ?functie a onz-pers:ZorgverlenerFunctie ;
58             onz-g:startDatum ?start_functie .
59    OPTIONAL {
60        ?functie onz-g:eindDatum ?eind_functie
61    }
62    # Bepaal aantal dagen functie in rapportageperiode
63    BIND(IF(?start_functie < ?start_periode_datum, ?start_periode_datum, ?start_functie) AS ?start_indicator)
64    BIND(IF(?eind_functie > ?eind_periode_datum || !BOUND(?eind_functie), ?eind_periode_datum, ?eind_functie) AS ?eind_indicator)
65    ?start_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_indicator_final .
66    ?eind_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_indicator_final .
67    BIND(?eind_indicator_final - ?start_indicator_final + 1 AS ?dagen_indicator)
68
69    # bereken het totaal aantal weken dat deze persoon beschikte over een overeenkomst
70    BIND(?dagen_indicator / 7 AS ?weken_indicator)
71    # bereken het gemiddeld aantal ingezette uren per medewerker per week 
72    BIND(?uren_per_functie / (?weken_indicator * 36) AS ?gem_aantal_uren_per_overeenkomst)
73
74} 
75

Heb je feedback?

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