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-01-01"^^xsd:date AS ?start_periode) 23 BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode) 24 25 VALUES ?personeels_overeenkomst 26 { 27 onz-pers:ArbeidsOvereenkomst 28# onz-pers:OproepOvereenkomst # automatically taken into account as it is a type of Arbeidsovereenkomst 29 onz-pers:UitzendOvereenkomst 30 onz-pers:InhuurOvereenkomst 31 } 32 33 ?functie 34 a onz-g:OccupationalPositionRole ; 35 a ?type_functie ; 36 onz-g:startDatum ?start_functie . 37 OPTIONAL {?functie a onz-g:OccupationalPositionRole ; 38 onz-g:eindDatum ?eind_functie} 39 FILTER(?start_functie <= ?eind_periode && ((?eind_functie >= ?start_periode) || (!BOUND(?eind_functie)))) 40 BIND(IF(?type_functie = onz-pers:ZorgverlenerFunctie, 1, 0) AS ?zorgfunctie) 41 42 ?overeenkomst 43 a ?personeels_overeenkomst ; 44 onz-pers:heeftOpdrachtnemer ?persoon ; 45 onz-g:isAbout ?locatie ; 46 onz-g:isAbout ?functie . 47 48 ?persoon a onz-g:Human . 49 50 #Bepaal de vestiging waar de werkzaamheden verricht worden volgens de werkovereenkomst 51 { 52 ?locatie onz-g:partOf* ?vestiging_uri . 53 ?vestiging_uri a onz-org:Vestiging ; 54 onz-g:identifiedBy ?vest_nr. 55 ?vest_nr a onz-org:Vestigingsnummer ; 56 onz-g:hasDataValue ?Vestiging . 57 } UNION { 58 #Includeer ook de organisatie als geheel en label deze als vestiging 59 ?locatie onz-g:partOf*/onz-org:vestigingVan ?organisatie_uri . 60 ?organisatie_uri 61 a onz-g:Business ; 62 rdfs:label ?Organisatie . 63 BIND(CONCAT('Totaal ',?Organisatie) AS ?Vestiging) 64 } 65 66 # Bepaal aantal dagen overeenkomst in rapportageperiode 67 BIND(IF(?start_functie < ?start_periode, ?start_periode, ?start_functie) AS ?start_indicator) 68 BIND(IF(?eind_functie > ?eind_periode || !BOUND(?eind_functie), ?eind_periode, ?eind_functie) AS ?eind_indicator) 69 70 ?start_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_indicator_final . 71 ?eind_indicator ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_indicator_final . 72 BIND(?eind_indicator_final - ?start_indicator_final + 1 AS ?dagen_indicator) 73 74 } GROUP BY ?persoon ?Vestiging ?functie ?start_indicator ?eind_indicator ?dagen_indicator 75 76 } 77 BIND(?zorg_boolean * ?factor AS ?zorg_factor) 78} GROUP BY ?Vestiging 79
Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!