Uitwisselprofiel Zorgkantoren Inkoopondersteuning en beleidsontwikkeling

Versie:

Publicatiedatum:23-12-2024

Inwerkingtreding:23-12-2024




Bekijk bron...

1.2 Aantal personeelsleden op een peildatum

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: Zorgkantoren 1.2
2# Parameters: ?peildatum ?zorgkantoor
3# Ontologie: versie 3.0.0 of nieuwer
4
5PREFIX onz-org: <http://purl.org/ozo/onz-org#>
6PREFIX onz-g: <http://purl.org/ozo/onz-g#>
7PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
8PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
9
10SELECT 
11	?vestiging
12	?zorgkantoor_vestiging
13    (SUM(?zorg_functie) AS ?Zorg)
14    (SUM(?niet_zorg_functie) AS ?Niet_zorg)
15    (COUNT(DISTINCT ?persoon) AS ?Totaal)
16{
17    SELECT
18    	?vestiging
19    	?zorgkantoor_vestiging
20    	?persoon
21    	(MAX(?zorg) AS ?zorg_functie)
22    	(MAX(?niet_zorg) AS ?niet_zorg_functie)
23
24    {
25        # BIND("2024-06-12"^^xsd:date AS ?peildatum)
26        # BIND(onz-org:ZorgkantoorMenzis AS ?zorgkantoor)
27
28        # Bepaal filter voor definitie van overeenkomsten die geldig zijn voor personeelsleden
29        VALUES ?personeels_overeenkomst 
30        { 
31            onz-pers:ArbeidsOvereenkomst
32            onz-pers:OproepOvereenkomst
33            onz-pers:UitzendOvereenkomst
34            onz-pers:InhuurOvereenkomst
35        }
36        ?overeenkomst 
37            a ?personeels_overeenkomst ;
38            onz-pers:heeftOpdrachtnemer ?persoon ;
39            onz-g:hasPart ?overeenkomst_afspraak .
40        ?overeenkomst_afspraak
41            a onz-pers:WerkOvereenkomstAfspraak ;
42            onz-g:startDatum ?start_afspraak .
43        OPTIONAL {
44            ?overeenkomst_afspraak onz-g:eindDatum ?eind_afspraak
45        }
46        FILTER(?start_afspraak <= ?peildatum && (?eind_afspraak >= ?peildatum || !BOUND(?eind_afspraak)))
47        ?overeenkomst_afspraak onz-g:isAbout ?functie .                
48        ?functie a onz-g:OccupationalPositionRole .
49        ?overeenkomst_afspraak onz-g:isAbout ?locatie .
50        ?locatie a onz-g:StationaryArtifact .
51        ?locatie onz-g:partOf* ?vestiging_uri .
52        ?vestiging_uri a onz-org:Vestiging ;
53            onz-g:hasLocalizableArea/onz-g:identifiedBy/onz-g:hasPart/onz-g:hasPart ?postcode_6 .
54        BIND(IRI(SUBSTR(STR(?postcode_6), 1, STRLEN(STR(?postcode_6)) - 2)) AS ?postcode)
55        ?pc_gebied 
56            onz-g:identifiedBy ?postcode ;
57            onz-g:partOf+ ?zk_regio .
58        ?zk_regio a onz-org:ZorgkantoorRegio .
59        ?zorgkantoor onz-g:hasOperatingRange ?zk_regio .
60        {     
61            ?vestiging_uri onz-g:identifiedBy ?vest_nr .    	
62            ?vest_nr a onz-org:Vestigingsnummer ;
63            	onz-g:hasDataValue ?vestiging .
64        } UNION {
65            # Includeer ook de organisatie als geheel en label deze als vestiging
66            ?vestiging_uri onz-org:vestigingVan ?organisatie_uri .
67            BIND("Totaal organisatie" AS ?vestiging)
68            BIND("n.v.t." AS ?zk_vestiging)
69        }
70        BIND(IF(!BOUND(?zk_vestiging), ?zorgkantoor, ?zk_vestiging) AS ?zorgkantoor_vestiging)
71        # Bepaal of de functie op de overeenkomst van het type ZorgverlenerFunctie is
72        BIND(IF(EXISTS{?functie a onz-pers:ZorgverlenerFunctie}, 1, 0) AS ?zorg)
73        BIND(IF(?zorg = 0, 1, 0) AS ?niet_zorg)
74    } 
75    GROUP BY ?persoon ?vestiging ?zorgkantoor_vestiging
76} 
77GROUP BY ?vestiging ?zorgkantoor_vestiging

Heb je feedback?

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