VVO Fahrplan abgreifen

Der Verkehrsverbund Oberelbe nutzt zur Fahrplanabfrage eine System namens EFA der Firma mentzDV. Um Fahrplandaten in maschinenlesbarer Form nutzen zu können, gibt es eine XML-Schnittstelle. Im Datenportal der Stadt Linz findet sich ein Dokument, in dem die Schnittstelle dokumentiert ist. Ein passendes, jedoch unkommentiertes Servlet plus Beispielanwendungen gibt es anderenorts.

Für den VVO sieht das dann z.B. so aus. Die Parameter für die URL http://efa.vvo-online.de:8080/dvb/static/XML_TRIP_REQUEST2 sind gar nicht schwer verstehen:

sessionID=0
requestID=0
language=de // Sprache, auch "en" möglich
itdDateDay=11 // Tag
itdDateMonth=03 // Monat
itdDateYear=14 // Jahr
itdTripDateTimeDepArr=dep // Ankunftszeit oder Abfahrtszeit
itdTimeHour=23 // Stunden
itdTimeMinute=51 // Minuten
place_origin=dresden // Ausgangsort
type_origin=stop // Art des Ausgangspunkts, hier eine Haltestelle
name_origin=tannenstr // Ausgangshaltestelle
place_destination=dresden // Zielort
type_destination=address // Art des Ziels, hier eine Adresse
name_destination=bautznerstr+33 // Zieladresse
limit=1 // Anzahl der Ergebnisse

Auch wenn die Daten nicht frei verwendet werden können, hilft es zumindest den Zugang zu haben. Weitere Tests stehen natürlich noch aus. Interessant wären Angaben zu Geo- und Echtzeitdaten. Vielleicht finden wir zum hands on session von OpenDataDresden am 14. März 2014 etwas Zeit zur genaueren Lektüre.

Nachtrag 1:
Die Dokumentation aus Linz ist leider nicht ganz vollständig. Beim Versuch die Geo-Koordinaten zu entschlüsseln bin ich auf ebensolche Dokumente der Städte Wien und Dublin gestoßen. Möchte man beispielsweise die nächstgelegenen Haltestelle von seinem aktuellen Standpunkt aus ermitteln, dann hilft folgende Anfrage:
http://efa.vvo-online.de:8080/dvb/static/XML_TRIP_REQUEST2?type_origin=coord&name_origin=13.751929:51.074259:WGS84
Entscheidend ist dabei nicht nur die Longitude und Latitude, sondern die Projektion (hier die von OSM und Google Maps präferierte: WGS84). Per default scheint die Dresdner EFA-Variante mit der Projektion NAV4 bzw. EPSG 32632 zu arbeiten. Die entsprechenden Koordinaten gibt auch die obige Fahrplanabfrage (TRIP_REQUEST) aus. Jetzt muss man nur noch herausfinden, wie man die Projektionen geschmeidig konvertiert.

Was wäre wenn wir eine Open Commons Region Dresden / Oberlausitz / Sachsen gründen?

Ich komme gerade aus Linz. Immer wenn ich von dort heimkehre bemerke ich, in was uns die Linzer voraus sind. Mit uns meine ich die Dresdener, aber auch die Oberlausitzer und die Sachsen im Allgemeinen. Bereits 2009 beeindruckte mich die Offenheit der Stadt und Stadtverwaltung für den freien Zugang zu Infromationen. Inzwischen sind diese Initiativen in der Open Commons Region Linz modellhaft unter einem virtuellem Dach vereint. Die Stadt Linz komprimiert das auf einen Satz, der fast schon alles sagt:

Impulse für die frei zugängliche elektronische Verbreitung von „Open Commons“ – digital gespeicherten, immateriellen Gütern wie Daten, Software, Lehrmaterialien, Literatur-, Bild-, Ton- und Filmwerken – wird die Stadt Linz mit einer europaweit einzigartigen Initiative setzen.

Auf die Details kommt es jedoch an. Im Folgenden umreisse ich die Aktivitäten der Open Commons Region Linz und gehe abschließend auf mögliche Handlungsfelder einer noch zu gründenden Open Commons Region Dresden / Oberlausitz / Sachsen ein.

Read More

Görlitzer Kreistag mauert sich ein

Eine Mehrheit aus CDU, Freie Wähler und FDP entschied sich am 18. Juli im Görlitzer Kreistag gegen eine Videoübertragung der Sitzungen. Landrat Bernd Lange mauert sich mit seiner Fraktion vor den Bürgern ein und begründet dies lapidar mit hohen Kosten. Lange meinte sogar, die Tageszeitungen würden genügend Transparenz herstellen. Andere pflichteten bei, die in Teilen des Landkreises wäre die “Netzqualität” ohnehin zu schlecht, um Videoaufzeichnungen zu verfolgen. Solche Sachzwänge lassen so leicht widerlegen, wie die Informationsdefizite auf Kreisebene zu belegen sind. Doch noch einmal der Reihe nach.

