Management von standortbezogenen Daten mit APEX am Beispiel eines Baumkatalogs einer Freizeitanlage Prof. Dr. Petra Sauer
DOAG-Konferenz Nürnberg, 15. - 17. November 2011
Gliederung
Einführung Anwendungsbereich: Baumkatalog für eine Freizeitanlage Projektrealisierung Baum(Standort)daten – Erfassung und Verwaltung Datenerfassung und Objektidentifizierung Datenbankentwurf APEX4.0-Applikation mit Baum(Standort)daten Formulare Berichte, Diagramme, Kartendarstellung Erfahrungen und Ausblick DOAG-Konferenz • Nürnberg • 2011 • Sauer
2
Einführung - Anwendungsbereich
Baumkatalogisierung für eine Freizeitanlagen Anwendungspartner: FEZ Berlin 100 ha Gesamtfläche Verein FEZ – Hauptgebäude + umliegende Flächen Ca. 1500 Bäume Verkehrssicherungspflicht – halbjährliche Kontrollen Ist: handschriftliche Dokumentation Ziel: digitaler, kostengünstiger Baumkatalog Keine „Standard“-Baumkatasteranwendung Kosten, Umfang, Funktionalität Standortdaten auf Karten DOAG-Konferenz • Nürnberg • 2011 • Sauer
3
Einführung - Projektrealisierung
Projektmanagement und - umsetzung Studentisches Semesterprojekt Anforderungsanalyse Datenerfassung Datenbank- und Systementwurf Anwendungsprototypen Prototypenbewertung und -auswahl Projektfortführung und –fertigstellung über Mittel aus F+EProjekt Übergabe an Projektpartner Projektfortführung über Drittmittel DOAG-Konferenz • Nürnberg • 2011 • Sauer
4
Einführung - Projektrealisierung
DOAG-Konferenz • Nürnberg • 2011 • Sauer
5
Einführung - Projektrealisierung
DOAG-Konferenz • Nürnberg • 2011 • Sauer
6
Übersicht der Katalogisierung im FEZ
DOAG-Konferenz • Nürnberg • 2011 • Sauer
7
Baum(Standort)Datenverwaltung Objektidentifizierung – Betrachtete Varianten RFID (Radio-Frequency Identification), Barcodes (z.B. QR-Codes (quick-response – Codes)), Klassische Nummerierungs- und Kennzeichnungssystemen für Bäume mit numerischen oder alphanumerischen Schlüsseln, ergänzt um die positionsgenauen Standortdaten auf Basis der GPSKoordinaten
Objektidentifizierung – Gewählte Variante: Alphanumerischer Schlüssel – klassifizierend und identifizierend
A xxx Standortkennzeichen B – Bungalowdorf P - Parkplatz DOAG-Konferenz • Nürnberg • 2011 • Sauer
Idenfizierender Bereich
8
Baum(Standort)Datenverwaltung Identifizierte Datencluster Klassifikationsdaten Zuordnung des Baumes innerhalb der Pflanzenreichsystematik Gehölzdaten individuelle Daten des Baumes wie Pflanzdatum, Wachstumsdaten wie Kronendurchmesser und Stammumfang (zeitlicher Verlauf) Standortdaten geografischen Lage anhand der GPS-Koordinate, Daten zu Eigentümern und Verantwortlichkeiten Vitalitätsdaten Daten zu Schädlingen, Schädigungen und Vitalitätseinschätzungen (zeitlicher Verlauf) Kontrolldaten Daten von Kontrollgängen, Pflegemaßnahme Bilddokumente DOAG-Konferenz • Nürnberg • 2011 • Sauer
9
Baum(Standort)Datenverwaltung Betrachtungsaspekt Typ- vs. Individuum Klassifikationsdaten Typisches Habitat / Verbreitungsgebiet Individuelles Habitat / Verbreitungsgebiet Vitalitätsdaten Typische Schädlinge der Baumart Individuelle Schädlinge des Baumes Typische Behandlungsmaßnahmen Individuelle Behandlungsmaßnahmen
Integritätsbedingungen Wertelisten
DOAG-Konferenz • Nürnberg • 2011 • Sauer
10
Baum(Standort)Datenverwaltung
DOAG-Konferenz • Nürnberg • 2011 • Sauer
11
Baum(Standort)Datenverwaltung
Spezielle Datentypen zur Umsetzung des Entwurfs Standortdaten Objekttyp SDO_GEOMETRY Funktionen auf Geodaten
Quelle: Oracle SQL Reference 11g
DOAG-Konferenz • Nürnberg • 2011 • Sauer
12
Baum(Standort)Datenverwaltung
Spezielle Datentypen zur Umsetzung des Entwurfs Standortdaten Objekttyp XMLType (GPX-Daten) Abstrakter Datentyp mit verschiedenen Speichermodellen Methoden des Objekttyps SQL/XML-(Publikations-)Funktionen des SQL:2003-Standards
create table xml_tab (doc xmltype) xmltype column doc store as [clob | object relational | binary xml]
DOAG-Konferenz • Nürnberg • 2011 • Sauer
13
Baum(Standort)Datenverwaltung
Spezielle Datentypen zur Umsetzung des Entwurfs Bilddaten Objekttyp ORD_IMAGE Georeferenzierte Bilder
Quelle: Oracle Multimedia Reference 11g
14 DOAG-Konferenz • Nürnberg • 2011 • Sauer
Baum(Standort)Datenverwaltung Standortdatenerhebung GPX-Format (Garmin-Handhelds) XML-Sprache XML-Schema
Standortdatenübernahme in Oracle-DB
Garmin International 2010-11-12T13:07:02Z 20.553711 001 Waypoint …
Temporäre Speicherung als XMLType Datei im XMLDB-Repository XMLType-Spalte in temporärer Tabelle Typisierte XMLType-Tabelle Abbildung auf SDO_GEOMETRY über SQL/XML-Funktionen
DOAG-Konferenz • Nürnberg • 2011 • Sauer
15
Baum(Standort)Datenverwaltung Abbildung der GPX-Daten auf SDO_GEOMETRY-Daten Auslesen der XML-Daten select xtab.punkt,xtab.breitengrad,xtab.längengrad from temporär, XMLTABLE( 'for $i in //wpt return $i' PASSING gpx_daten COLUMNS punkt varchar2(30) PATH 'name', breitengrad varchar2(30) PATH '@lat', längengrad varchar2(10) PATH '@lon' ) xtab;
create view gpx_daten as select xtab.punkt,xtab.breitengrad,xtab.längengrad from …; select * from gpx_daten;
DOAG-Konferenz • Nürnberg • 2011 • Sauer
16
Baum(Standort)Datenverwaltung Abbildung der GPX-Daten auf SDO_GEOMETRY-Daten Einfügen in SDO_GEOMETRY create view gpx_daten as select xtab.punkt,xtab.breitengrad,xtab.längengrad from …; select * from gpx_daten;
insert into baumindividuum (id,koordinate) select punkt,fn_coordinatetogeometry(breitengrad,längengrad) from GPX_DATEN;
DOAG-Konferenz • Nürnberg • 2011 • Sauer
create or replace function fn_coordinateToGeometry (latitude IN number, longitude IN number) return sdo_geometry as begin return sdo_geometry( 2001, 8307, null, sdo_elem_info_array(1,1,1), sdo_ordinate_array(longitude,latitude) ) ; end fn_coordinateToGeometry;
17
Baum(Standort)Datenverwaltung Abbildung der GPX-Daten auf SDO_GEOMETRY-Daten Anfragen auf SDO_GEOMETRY-Daten Spektrum an Get-Methoden Funktionen auf Geodaten select b.id as punktnr, b.koordinate.get_gtype() Geometrietyp, b.koordinate.get_dims() anzahlDimensionen, b.koordinate.get_wkt() WKT_Format from baumindividuum b;
DOAG-Konferenz • Nürnberg • 2011 • Sauer
18
APEX – Applikation Baumkatalog
Systematisierung des Vorgehens Schreibende Zugriffe Formulare Lesende Zugriffe Berichte ausgewählte Diagramme Visualisierung auf einer Karte unter Nutzung von Daten des OpenStreetMap-Projektes
DOAG-Konferenz • Nürnberg • 2011 • Sauer
19
APEX – Applikation Baumkatalog
Schreibende Zugriffe Stammdaten Systematische Entwicklung von Formularen zu nicht disjunkten Teile aus dem ER-Diagramm
DOAG-Konferenz • Nürnberg • 2011 • Sauer
20
APEX – Applikation Baumkatalog
Schreibende Zugriffe Bewegungsdaten Detaillierte Erfassung über Formular mit verlinkten Unterformularen und Breadcrumb-Navigation Schnellerfassung – ausgewählte Teile des Datenbestands zu Baumindividuen über ein Formular
DOAG-Konferenz • Nürnberg • 2011 • Sauer
21
APEX – Applikation Baumkatalog
Schreibende Zugriffe Bewegungsdaten Schnellerfassung – ausgewählte Teile des Datenbestands zu Baumindividuen über ein Formular
DOAG-Konferenz • Nürnberg • 2011 • Sauer
22
APEX – Applikation Baumkatalog
Lesende Zugriffe - Auswertungen Berichte ausgewählte Diagramme Visualisierung auf einer Karte unter Nutzung von Daten des OpenStreetMap-Projektes
DOAG-Konferenz • Nürnberg • 2011 • Sauer
23
APEX – Applikation Baumkatalog
Lesende Zugriffe - Berichte Interaktive Berichte Umfangreicher Ausgangsbericht
DOAG-Konferenz • Nürnberg • 2011 • Sauer
24
APEX – Applikation Baumkatalog
Lesende Zugriffe - Berichte Interaktive Berichte Personalisierung und Anpassung benutzerspezifisch Filter, Sortierung, Gruppierung, Hervorhebungen, FlashbackQuery
DOAG-Konferenz • Nürnberg • 2011 • Sauer
25
APEX – Applikation Baumkatalog
Lesende Zugriffe - Diagramme Ausgewählte Bereiche Baumarten Schädlinge Vitalität Verschiedene Diagrammarten
DOAG-Konferenz • Nürnberg • 2011 • Sauer
26
APEX – Applikation Baumkatalog
Lesende Zugriffe – Kartendarstellung standortbezogener Daten Ausgewählte Bereiche – Sach– und Metadatenbasierte Auswahl Nutzung freies Kartenmaterial OpenStreetMap Gemeinsame Verarbeitung von Geodaten verschiedener Quellen (Schichtung) über JS-Bibliothek OpenLayers Positionierbare Marker, eigene Grafik
DOAG-Konferenz • Nürnberg • 2011 • Sauer
27
Erfahrungen und Ausblick Lessons learned Unvorhersehbare Probleme APEX kann nicht mit Umlauten in Tabellen- und Spaltennamen umgehen. APEX beschränkt sich auf eine Maximalnamenslänge von 30 Zeichen. APEX 4.0 verlangt Primärschlüssel, die auf einer Spalte basieren. Tolle Effekte Excel- und PDF-Export GUI-Elemente und deren Funktionalität Layoutoptionen Effektivität der Applikationsentwicklung Supereinfaches quasi-Deployment
DOAG-Konferenz • Nürnberg • 2011 • Sauer
28
Erfahrungen und Ausblick
Entwicklung von mobilen und standortbezogenen Diensten Erweiterung standortbezogene Auswertung Zeitbezug Auswahl weiterer relevanter Anwendungen Schädlingsmonitoring Dynamische Berechnung CO2-Fußabdruck Heatmaps (z.B. Schädlingsmonitoring) Mobile Datenerfassung mit Tablets / Smartphones Mobile Navigationskomponenten
DOAG-Konferenz • Nürnberg • 2011 • Sauer
29
Dokumentationen
Oracle Datenbank http://www.oracle.com/database/ http://www.oracle.com/database/spatial.html
Geodaten
http://www.openstreetmap.org/ http://www.geofabrik.de/ http://www.oracle.com/technetwork/database/options/spatial (OTN) http://oracle-spatial.blogspot.com (Spatial Blog deutsch) http://forums.oracle.com/forums/forum.jspa?forumID=76 (Forum)
APEX http://apex.oracle.com http://www.oracle.com/technetwork/developer-tools/apex/overview/index.html (OTN) http://www.oracle.com/webfolder/technetwork/de/community/apex/index.html (APEX-Community deutsch)
DOAG-Konferenz • Nürnberg • 2011 • Sauer
30
Vielen Dank für Ihre Aufmerksamkeit! BAER2FIT – Projekt der Beuth-Hochschule für Technik Berlin Luxemburger Str. 10 13353 Berlin Web:
http://www.baerprojekt.de/
Mail:
[email protected]
DOAG-Konferenz • Nürnberg • 2011 • Sauer
31