query-4d154edb14f28ce7fe3cfd65a121b358

rq turtle/ttl

Au 11 janvier 1970, il y a 22 régions. SELECT DISTINCT ?inseeRégion ?région ?nom WHERE { BIND ( "1970-01-11"^^xsd:dateTime as ?dateRecherche )

?région p:P2585 ?P2585node . # existence d'un code Insee ?P2585node ps:P2585 ?inseeRégion . # valeur du code Insee OPTIONAL { ?région wdt:P571 ?dateCréation . } # date de création OPTIONAL { ?région wdt:P576 ?dateDissolution . } # date de dissolution

?région p:P1448 ?P1448node . # existence d'un nom ?P1448node ps:P1448 ?nom . # valeur du nom FILTER( lang(?nom)="fr" ). # nom en français MINUS { ?P1448node pq:P3831 wd:Q96406455 . } # nom long MINUS { ?P1448node pq:P2241 ?dépréciationNom . } # nom erroné OPTIONAL { ?P1448node pq:P580 ?dateDébutNom . } # date de début du nom OPTIONAL { ?P1448node pq:P582 ?dateFinNom . } # date de fin du nom

OPTIONAL {?région p:P31 [ps:P31 wd:Q36784; pq:P580 ?dateRégionalisation].} FILTER ( !BOUND(?dateRégionalisation) || ?dateRégionalisation <= ?dateRecherche ) # régionalisation outre-mer

FILTER ( !BOUND(?dateCréation) || ?dateCréation <= ?dateRecherche ) # ancienne région FILTER ( !BOUND(?dateDissolution) || ?dateDissolution > ?dateRecherche ) # future région FILTER ( !BOUND(?dateDébutNom) || ?dateDébutNom <= ?dateRecherche ) # ancien nom FILTER ( !BOUND(?dateFinNom) || ?dateFinNom > ?dateRecherche ) # futur nom
} ORDER BY ?inseeRégion

Use at

PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
PREFIX p: <http://www.wikidata.org/prop/>
# Au 11 janvier 1970, il y a 22 régions.
SELECT DISTINCT ?inseeRégion ?région ?nom WHERE {
  BIND ( "1970-01-11"^^xsd:date as ?dateRecherche ) 

   ?région p:P2585 ?P2585node . # existence d'un code Insee
    ?P2585node ps:P2585 ?inseeRégion . # valeur du code Insee
    OPTIONAL { ?région wdt:P571 ?dateCréation . } # date de création
    OPTIONAL { ?région wdt:P576 ?dateDissolution . } # date de dissolution

   ?région p:P1448 ?P1448node . # existence d'un nom
    ?P1448node ps:P1448 ?nom . # valeur du nom
    FILTER( lang(?nom)="fr" ). # nom en français
    MINUS { ?P1448node pq:P3831 wd:Q96406455 . } # nom long
    MINUS { ?P1448node pq:P2241 ?dépréciationNom . } # nom erroné
    OPTIONAL { ?P1448node pq:P580 ?dateDébutNom . } # date de début du nom
    OPTIONAL { ?P1448node pq:P582 ?dateFinNom . } # date de fin du nom 

   OPTIONAL {?région p:P31 [ps:P31 wd:Q36784; pq:P580 ?dateRégionalisation].}
    FILTER ( !BOUND(?dateRégionalisation) || ?dateRégionalisation <= ?dateRecherche ) # régionalisation outre-mer

   FILTER ( !BOUND(?dateCréation) || ?dateCréation <= ?dateRecherche ) # ancienne région
   FILTER ( !BOUND(?dateDissolution) || ?dateDissolution > ?dateRecherche ) # future région 
   FILTER ( !BOUND(?dateDébutNom) || ?dateDébutNom <= ?dateRecherche ) # ancien nom
   FILTER ( !BOUND(?dateFinNom) || ?dateFinNom > ?dateRecherche ) # futur nom   
}
ORDER BY ?inseeRégion

Query found at

graph TD classDef projected fill:lightgreen; classDef literal fill:orange; classDef iri fill:yellow; v11("?P1448node") v10("?P2585node") v6("?dateCréation") v5("?dateDissolution") v4("?dateDébutNom") v2("?dateFinNom") v9("?dateRecherche") v7("?dateRégionalisation") v12("?dépréciationNom") v1("?inseeRégion"):::projected v8("?nom"):::projected v9("?région"):::projected a1((" ")) c9(["wd:Q96406455"]):::iri c14(["wd:Q36784"]):::iri f0[["(not bound(?dateFinNom) || ?dateFinNom > ?dateRecherche)"]] f0 --> v2 f0 --> v9 f1[["(not bound(?dateDébutNom) || ?dateDébutNom <= ?dateRecherche)"]] f1 --> v4 f1 --> v9 f2[["(not bound(?dateDissolution) || ?dateDissolution > ?dateRecherche)"]] f2 --> v5 f2 --> v9 f3[["(not bound(?dateCréation) || ?dateCréation <= ?dateRecherche)"]] f3 --> v6 f3 --> v9 f4[["(not bound(?dateRégionalisation) || ?dateRégionalisation <= ?dateRecherche)"]] f4 --> v7 f4 --> v9 f5[["?nom = 'fr'"]] f5 --> v8 bind6[/"'1970-01-11^^xsd:date'"/] bind6 --as--o v9 v9 --"p:P2585"--> v10 v10 --"p:statement/P2585"--> v1 subgraph optional0["(optional)"] style optional0 fill:#bbf,stroke-dasharray: 5 5; v9 -."p:direct/P571".-> v6 end subgraph optional1["(optional)"] style optional1 fill:#bbf,stroke-dasharray: 5 5; v9 -."p:direct/P576".-> v5 end v9 --"p:P1448"--> v11 v11 --"p:statement/P1448"--> v8 subgraph minus7["MINUS"] style minus7 stroke-width:6px,fill:pink,stroke:red; v11 --"p:qualifier/P3831"--> c9 end subgraph minus8["MINUS"] style minus8 stroke-width:6px,fill:pink,stroke:red; v11 --"p:qualifier/P2241"--> v12 end subgraph optional2["(optional)"] style optional2 fill:#bbf,stroke-dasharray: 5 5; v11 -."p:qualifier/P580".-> v4 end subgraph optional3["(optional)"] style optional3 fill:#bbf,stroke-dasharray: 5 5; v11 -."p:qualifier/P582".-> v2 end subgraph optional4["(optional)"] style optional4 fill:#bbf,stroke-dasharray: 5 5; a1 -."p:statement/P31".-> c14 a1 --"p:qualifier/P580"--> v7 v9 --"p:P31"--> a1 end