Das vermeintliche Argument hoher Kosten

Aus Erfahrung weiß ich, dass sich die Anschaffungskosten für eine Videoaufzeichnung und Distribution auf unter 1000 Euro belaufen. Alles was man dafür benötigt ist einen schlanken Laptop (~ 300 €), eine HD-Web Cam (100 €) und eine Software für die Live- und Demand-Übertragung (z.B. Adobe Connect, “Shared Server” Lizenz mit “named Server” und SSL: 524 Euro).

Die Transparenz durch Tageszeitungen?

Es gibt im Kreisgebiet leider nur eine flächendeckende Tageszeitung, von der man leider nicht behaupten kann umfassend über das Geschehen im Kreistag informiert zu werden. Überdies haben die Lokalredaktionen ebendieser Zeitung ihre persönlichen, inhaltlichen und politischen Präferenzen und Ansichten. Das ist nicht weiter verwunderlich, doch angesichts mangelnder Vielfalt nicht das, was eine demokratische Gesellschaft zur Meinungsbildung benötigt. Die Frage nach Transparenz im Kreistag ist deshalb im Kreis Görlitz von besondere Bedeutung, um die schwach ausgeprägte Medienlandschaft zu kompensieren. Dabei geht es in erster Linie um die ausreichende Informationen zur politischen Meinungsbildung und noch nicht einmal um die Partizipation der Bürger an politischen und gesellschaftlichen Entscheidungen.

Mangelnde Netzqualität?

Angesichts einer desolaten Infrastruktur das Recht auf Meinungsbildung abzusprechen, ist undemokratisch. Außerdem verfügt doch zumindest ein Großteil der Bürger im Kreis Görlitz über einen ausreichend schnellen Internetzugang. An der Verbesserung der Situation arbeiten Kommunen, der Kreis und das Land. Aus technischer Perspektive könnten Downloads vergangener Sitzungen als Ergänzung zu den Live-Übertragungen angeboten werden. Selbst mit einem mageren ISDN-Anschluss könnte man sich innerhalb von wenigen Stunden eine mehrstündige Aufzeichnung herunterladen.

Fazit

Es genügt eigentlich schon ein Blick in den Nachbarkreis Bautzen, wo Bürger ein zumindest die Ergebnisprotokolle der Kreistagssitzungen online einsehen und durchsuchen können. Ergänzt durch eine Suchfunktion Das Kreis Görlitz begnügt sich mit einem Sitzungskalender, aus dem nicht einmal hervorgeht, über was an dem Termin verhandelt wird. Im Hinblick auf Transparenz und Ermöglichung politischer Teilhabe könnte Kreistag Görlitz kaum höher mauern als er es jetzt schon tut. Transparenz und Zugang zu Informationen sind die Voraussetzung für die Teilhabe am politischen Geschehen und Grundbestandteil einer Zivilgesellschaft. Die Politik auf Kreisebene ist für den ansässigen Bürger oftmals unmittelbar bedeutsamer als jene Entscheidungen des Landtags oder der Bundesregierung. Die Sächsische Zeitung allein als Sprachrohr des Kreistags vorzuschieben grenzt an Meinungszensur.

DataViz: Altersstruktur der auf dem Jüdischen Friedhof Görlitz beigesetzten KZ-Häftlinge

Eigentlich hatte ich mir vorgenommen mich weiter in R einzuarbeiten, doch so manches webbasiertes Visualisierungswerkzeug macht auf den ersten Klick mehr her. Ausgehend von einem Datensatz der Friedhofsverwaltung Görlitz über die 1944 und 1945 im dortigen Krematorium eingeäscherten Häftlinge der KZ-Außenlager Görlitz, Bautzen, Niesky und Hartmannsdorf habe ich die Lager mit dem erreichten Lebensalter als Parallel Set dargestellt.

Parallel Sets bieten sich insbesondere dann an, wenn mehrere Fraktionen von Mengen betrachtet werden sollen. Ergänze ließe sich das Bild beispielsweise um den Monat, in dem der Gefangene ums Leben kam:

Hieraus kann man gut erkennen, in welchen Monaten Gefangene aus welchen Lagern zu Tode kamen. Das Lebensalter der Nieskyer Hartmannsdorfer Häftlinge fast ausschließlich oberhalb von 36 Jahren. Im Januar 1945 starben im Görlitzer KZ-Lager also vermehrt Häftlinge jüngeren Alters. Aus dieser Darstellungsform ergeben sich also eine ganze Reihe von Ableitungen und Fragestellungen, die mir vorher anhand der Listen und simplen 2D-Graphen nicht bewusst geworden sind.

OpenData: Datenbefreien im Sächsichen Landtag

