User:Jobu0101/Verwaltungsaufbau Deutschlands

From Wikidata
Jump to navigation Jump to search

Im Februar und März 2020 habe sehr viel Zeit darin investiert, daran zu arbeiten, dass der Verwaltungsaufbau Deutschlands lückenlos in Wikidata dargestellt wird. Diese Seite präsentiert die erzielten Fortschritte. Im Oktober 2022 nahm ich die Arbeit wieder auf. In der Zwischenzeit war manches wieder kaputt gemacht worden und natürlich hatte sich die Situation auch etwas geändert. Bis heute (Februar 2023) habe ich immer wieder die Lage überprüft und angepasst. So haben wir Anfang 2023 20 Gemeinden weniger in Deutschland als noch drei Jahre zuvor, als ich die Arbeit aufgenommen hatte.

Die 10795 Gemeinden Deutschlands

[edit]

Das erste Ziel

[edit]

Los ging es damit, dafür zu sorgen, dass alle Gemeinden Deutschlands in Wikidata abgebildet werden. Zwar hatte bereits vorher jede Gemeinde ein eigenes Wikidata-Objekt, doch diese waren nicht als Gesamtheit ansprechbar. Hier und da fehlte dies und das und andersherum gab es viele ehemalige Gemeinden, die noch nicht als ehemalig markiert waren.

Glücklicher Weise existiert zu jedem Flächenstaat ein Wikipedia-Artikel, der dessen Gemeinden auflistet. Diese Artikel sind die folgenden:

Also bin ich Bundesland für Bundesland durchgegangen und habe folgendes getan:

  1. Ich habe den entsprechenden Artikel aufgerufen und die dort angegebene Anzahl mit den dort aufgelisteten Gemeinden verglichen.
  2. Ich habe mir mit Wikidata-Abfragen alle Gemeinden ausgeben lassen, die laut Wikidata zu dem entsprechenden Bundesland gehören.
  3. Ich habe die beiden Listen verglichen und hauptsächlich auf Wikidataseite repariert, was zu reparieren war. Am häufigsten mussten ehemaligen Gemeinden der Gemeindestatus entzogen werden. Die Wikipedia-Artikel sind (im Gegensatz zu Wikidata) sehr gut gewartet. Daher habe ich diese als Hauptquelle für meine Arbeit genommen. In den Artikeln fielen nur ein paar Linkfixes an.

Mit anderen Worten: Wikipedia und Wikidata sind nun in sync. Gibt es hier einen Fehler, so lässt der sich höchstwahrscheinlich auf einen Fehler der Wikipedia zurückführen. Ich habe mir vorgenommen, in Zukunft auf die Gemeinden ein Auge zu werfen, damit die Ordnung, für die ich sorgte, bestehen bleibt.

In den folgenden Unterabschnitten präsentiere ich ein paar Abfragen, die das Ergebnis der Arbeit darstellen.

Die 10795 Gemeinden Deutschlands mit Gemeindeschlüssel

[edit]

Anfang Oktober 2022 habe ich mal geschaut, ob noch alles in Ordnung ist. Ich musste feststellen, dass dem nicht so ist. So habe ich mich darum gekümmert, die ganzen Gemeinden wieder zu sortieren. Nun passt es wieder und wir haben derzeit 10784 Gemeinden, darunter 2055 Städte. Seit Anfang 2023 sind es 10775 Gemeinden, darunter 2055 Städte.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT DISTINCT ?muni ?key ?muniLabel WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  ?instance wdt:P279* wd:Q262166 .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P439 ?key
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Die 16 Bundesländer mit ihrem Schlüssel und ihrer Hauptstadt

