query-e9e4f030fec3564408d5c69fc2d16e33
Propertiesinstance of (P31)located in the administrative territorial entity (P131)end time (P582)
Use at
- https://query.wikidata.org/sparql
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/>
SELECT ?commune ?departement WHERE {
?commune p:P31 ?communeStatement . # les trucs qui sont potentiellement
?communeStatement ps:P31 ?type . # ...un des types autorisés ci-dessous
VALUES ?type {
wd:Q484170 # commune française
wd:Q2989454 # commune nouvelle
wd:Q22927616 # commune française à statut particulier
}
FILTER NOT EXISTS {
?communeStatement pq:P582 [] . # mais alors vraiment des communes pur cru, sans date de fin
}
?commune p:P131 ?communeArrondissementStatement . # qui sont dans un arrondissement
?communeArrondissementStatement ps:P131 ?arrondissement .
?arrondissement wdt:P31 wd:Q194203 .
FILTER NOT EXISTS { # qui y sont pour de vrai
?communeArrondissementStatement pq:P582 [] .
}
?arrondissement p:P31 ?arrondissementExistsStatement . # un arrondissement sans date de fin
?arrondissementExistsStatement ps:P31 wd:Q194203 .
FILTER NOT EXISTS {
?arrondissementExistsStatement pq:P582 [] .
}
?arrondissement p:P131 ?arrondissementDepartementStatement . # qui est dans un département
?arrondissementDepartementStatement ps:P131 ?departement .
FILTER NOT EXISTS { # mais qui y est sans date de fin
?arrondissementDepartementStatement pq:P582 [] .
}
?departement p:P31 ?departementExistsStatement . # un département sans date de fin
?departementExistsStatement ps:P31 ?departementType .
FILTER NOT EXISTS {
?departementExistsStatement pq:P582 [] .
}
VALUES ?departementType {
wd:Q6465 #département de France métropolitaine
wd:Q28332 # département/région ultramarin
}
}
Query found at
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v8("?arrondissement")
v2("?arrondissementDepartementStatement")
v3("?arrondissementExistsStatement")
v6("?commune"):::projected
v4("?communeArrondissementStatement")
v5("?communeStatement")
v9("?departement"):::projected
v1("?departementExistsStatement")
v11("?departementType")
v8("?type")
a5((" "))
a4((" "))
a3((" "))
a2((" "))
a1((" "))
c7(["wd:Q194203"]):::iri
f0[["not "]]
subgraph f0e0["Exists Clause"]
e0v1 --"p:qualifier/P582"--> e0a1
e0v1("?departementExistsStatement"):::projected
e0a1((" ")):::projected
end
f0--EXISTS--> f0e0
f0 --> v1
f0 --> c1
f0 --> a1
v1 --"p:qualifier/P582"--> a1
f1[["not "]]
subgraph f1e1["Exists Clause"]
e1v1 --"p:qualifier/P582"--> e1a1
e1v1("?arrondissementDepartementStatement"):::projected
e1a1((" ")):::projected
end
f1--EXISTS--> f1e1
f1 --> v2
f1 --> c1
f1 --> a2
v2 --"p:qualifier/P582"--> a2
f2[["not "]]
subgraph f2e2["Exists Clause"]
e2v1 --"p:qualifier/P582"--> e2a1
e2v1("?arrondissementExistsStatement"):::projected
e2a1((" ")):::projected
end
f2--EXISTS--> f2e2
f2 --> v3
f2 --> c1
f2 --> a3
v3 --"p:qualifier/P582"--> a3
f3[["not "]]
subgraph f3e3["Exists Clause"]
e3v1 --"p:qualifier/P582"--> e3a1
e3v1("?communeArrondissementStatement"):::projected
e3a1((" ")):::projected
end
f3--EXISTS--> f3e3
f3 --> v4
f3 --> c1
f3 --> a4
v4 --"p:qualifier/P582"--> a4
f4[["not "]]
subgraph f4e4["Exists Clause"]
e4v1 --"p:qualifier/P582"--> e4a1
e4v1("?communeStatement"):::projected
e4a1((" ")):::projected
end
f4--EXISTS--> f4e4
f4 --> v5
f4 --> c1
f4 --> a5
v5 --"p:qualifier/P582"--> a5
v6 --"p:P31"--> v5
v5 --"p:statement/P31"--> v8
bind5[/VALUES ?type/]
bind5-->v8
bind50(["wd:Q484170"])
bind50 --> bind5
bind51(["wd:Q2989454"])
bind51 --> bind5
bind52(["wd:Q22927616"])
bind52 --> bind5
v6 --"p:P131"--> v4
v4 --"p:statement/P131"--> v8
v8 --"p:direct/P31"--> c7
v8 --"p:P31"--> v3
v3 --"p:statement/P31"--> c7
v8 --"p:P131"--> v2
v2 --"p:statement/P131"--> v9
v9 --"p:P31"--> v1
v1 --"p:statement/P31"--> v11
bind6[/VALUES ?departementType/]
bind6-->v11
bind60(["wd:Q6465"])
bind60 --> bind6
bind61(["wd:Q28332"])
bind61 --> bind6