Das elektronische Datenarchiv des Sächsischen Landtags lässt viele Wünsche offen. Auf den ersten Blick wirkt die Webseite langsam und schwerfällig. Möchte man strukturierte Daten für weitere Auswertungen, sucht man vergebens. Versucht man den Inhalt des Archivs via Suchmaschinen zu finden, kommen keine Treffer. Möchte man per RSS Feed am Ball bleiben, so ist dort keine Möglichkeit. Die Krönung des ungenügenden Datenhändlings sind die dort zu findenden eingescannten WORD- oder PDF-Dokumente, maschinenunlesbar³ und papierzeitlich⁶.

Ein kleines und erstes Hintertürchen öffnete sich mir beim Stöbern mit dem Firebug. Möchte man die aktuellen “Kleinen Anfragen” der Landtagsabgeordneten schön sauber als XML beziehen, bietet sich folgende URL an:
edas.landtag.sachsen.de/parlamentsdokumentation/parlamentsarchiv/xmlexport.aspx?refferer=&VolltextSuche=ESF&von=1&bis=33&format=xml

Wichtig sind die Parameter:

  • &VolltextSuche=     … hier könnte ein Suchbegriff stehen
  • &von=1      ……. der erste Datensatz ist der aktuellste
  • &bis=33  …….. Anzahl der Treffer
  • &format=xml    ………… klar, das XML-Format als Ausgabe

Das Resultat sieht dann in etwa so aus:

Welche anderen Datensätze die Suchmaske noch ausgibt und wie man das Zeug dann sinnvoll verwertet, zeige ich beim nächsten mal.

Landtag
Auf den Seiten des Landtags finden sich mehrer RSS-Feeds.

Bilder aus der Deutschen Fotothek abfassen

Bild- und Kartenmaterialien sächsischer Archive sind in der Deutschen Fotothek der Sächsischen Landes- und Staatsbibliothek digitalisiert. Diese zentrale Zugriffsmöglichkeit ist ein entscheidender Schritt in Richtung offener Archive im Sinne der OpenData-Bewegung. Der Vorteil besteht vor allem in der Suche anhand von Metadaten.
Ärgerlich ist es nur dann, wenn man keinen uneingeschränkten Zugriff auf die Materialien erhält. Im Falle einiger historischer Karten ist dies der Fall. Man kann sie auf der Seite der SLUB nur durch ein kleines Fenster einer Flash-Applikation betrachten und nicht download.
Im folgenden Tutorial zeige ich, wie man an die Rohdaten gelangt und sie zu einem Gesamtbild zusammen fügt.

Für den folgenden Dreischritt benötigt man folgende Tools:

  • Firefox und das AddOn FireBug
  • wget als Kommandozeilen-Graber für diverse Webseiten und Daten im Netz
  • montage als Bestandteil der ImageMagick-Bibliothek

Wählen wir diese Flurkarte von Schlauroth als Beispiel.

1. URL der Rohdaten identifizieren
Dazu startet man FireBug (Rechtsklick >> Element mit Firebug untersuchen). Im Quelltext (oder via select) sucht man das Element  ‘<object id=”theMovie” …’. Darin enthalten ist ein <embed>, welches widerum mehre <parameter> beinhaltet. Gesucht ist der Parameter:
<param name="FlashVars" value="zoomifyImagePath=http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/" />
Daraus entnehmen wir uns die URL.

2. Rohdaten downloaden
Beim Öffnen der URL erwarten einen in dem Fall zwei Ordner mit 500 Bildausschnitten, die zusammen die gesuchte Flurkarten in fünf verschiedenen Vergrößerungsstufen ergeben. Uns interessieren die Ausschnitte mit dem größten Detailgrad “5-0-1.jpg” bis “5-20-16.jpg”. Per Copy Paste der beiden Ordnerseiten sowie einigen Ersetzungsoperationen entsteht eine Textdatei, in der zeilenweise alle Bild-URLs stehen:
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-0.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-1.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-2.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-3.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-4.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-0-5.jpg
http://fotothek.slub-dresden.de/zooms/gr/olb/0000000/gr_olb_0000040/TileGroup0/5-1-0.jpg
...

Mit dieser Textdatei kann man wget füttern und alle 500 Bilder lokal verzeichnen.
wget -i bildliste.txt

3. Rohadten zum Bild zusammenfügen
Dazu gilt es die Bilder zunächst zu betarchten und heraus zufinden, aus wievielen Zeile und Spalten sie bestehen. In dem Falls sind es 20 Zeilen und 16 Spalten.

Spalten bilden:
for (i=0, i < 20, i++){
montage -geometry +0+0 -tile 1x20 5-$i-*.jpg 00_fin_$i.jpg
}

Spalten zusammenfügen:
montage -geometry +0+0 -tile 21x1 00_fin_*.jpg 00_final.jpg

Am Ende bekommt man ein 5234 x 4183 Pixel großes Bild.