[edit]
SELECT ?state ?prefix ?key ?stateLabel ?capitalLabel ?capitalKey ?capital WHERE{
  ?state wdt:P31 wd:Q1221156 .
  ?state wdt:P1388 ?key .
  BIND (SUBSTR(?key,1,2) AS ?prefix) .
  OPTIONAL{?state wdt:P36 ?capital . ?capital wdt:P439 ?capitalKey}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?prefix
Try it!

Die 16 Bundesländer mit Anzahl ihrer Gemeinden

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?newOld (?prefix AS ?key) ?stateLabel (COUNT(?key) AS ?count) WHERE{
SELECT DISTINCT ?stateLabel ?muni ?prefix ?key ?newOld WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  {?instance wdt:P279+ wd:Q262166} UNION {BIND (wd:Q262166 AS ?instance)}
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P439 ?key .
  BIND (SUBSTR(?key,1,2) AS ?prefix) .
  ?state wdt:P1388 ?prefix .
  ?state wdt:P571 ?inception BIND(if(YEAR(?inception)<1990,"old","new") as ?newOld)
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
}
GROUP BY ?prefix ?stateLabel ?newOld
ORDER BY DESC(?newOld) ?stateLabel
Try it!

Gemeinden mit und ohne Stadtrecht

[edit]

Jede Gemeinde Deutschlands sollte über instance of (P31) als municipality in Germany (Q262166) markiert werden. Das geht entweder direkt oder über eine subclass of (P279) municipality in Germany (Q262166). Es hat sich beim Durchforsten der Daten gezeigt, dass man früher mehr dazu tendierte, jeder Gemeinde municipality in Germany (Q262166) direkt zu geben, während man heutzutage Gemeinden mit Stadtrecht stattdessen (und nicht zusätzlich) urban municipality in Germany (Q42744322) gibt. Nun gibt es in den verschiedenen Bundesländern ganz verschiedene Spezialformen von Gemeinden, hier ein paar Beispiele:

Weil dies alles Unterklassen von municipality in Germany (Q262166) (und viele sogar Unterklasse von urban municipality in Germany (Q42744322)) sind, ist es eigentlich nicht mehr notwendig, solchen Gemeinden municipality in Germany (Q262166) bzw. urban municipality in Germany (Q42744322) zusätzlich zu vergeben. In der Regel vertrete ich (und wie ich mitbekommen habe, die meisten hier) in diesen Situationen den Standpunkt, über instance of (P31) die Punkte, die schon als Oberklassen impliziert werden, nicht extra anzugeben. An dieser Stelle möchte ich jedoch eine Ausnahme machen und die folgende harte Regel formulieren:

Jeder Gemeinde Deutschlands sollte über instance of (P31) genau eines der beiden Objekte
zugeordnet werden.

Bevor ich die Regel erläutere, sollte kurz bemerkt werden, dass das Item non-urban municipality in Germany (Q116457956) am 28. Januar 2023 neu von mir eingeführt wurde, weil es einige Probleme löst, die bei dem vorherigen System bestanden. Vorher stand an dessen Stelle nämlich municipality in Germany (Q262166).

Warum an dieser Stelle diese harte Regel? Die Regel vereinfacht es, Abfragen zu schreiben, die sich auf alle Gemeinden mit und ohne Stadtrecht beziehen. Abfragen, die nach Ober- und Unterklassen suchen, brauchen oft zu lange. Eine Abfrage, die beispielsweise alle Objekte zählt, die Instanz einer Unterklasse von municipality in Germany (Q262166) sind, produziert einen Timeout:

SELECT (COUNT(?muni) AS ?numberOfGermanMunicipalities) WHERE{
SELECT DISTINCT ?muni WHERE {
  ?muni wdt:P31 ?instance . 
  {?instance wdt:P279+ wd:Q262166} UNION {BIND (wd:Q262166 AS ?instance)}
}
}
Try it!

Lässt man in der vorangegangenen Abfrage den Teil {?instance wdt:P279+ wd:Q262166} UNION weg und sucht damit nicht mehr nach Instanzen von echten Unterklassen, sondern nur noch nach direkten Instanzen, liefert einem die Software in unter einer Sekunde das Ergebnis.

Es ist von großem Interesse, schnell auf alle Gemeinden Deutschlands zugreifen zu können. Das ist ein Grund für diese harte Regel.

Darüber hinaus gibt es aber auch weitere Gründe, die offenbar werden, wenn man nicht nur an einer sauberen Darstellung der aktuellen Situation interessiert ist, sondern auch rückblickend historische Situationen in Augenschein nehmen möchte. Im Laufe der drei Jahre, in der ich mich der Situation annehme, habe ich nämlich darauf geachtet, dass auch die historische Situation von Anfang 2020 auch Anfang 2023 noch korrekt abrufbar ist. Das heißt, Wikidata muss wissen, zu welchem Zeitpunkt welche Items Gemeinde mit oder ohne Stattrechte war. Dafür benutzen wir die Qualifier start time (P580) und end time (P582). Die harte Regel sorgt nun dafür, dass klar ist, dass es bei der Zeitangabe wirklich darum geht, ob die Gemeinde in dem angegebenen Zeitfenster Gemeidne mit oder ohne Stadtrechte war. Benutzt man ausschließlich die Unterklassen, so bleibt offen, ob die Gemeinde außerhalb des Zeitfensters noch Gemeinde war. Daher ist es wichtig, auf einer Ebene mit disjunkten Instanzen, deren Vereinigung die ganze Ebene abbildet, zu argumentieren.

Hier noch einmal Beispiele, die für die Einführung von non-urban municipality in Germany (Q116457956) sprechen: Nur so lassen sich sauber Übergänge dokumentieren (ich denke hier beispielsweise an die Gemeinde Waldmohr (Q552671), die im Oktober 2020 Stadt geworden ist, aber nach wie vor Gemeinde ist; ein anderes Beispiel ist Tamm (Q61733)).

Die Arbeiten, diese harte Regel durchzusetzen, wurden am 24. Februar 2020 erstmals erfolgreich abgeschlossen. Im Folgenden die passenden Abfragen.

Die 10795 Gemeinden Deutschlands (dank harter Regel)

[edit]

Stand Oktober 2022: 10784 Gemeinden. So auch am 16.12.2022 wieder.

Stand Januar 2023: 10775 Gemeinden. Am 01.02.2023 bereinigt. Wir haben zum Jahreswechsel nämlich zehn Gemeinden verloren (Anrode (Q568703), Bromskirchen (Q625281), Dünwald (Q675844), Hartmannsdorf (Q551960), Kühdorf (Q530041), Menteroda (Q581220), Ostrau (Q71030), Rannstedt (Q676739), Riethgen (Q556478), Zschaitz-Ottewig (Q71076)) und eine gewonnen (Jahnatal (Q113503289)).

Stand März bis Juli 2023: 10773 Gemeinden. Es gab nämlich zwei weitere Eingemeindungen in Schleswig-Holstein: Maasbüll (Q21017) und Tastrup (Q557126).

Stand ab Januar 2024: 10753 Gemeinden. Es gab zum Jahreswechsel 2023/2024 in Thüringen einige Eingemeindungen. Darüber hinaus wurde Penkow (Q20295) (Mecklenburg-Vorpommern) eingemeindet.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel ?instanceLabel WHERE {
  VALUES ?instance {wd:Q116457956 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel DESC(?instanceLabel) ?muni
Try it!

Abfrage mit möglichem Zeitpunkt aus der Vergangenheit:

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel ?instanceLabel WHERE {
  BIND("2022-12-31"^^xsd:dateTime AS ?day) . 
  VALUES ?instance {wd:Q116457956 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P580 ?start FILTER(?start > ?day)} .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end FILTER(?end < ?day)}  
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel DESC(?instanceLabel) ?muni
Try it!

Abfrage mit möglichem Zeitpunkt aus der Vergangenheit und Gemeindeschlüssel:

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?instanceLabel WHERE {
  ?muni wdt:P439 ?key .
  BIND("2022-12-31"^^xsd:dateTime AS ?day) . 
  VALUES ?instance {wd:Q116457956 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P580 ?start FILTER(?start > ?day)} .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end FILTER(?end < ?day)}  
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel DESC(?instanceLabel) ?muni
Try it!

Abfrage mit voller Historie bezüglich Gemeindetyp und Gemeindeschlüssel:

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?keyRank ?keyStart ?keyEnd ?muniLabel ?typeLabel ?typeRank ?typeStart ?typeEnd WHERE {
  ?muni p:P439 ?keyBlock .
  ?keyBlock v:P439 ?key .
  ?keyBlock wikibase:rank ?keyRank .
  VALUES ?type {wd:Q116457956 wd:Q42744322 wd:Q262166} .
  ?muni p:P31 ?typeBlock . 
  ?typeBlock wikibase:rank ?typeRank .
  ?typeBlock v:P31 ?type .
  OPTIONAL{?typeBlock pq:P580 ?typeStart} .
  OPTIONAL{?typeBlock pq:P582 ?typeEnd} .
  OPTIONAL{?keyBlock pq:P580 ?keyStart} .
  OPTIONAL{?keyBlock pq:P582 ?keyEnd}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key ?typeStart ?typeEnd
Try it!

Geprüft (und vorher hart dafür gearbeitet) am Abend des 15.08.2024: Liefert das korrekte Ergebnis im Zeitraum vom 31.12.2014 bis heute (also für fast zehn Jahre). Aber nur zum Stichtag 31.12. jedes Jahres (dazwischen kann es noch Abweichungen geben) und auch der Typ municipality in Germany (Q262166) wurde noch nicht in non-urban municipality in Germany (Q116457956) bzw. urban municipality in Germany (Q42744322) überführt.

Die 8741 Gemeinden Deutschlands ohne Stadtrecht (dank harter Regel)

[edit]

Stand Oktober 2022: 8729 Gemeinden ohne Stadtrecht. Am 16.12.2022 erneut auf diesen Stand gebracht.

Stand Januar 2023: 8720 Gemeinden ohne Stadtrecht. Am 01.02.2023 auf diesen Stand gebracht.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 wd:Q116457956.
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel ?muni
Try it!

Die 2054 Gemeinden Deutschlands mit Stadtrecht (dank harter Regel)

[edit]

Stand Oktober 2022: 2055 Städte.

Stand Januar 2023: 2055 Städte. Am 11. Januar 2023 erneut auf diesen Stand gebracht.

Stand November 2023: 2056 Städte. Am 31. Dezember 2023 auf diesen Stand gebracht.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 wd:Q42744322.
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel ?muni
Try it!

Aufräumarbeiten

[edit]

Immer wieder muss hier einmal nachgebessert werden. Zur Zeit werden drei Gemeinden zuviel gefunden (Stand 24.08.2020), diese sind Q32165546, Q95993845, Q95976355. Mithilfe is erwünscht.

Einige deutsche Gemeinden sind market municipality of Germany (Q100341898). Eigentlich bräuchten diese Gemeinden daher nicht zusätzlich in municipality in Germany (Q262166) eingeordnet werden. Jedoch widerspräche das der oben beschriebenden harten Regel. Leider führt das hin und wieder zu Löschungen der Zuordnung municipality in Germany (Q262166). Beispielsweise hat 2003:C6:F733:5DBA:6D58:CCA2:1CE3:5BFB am 3. Oktober 2022 einige dieser Löschungen durchgeführt.

Diese Problemfälle findet man über die folgende Abfrage.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 wd:Q100341898.
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  FILTER NOT EXISTS {?muni wdt:P31 wd:Q262166}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel
Try it!

Am 16.12.2022 habe ich diese Problemfälle alle wieder behoben und wir kommen wieder auf 8729 Gemeinden ohne Stadtrecht und 2055 Städte.

Aber nur zwölf Tage später hat wieder jemand (2003:C6:F716:A8D5:F4CA:5697:E365:915A am 28. Dezember 2022 und 2003:C6:F716:A828:9014:A1AF:15C5:FB59 am 29. Dezember 2022) zugeschlagen mit der Folge das nun am 12.01.2023 wieder 386 Gemeinden fehlen.

Am 24. Januar hat dann 2003:C6:F715:E8A6:3895:425F:57F2:263A auf die Kacke gehauen. Die dadurch entstandenen Probleme habe ich daraufhin erstmal durch Einführung des neuen Items non-urban municipality in Germany (Q116457956) behoben und dachte, damit die Problematik aus der Welt geräumt zu haben. Pustekuchen!

Am 31. Januar wollte es 2003:C6:F72E:A4BD:9C73:8879:1498:B871 wissen. Dieses Mal habe ich mich an Wikidata:Project chat gewendet (siehe [1]). User:MisterSynergy hat einen IP-Range gesperrt und wird die Edits hoffentlich per Skript zurücknehmen. Vielleicht hilft die Rangesperrung, dass solche Edits in Zukunft ausbleiben, denn alle oben aufgeführten Kandidaten liegen in diesem Range.

Auch ganz nützlich ist die folgende Abfrage, die alle Items auflistet, die irgendwann einmal Gemeinde gewesen sein sollten.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?instance ?instanceLabel ?rank ?inception ?start ?end WHERE {
  VALUES ?instance {wd:Q116457956 wd:Q42744322 wd:Q262166} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  ?instanceBlock wikibase:rank ?rank .
  OPTIONAL{?muni wdt:P571 ?inception} .
  OPTIONAL{?instanceBlock pq:P580 ?start} .
  OPTIONAL{?instanceBlock pq:P582 ?end} .
  OPTIONAL{?muni wdt:P439 ?key}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key ?muniLabel DESC(?instanceLabel) ?muni
Try it!

Ehemalige Gemeinden, die noch wdt:P31 wd:Q262166 gesetzt (aber einen Wikipediaartikel) haben.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?muniLabel ?end ?article WHERE {
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 wd:Q262166 .
  OPTIONAL{?instanceBlock pq:P582 ?end}
  ?article schema:about ?muni . ?article schema:inLanguage "de"
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY DESC(?end) ?muniLabel
Try it!

Einwohner-Projekt 2020

[edit]

Von Ende Februar 2020 bis Mitte März 2020 ging ich alle Gemeinden durch und trug die aktuellsten verfügbaren Einwohnerzahlen aus dem Statistikportal ein. Das sind die Daten vom 30. September 2019. Schöner wäre natürlich der 31. Dezember 2019, aber darauf müssen wir noch etwas warten. Ziel der Aktion ist nicht nur, aktuelle Daten in Wikidata zu haben, sondern auch endlich einmal die Gemeinden untereinander vergleichen zu können. Bislang verglich man Zahlen, die zu verschiedenen Zeitpunkten und vielleicht mit verschiedenen Methoden erhoben wurden. Dem bereitete ich ein Ende. Die Arbeiten wurden am 15. März 2020 erfolgreich abgeschlossen.

Ausnahmen

[edit]

Vier Gemeinden sind bislang noch nicht im Statistikportal hinterlegt. Grund dafür ist, dass sie erst nach dem 30.09.2019 entstanden sind. Es handelt sich um die folgenden Gemeinden:

Gemeinden mit Gründung nach dem 30. September 2019

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?instanceLabel ?inception WHERE {
  VALUES ?instance {wd:Q116457956 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P571 ?inception FILTER(?inception > "2019-09-30"^^xsd:dateTime)
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Gemeinden ohne Einwohner-Aktualisierung vom 30. September 2019

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?instanceLabel WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  FILTER NOT EXISTS {
    ?muni p:P1082 ?populationBlock .
    ?populationBlock wikibase:rank wikibase:PreferredRank .
    ?populationBlock pq:P585 "2019-09-30"^^xsd:dateTime
  }
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Gemeinden mit Einwohner-Aktualisierung vom 30. September 2019

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?instanceLabel ?population WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock wikibase:rank wikibase:PreferredRank .
  ?populationBlock pq:P585 "2019-09-30"^^xsd:dateTime
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Gemeinden mit vom 30. September 2019 verschiedenen Einwohnerzahlen

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?instanceLabel ?population WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock wikibase:rank wikibase:PreferredRank .
  ?populationBlock pq:P585 ?popDate FILTER(?popDate!="2019-09-30"^^xsd:dateTime)
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Die 10795 deutschen Gemeinden mit Einwohnerzahlen

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?population ?instanceLabel WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P1082 ?population
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Alle Einwohnerdaten deutscher Gemeinden

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?instanceLabel ?population ?popDate ?rank WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock wikibase:rank ?rank .
  ?populationBlock pq:P585 ?popDate
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key ?popDate
Try it!

Alle Einwohnerdaten deutscher Gemeinden mit optionaler Methode

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?instanceLabel ?population ?popDate ?rank ?method WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock wikibase:rank ?rank .
  ?populationBlock pq:P585 ?popDate
  OPTIONAL{?populationBlock pq:P459 ?method}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key ?popDate
Try it!

Einwohner pro Bundesland und Durchschnitt pro Gemeinde

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?state ?stateLabel (COUNT(?muni) AS ?munis) (SUM(?pop) AS ?population) (ROUND(AVG(?pop)) AS ?average) WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P1082 ?pop .
  BIND (SUBSTR(?key,1,2) AS ?prefix) . ?state wdt:P1388 ?prefix
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?state ?stateLabel
ORDER BY ?average
Try it!

Einwohner gruppiert nach Gemeindenanfangsbuchstabe

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?firstLetter (COUNT(?muni) AS ?munis) (ROUND(MIN(?pop)) AS ?min) (ROUND(AVG(?pop)) AS ?average) (ROUND(MAX(?pop)) AS ?max) (SUM(?pop) AS ?population) WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P1082 ?pop .
  ?muni rdfs:label ?muniName . FILTER(lang(?muniName) = "de") .
  BIND (SUBSTR(?muniName,1,1) AS ?firstLetter)
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?firstLetter
ORDER BY ?firstLetter
Try it!

Die größten Gemeinden mit gegebenem Gemeindenanfangsbuchstaben

[edit]
SELECT ?firstLetter ?muni ?key ?muniName ?population WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni wdt:P439 ?key .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock ps:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P1082 ?population .
  ?muni rdfs:label ?muniName . FILTER(lang(?muniName) = "de") .
  BIND(STR(SUBSTR(?muniName,1,1)) AS ?firstLetter) . FILTER(?firstLetter="B")
}
ORDER BY DESC(?population)
LIMIT 5
Try it!

Einwohner-Projekt 2023a

[edit]

Seit dem 15. Februar 2023 arbeite ich wieder an einer Aktualisierung der Einwohnerdaten. Dieses Mal sogar aufgesplittet in männliche und weibliche Einwohner. Als Grundlage nehme ich den Bericht register of German municipalities (4th quarter 2022) (Q116783074) vom 12. Januar 2023. Dieser Bericht führt alle 10784 deutschen Gemeinden, die am 31. Dezember 2022 existierten, auf. Die Einwohnerzahlen kommen jedoch vom 31. Dezember 2021, also ein Jahr zuvor. Die folgende Abfrage zeigt die Gemeinden, die bereits mit den Daten versehen wurden.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?population ?male ?female ?instanceLabel ?rank ?retrieved WHERE {
  BIND("2021-12-31"^^xsd:dateTime AS ?popDay) . 
  BIND("2022-12-31"^^xsd:dateTime AS ?muniDay) . 
  VALUES ?instance {wd:Q116457956 wd:Q42744322} . 
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P580 ?start FILTER(?start > ?muniDay)} .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end FILTER(?end < ?muniDay)} .
  ?muni wdt:P439 ?key .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock pq:P1540 ?male .
  ?populationBlock pq:P1539 ?female .
  ?populationBlock wikibase:rank ?rank .
  ?populationBlock pq:P585 ?popDay .
  ?populationBlock prov:wasDerivedFrom ?ref.
  ?ref pr:P248 wd:Q116783074 .
  ?ref pr:P813 ?retrieved
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Am 17. April 2023 war es dann endlich so weit und die 10784 deutschen Gemeinden, um die es hier geht, haben die Einwohnerdaten eingetragen.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?population ?male ?female ?instanceLabel ?rank WHERE {
  BIND("2021-12-31"^^xsd:dateTime AS ?popDay) . 
  BIND("2022-12-31"^^xsd:dateTime AS ?muniDay) . 
  VALUES ?instance {wd:Q116457956 wd:Q42744322} . 
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P580 ?start FILTER(?start > ?muniDay)} .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end FILTER(?end < ?muniDay)} .
  ?muni wdt:P439 ?key .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock pq:P1540 ?male .
  ?populationBlock pq:P1539 ?female .
  ?populationBlock wikibase:rank ?rank .
  ?populationBlock pq:P585 ?popDay
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Einwohner-Projekt 2023b

[edit]

Seit dem 7. Oktober 2023 arbeite ich wieder an einer Aktualisierung der Einwohnerdaten. Als Grundlage nehme ich den Bericht register of German municipalities (2022) (Q122987347) vom 21. September 2023. Dieser Bericht führt alle 10784 deutschen Gemeinden, die am 31. Dezember 2022 existierten, mit den Einwohnerzahlen desselben Zeitpunkts auf. Beim Einwohner-Projekt 2023a stammten die Einwohnerzahlen ja aus dem Jahr 2021, obwohl die Gemeinden Ende 2022 zurate gezogen wurden. Diese Diskrepanz gibt es hier also nicht mehr. Die folgende Abfrage zeigt die Gemeinden, die bereits mit den Daten versehen wurden. Am 27. Oktober hatte ich alle 10784 Eintragungen zusammen und damit das Projekt abgeschlossen.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?population ?male ?female ?instanceLabel ?rank ?retrieved WHERE {
  BIND("2022-12-31"^^xsd:dateTime AS ?popDay) . 
  BIND("2022-12-31"^^xsd:dateTime AS ?muniDay) . 
  VALUES ?instance {wd:Q116457956 wd:Q42744322} . 
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P580 ?start FILTER(?start > ?muniDay)} .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end FILTER(?end < ?muniDay)} .
  ?muni wdt:P439 ?key .
  ?muni p:P1082 ?populationBlock .
  ?populationBlock v:P1082 ?population .
  ?populationBlock pq:P1540 ?male .
  ?populationBlock pq:P1539 ?female .
  ?populationBlock wikibase:rank ?rank .
  ?populationBlock pq:P585 ?popDay .
  ?populationBlock prov:wasDerivedFrom ?ref.
  ?ref pr:P248 wd:Q122987347.
  ?ref pr:P813 ?retrieved
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Die 294 Landkreise Deutschlands

[edit]

Die 13 Flächenländer Deutschlands sind in Landkreise unterteilt, die sich dann wiederrum in die ihnen zugehörigen Gemeinden untergliedern. Ich habe dafür gesorgt, dass es zu jedem Flächenland eine Klasse gibt, die dessen Landkreise vereint. Für einige Flächenländer war diese Klasse bereits vorhanden, für andere musste ich sie neuanlegen. Über located in the administrative territorial entity (P131) ordnete ich jeder Klasse ihr Bundesland zu (das war in kaum einer Klasse (vielleicht sogar keiner) bereits getan). Die größere Arbeit war jedoch, jeden Kreis in die passende Klasse einzuordnen. Das war selbst bei bereits vorhandenen Klassen nur sehr vereinzelt getan. Die folgenden Abfragen präsentieren das Ergebnis.

Abfragen: Die Kreisklassen und Landkreise

[edit]

Die 13 deutschen Kreisklassen mit Anzahl ihrer Kreise

[edit]

Am 17.12.2022 habe ich hier die Zuordnung der Klassen zu den Bundesländern geändert (von located in the administrative territorial entity (P131) nach applies to jurisdiction (P1001)).

SELECT  ?class ?classLabel ?stateLabel (COUNT(?district) AS ?count) WHERE {
  ?class wdt:P279 wd:Q106658 .
  ?class wdt:P1001 ?state .
  ?district wdt:P31 ?class .
  FILTER NOT EXISTS {?district wdt:P576 ?dissolved}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?class ?classLabel ?stateLabel
ORDER BY ?stateLabel
Try it!

Die 294 Landkreise Deutschlands mit Kreisschlüssel und Kreisklasse

[edit]
SELECT ?district ?key ?districtLabel ?classLabel WHERE {
  ?district wdt:P31 ?class .
  ?district wdt:P440 ?key .
  ?class wdt:P279 wd:Q106658 .
  FILTER NOT EXISTS {?district wdt:P576 ?dissolved}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Nun, am 17.12.2022, sind es wieder 294. Der Kreis Steinburg (Q3011) fehlte nämlich, er wurde hier entfernt.

Kreisstädte

[edit]

Ich habe dafür gesorgt, dass jedem Landkreis Deutschlands über capital (P36) sein Verwaltungssitz zugeordnet ist. Diesen nennt man, sofern der Verwaltungssitz Stadtrechte hat, auch Kreisstadt. Anderenfalls sagt man Kreishauptort. Es gibt nur einen Landkreis, dessen Verwaltungssitz keine Stadtrechte besitzt, nämlich den bayerischen Landkreis Garmisch-Partenkirchen (Q10518) mit Kreishauptort Garmisch-Partenkirchen (Q127043). Der Einfachheit halber werde ich im Folgenden den Begriff Kreisstadt auch für diesen Landkreis benutzen.

Andersherum habe ich dafür gesorgt, dass jeder Kreisstadt über capital of (P1376) ihr Landkreis zugeordnet wird. Darüber hinaus hat jede Kreisstadt instance of (P31) district capital (Q134626) bekommen. Bei all diesen Arbeiten ist auch immer gegenzuprüfen, dass nicht etwa andere Wikidata-Objekte, die gar keine Kreisstädte (mehr) sind, noch als entsprechende eingetragen sind. All dies ist geschehen, wie die folgenden Abfragen bezeugen (am 19.12.2022 noch einmal kontrolliert und auf den aktuellen Stand gebracht).

Es gibt jedoch zwei Ausnahmekreise, die zu erwähnen sind: Pinneberg (Q3006) und Neunkirchen (Q6799). Diese beiden Kreise haben offiziell eine andere Stadt als Kreisstadt ausgezeichnet als die Stadt, in der die Kreisverwaltung sitzt. Länger habe ich überlegt, wie ich dieses Problem hier in Wikidata löse. Ich habe mich dafür entschieden, in diesem Fall den Kreisen beide Städte zuzuordnen. Daher erhalten wir in den kommenden Abfragen (solange alles noch stimmt) 296 statt 294 Ergebniszeilen.

Vollständige Prüfung aller Kreisstadtrelationen

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?capital ?capitalKey ?capitalLabel ?districtLabel ?districtKey ?district ?classLabel WHERE {
  ?capital p:P1376 ?capitalBlock . 
  ?capitalBlock v:P1376 ?district .
  ?district wdt:P440 ?districtKey
  FILTER NOT EXISTS {?capitalBlock pq:P582 ?end1} .
  ?district p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end2} .
  ?class wdt:P279 wd:Q106658 .
  ?district wdt:P36 ?capital .
  ?capital wdt:P439 ?capitalKey .
  ?capital p:P31 ?dcBlock . 
  ?dcBlock v:P31 wd:Q134626 .
  FILTER NOT EXISTS {?dcBlock pq:P582 ?end3}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?capitalKey
Try it!

Die 294 Landkreise mit ihren 294+2 Kreisstädten

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?district ?dkey ?districtLabel ?classLabel ?capitalLabel ?ckey ?capital WHERE {
  ?district p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?class wdt:P279 wd:Q106658 .
  ?district wdt:P440 ?dkey .
  ?district wdt:P36 ?capital .
  ?capital wdt:P439 ?ckey
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?dkey
Try it!

Die 294+2 Kreisstädte mit ihren Landkreisen

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?capital ?capitalLabel ?districtLabel ?district WHERE {
  ?capital p:P1376 ?capitalBlock . 
  ?capitalBlock v:P1376 ?district .
  FILTER NOT EXISTS {?capitalBlock pq:P582 ?end1} .
  ?district p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end2} .
  ?class wdt:P279 wd:Q106658
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?capitalLabel
Try it!

Die 294+2 als Kreisstadt markierten Gemeinden

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?dc ?dcLabel ?muniInstanceLabel WHERE {
  VALUES ?muniInstance {wd:Q262166 wd:Q42744322} .
  ?dc p:P31 ?muniBlock . 
  ?muniBlock v:P31 ?muniInstance .
  FILTER NOT EXISTS {?muniBlock pq:P582 ?end1} .
  ?dc p:P31 ?captialBlock . 
  ?captialBlock v:P31 wd:Q134626 .
  FILTER NOT EXISTS {?captialBlock pq:P582 ?end2}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?muniLabel DESC(?instanceLabel) ?muni
Try it!

107 kreisfreie Städte

[edit]

In Deutschland gab es im Februar 2020 107 kreisfreie Städte (ohne Aachen). Ich habe dafür gesorgt, dass wir für jedes Bundesland eine eigene Klasse haben, in die die kreisfreien Städte dieses Bundeslandes einsortiert werden (Ausnahme ist das Saarland, welches keine einzige kreisfreie Stadt besitzt). Diese Einsortierung habe ich im Februar 2020 durchgeführt und abgeschlossen. Leider wurde mir Q85636059, die Klasse für Berlin, am 4. August 2020 weggelöscht. Daher habe ich sie nun unter Q114401982 erneut angelegt.

Eine andere Möglichkeit, auf die kreisfreien Städte zuzugreifen, ermöglicht der amtliche Gemeindeschlüssel. Der amtliche Gemeindeschlüssel einer Gemeinde endet nämlich genau dann auf "000", wenn sie kreisfrei ist.

Inzwischen, im Oktober 2022, besitzt Deutschland noch 106 kreisfreie Städte (ohne Aachen), Eisenach gehört seit dem 1. Juli 2021 dem Wartburgkreis an. In diesem Monat habe ich auch gelernt, dass man lieber applies to jurisdiction (P1001) statt located in the administrative territorial entity (P131) verwendet, um den einzelnen Klassen ihr Bundesland zuzuordnen. Die folgenden Abfragen ergeben nun wieder das korrekte Ergebnis (Stand 4. Oktober 2022), in den vergangenen 31 Monaten haben sich nämlich ein paar Fehler eingeschlichen, die nun wieder alle beseitigt sind.

Die 15 Klassen für kreisefreie Städte des jeweiligen Bundeslandes mit Anzahl der kreisfreien Städte

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?class ?classLabel ?stateLabel (COUNT(?city) AS ?urbanDistricts)  WHERE{
  ?class wdt:P279 wd:Q22865 .
  ?class wdt:P1001 ?state .
  ?city p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?class ?classLabel ?stateLabel
ORDER BY ?stateLabel
Try it!

Die 107 kreisfreien Städte Deutschlands sortiert nach Bundesland und dann Einwohnern

[edit]

Hier ist Aachen mit dabei.

PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?city ?key ?cityLabel ?population ?classLabel ?stateLabel  WHERE{
  ?class wdt:P279 wd:Q22865 .
  ?city p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?class wdt:P1001 ?state .
  ?city wdt:P439 ?key .
  ?city wdt:P1082 ?population
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?stateLabel DESC(?population)
Try it!

Die 106 kreisfreien Städte Deutschlands über den amtlichen Gemeindeschlüssel

[edit]

Hier ist Aachen nicht dabei, weil der Gemeindeschlüssel nicht auf "000" endet. Aachen gehört ja auch zur Städteregion Aachen, einem Quasikreis und ist damit quasi nicht kreisfrei.

PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P439 ?key .
  BIND (SUBSTR(?key,6,3) AS ?keyEnd) . FILTER(?keyEnd="000")
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Kreisfreie Städte Deutschlands ohne Bundeslandzugehörigkeit

[edit]

Die folgende Abfrage listet die Wikidata-Items auf, die direkt als independent city of Germany (Q22865) eingetragen sind. Weil dies nicht mehr der Fall sein sollte (stattdessen sollte die passende der 15 obigen Klassen verwendet werden), sollte die Abfrage ein leeres Ergebnis liefern.

SELECT ?city ?cityLabel WHERE{
  ?city wdt:P31 wd:Q22865
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
Try it!

Gemeinden der Landkreise

[edit]

Die 10795 Gemeinden Deutschlands gliedern sich in 107 kreisfreie Städte und 10688 kreisangehörige Gemeinden. Um letztere und deren Landkreis-Zuordnung geht es in diesem Abschnitt.

Die 294 Landkreise mit Anzahl der angehörigen Gemeinden

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?rural ?key ?ruralLabel ?classLabel (COUNT(?muni) AS ?munis) WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end}
  ?muni wdt:P131 ?rural .
  ?rural wdt:P31 ?class .
  ?rural wdt:P440 ?key .
  ?class wdt:P279 wd:Q106658
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?rural ?key ?ruralLabel ?classLabel
ORDER BY ?key
Try it!

Die 10688 kreisangehörigen Gemeinden Deutschlands mit Landkreis nach amtlichem Gemeindeschlüssel

[edit]
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?muni ?key ?muniLabel ?instanceLabel ?ruralKey ?ruralLabel ?rural WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P439 ?key .
  BIND (SUBSTR(?key,6,3) AS ?keyEnd) . FILTER(?keyEnd!="000") .
  BIND (SUBSTR(?key,1,5) AS ?ruralKey) .
  ?rural wdt:P440 ?ruralKey
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Gemeinden, denen die Zuordnung eines Landkreis fehlt

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?muni ?key ?muniLabel ?instanceLabel ?ruralKey ?ruralLabel ?rural WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?muni wdt:P439 ?key .
  BIND (SUBSTR(?key,6,3) AS ?keyEnd) . FILTER(?keyEnd!="000") .
  BIND (SUBSTR(?key,1,5) AS ?ruralKey) .
  ?rural wdt:P440 ?ruralKey
  FILTER NOT EXISTS {?muni wdt:P131 ?rural}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Am 9. März 2020 fehlten noch 584 Gemeinden. Dies blieb so bis zum 20. März, an dem ich die Arbeit aufnahm. Am 4. November 2023 waren es noch 91.

Gemeinden, die noch einem aufgelösten Landkreis angehören

[edit]
PREFIX v: <http://www.wikidata.org/prop/statement/>
SELECT ?rural ?key ?ruralLabel ?classLabel ?muniLabel ?muni WHERE {
  VALUES ?instance {wd:Q262166 wd:Q42744322} .
  ?muni p:P31 ?instanceBlock . ?instanceBlock v:P31 ?instance .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end}
  ?muni wdt:P131 ?rural .
  ?rural wdt:P31 ?class .
  ?rural wdt:P440 ?key .
  ?rural wdt:P576 ?dissolved .
  ?class wdt:P279 wd:Q106658
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
ORDER BY ?key
Try it!

Am 4. November 2023 auf 0 abgearbeitet (war nur ein Problemfall).

Nachbarkreise

[edit]

Balû nimmt sich gerade (Anfang bis Mitte März 2020) der Arbeit an, jedem Landkreis über shares border with (P47) seine Nachbarkreise zuzuordnen. Der Stand der Arbeit kann über die folgende Abfrage eingesehen werden.

PREFIX p: <http://www.wikidata.org/prop/>
PREFIX v: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>

SELECT ?rural ?key ?ruralLabel (COUNT(?neighbor) AS ?count) (GROUP_CONCAT(?neighborName;separator=", ") AS ?neighbors)  WHERE {
  ?rural p:P31 ?instanceBlock . 
  ?instanceBlock v:P31 ?class .
  FILTER NOT EXISTS {?instanceBlock pq:P582 ?end} .
  ?class wdt:P279 wd:Q106658 .
  ?rural wdt:P440 ?key .
  OPTIONAL{?rural wdt:P47 ?neighbor . ?neighbor wdt:P31 ?nClass . ?nClass wdt:P279 wd:Q106658 . ?neighbor rdfs:label ?neighborName . FILTER(lang(?neighborName) = "de")}
  SERVICE wikibase:label{bd:serviceParam wikibase:language "de"}
}
GROUP BY ?rural ?key ?ruralLabel
ORDER BY ?key
Try it!