Code gekopieerd
...Kopieer naar klembord
1# Indicator: Zorgkantoren 5.1 2# Parameters: ($kwartaal) 3# Ontologie: versie 2.1.1 4 5PREFIX onz-g: <http://purl.org/ozo/onz-g#> 6PREFIX onz-org: <http://purl.org/ozo/onz-org#> 7PREFIX onz-pers: <http://purl.org/ozo/onz-pers#> 8PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 9PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 10PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 11 12SELECT 13 ?vestiging 14 (SUM(?1620) AS ?16_20) 15 (SUM(?2125) AS ?21_25) 16 (SUM(?2630) AS ?26_30) 17 (SUM(?3135) AS ?31_35) 18 (SUM(?3640) AS ?36_40) 19 (SUM(?4145) AS ?41_45) 20 (SUM(?4650) AS ?46_50) 21 (SUM(?5155) AS ?51_55) 22 (SUM(?5660) AS ?56_60) 23 (SUM(?6165) AS ?61_65) 24 (SUM(?6670) AS ?66_70) 25 (SUM(?7175) AS ?71_75) 26{ 27 { 28 SELECT DISTINCT ?v ?werknemer ?start_periode ?eind_periode 29 WHERE { 30 BIND(($kwartaal) AS ?kwartaal) 31 BIND( 32 IF(?kwartaal = 'Q1', '2023-01-01'^^xsd:date, 33 IF(?kwartaal = 'Q2', '2023-04-01'^^xsd:date, 34 IF(?kwartaal = 'Q3', '2023-07-01'^^xsd:date, 35 IF(?kwartaal = 'Q4', '2023-10-01'^^xsd:date, 36 '')))) AS ?start_periode ) 37 BIND(?start_periode + "P3M"^^xsd:duration - "P1D"^^xsd:duration AS ?eind_periode) 38 39 ?overeenkomst 40 a onz-pers:ArbeidsOvereenkomst ; 41 onz-pers:heeftOpdrachtnemer ?werknemer ; 42 onz-g:isAbout ?locatie ; 43 onz-g:isAbout ?functie . 44 ?functie 45 a onz-g:OccupationalPositionRole ; 46 onz-g:startDatum ?start_functie . 47 OPTIONAL {?functie onz-g:eindDatum ?eind_functie} 48 FILTER(?start_functie <= ?eind_periode && 49 (?eind_functie >= ?start_periode || !BOUND(?eind_functie))) 50 ?locatie 51 a onz-g:StationaryArtifact ; 52 onz-g:partOf* ?v . 53 } 54 } 55 { 56 ?v 57 a onz-org:Vestiging ; 58 onz-g:identifiedBy ?vest_nr. 59 ?vest_nr a onz-org:Vestigingsnummer ; 60 onz-g:hasDataValue ?vestiging . 61 } UNION { 62 #Includeer ook de organisatie als geheel en label deze als vestiging 63 ?v onz-org:vestigingVan ?organisatie_uri . 64 ?organisatie_uri 65 a onz-g:Business ; 66 rdfs:label ?Organisatie . 67 BIND(CONCAT('Totaal ',?Organisatie) AS ?vestiging) 68 } 69 ?werknemer 70 a onz-g:Human ; 71 onz-g:hasDateOfBirth ?geboortedatum . 72 73 BIND(YEAR(?eind_periode) - YEAR(?geboortedatum) AS ?leeftijd_voorl) 74 BIND(IF(MONTH(?geboortedatum) > MONTH(?eind_periode) 75 || (MONTH(?geboortedatum) = MONTH(?eind_periode) && DAY(?geboortedatum) > DAY(?eind_periode)), 76 ?leeftijd_voorl - 1, ?leeftijd_voorl) AS ?leeftijd) 77 78 BIND(IF(?leeftijd >= 16 && ?leeftijd <= 20, 1, 0) AS ?1620) 79 BIND(IF(?leeftijd >= 21 && ?leeftijd <= 25, 1, 0) AS ?2125) 80 BIND(IF(?leeftijd >= 26 && ?leeftijd <= 30, 1, 0) AS ?2630) 81 BIND(IF(?leeftijd >= 31 && ?leeftijd <= 35, 1, 0) AS ?3135) 82 BIND(IF(?leeftijd >= 36 && ?leeftijd <= 40, 1, 0) AS ?3640) 83 BIND(IF(?leeftijd >= 41 && ?leeftijd <= 45, 1, 0) AS ?4145) 84 BIND(IF(?leeftijd >= 46 && ?leeftijd <= 50, 1, 0) AS ?4650) 85 BIND(IF(?leeftijd >= 51 && ?leeftijd <= 55, 1, 0) AS ?5155) 86 BIND(IF(?leeftijd >= 56 && ?leeftijd <= 60, 1, 0) AS ?5660) 87 BIND(IF(?leeftijd >= 61 && ?leeftijd <= 65, 1, 0) AS ?6165) 88 BIND(IF(?leeftijd >= 66 && ?leeftijd <= 70, 1, 0) AS ?6670) 89 BIND(IF(?leeftijd >= 71 && ?leeftijd <= 75, 1, 0) AS ?7175) 90 BIND(IF(?leeftijd >= 75 , 1, 0) AS ?75_) 91} 92GROUP BY ?vestiging 93ORDER BY ?vestiging 94
Loopt u tegen een issue of vraag aan bij het KIK-V product? Neem dan contact met ons op!