Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Energy to Live

Energy to Live

The Energy to Live project was created during the course "Semantic Technologies" at Graz University of Technology.

Maximilian Fellner

January 18, 2012
Tweet

More Decks by Maximilian Fellner

Other Decks in Technology

Transcript

  1. Energy to Live ›  Aufzeichnen vom Energieverbrauch ›  Fahrzeugrouten › 

    Routendaten sammeln ›  GPS Daten ›  Routendaten speichern ›  RDF Triple – Store (Sesame) ›  Routendaten anzeigen ›  SPARQL Abfragen
  2. Client – Server Architektur ›  Client - Android + GPS

    ›  Server - Tomcat (Java) ›  Sesame Triple-Store ›  Spring Framework ›  REST-API (Client-Server Kommunikation) ›  Workbench (Browser + SPARQL)
  3. “Energy2Live” ›  Lokaler SQLite Speicher ›  OrmLite ›  Annotierte Model-Klassen

    ›  Adapter-Pattern ›  Vorteile ›  Lokale Persistenz ›  Interkompatibilität
  4. “Energy2Live” ›  Upload zum server (XStream) <st.energy2live.data.track.TrackLog>! <vehicle class="st.energy2live.data.vehicle.VehicleA">! <name>Golf</name>!

    <manuFacturer>VW</manuFacturer>! <fuelConsumtion>7.5</fuelConsumtion>! <id>1</id>! </vehicle>! <trackPoints>! <st.energy2live.data.track.TrackPoint>! <dateTime>2012-01-18 08:59:21.496 UTC</dateTime>! <point>! <latitude>47.0574579</latitude>! <longitude>15.4731218</longitude>! </point>! </st.energy2live.data.track.TrackPoint>! </trackPoints>! <trackDistance>122.0</trackDistance>! </st.energy2live.data.track.TrackLog>!
  5. Client-Server Kommunikation ›  REST - HTTP ›  Tomcat + Spring

    ›  Request - Response ›  Aktionen ›  Benutzer erstellen ›  Anmelden ›  Routen erstellen
  6. Client-Server Kommunikation ›  Neuen Benutzer anlegen ›  Überprüfen ›  Anlegen

    ›  Neue Routen anlegen ›  Login (Session) ›  HTTP - POST ›  Java Objekt Serialisierung ›  Sesame Verbindung ›  RDF-XML Triple
  7. Webclient Darstellung der gesammelten Daten ›  Benutzer ›  Benutzerinformationen › 

    Route ›  Detailansicht ›  Distanz ›  Verbrauch ›  Karte (Google Maps) ›  Benutzerdefinierte Darstellung ›  Manuelle Eingabe (SPARQL Queries)
  8. Webclient ›  Benutzer ›  Benutzerinformationen SELECT ?id ?name ?mbox ?homepage

    ?user WHERE { ?user rdf:type foaf:Person . ?user foaf:name ?name . ?user foaf:mbox ?mbox . ?user foaf:homepage ?homepage . ?user user:privacy "0" . ?user user:id ?id }
  9. Webclient ›  Route ›  Fahrzeug ›  GEO Punkte ›  Datum

    + Zeit SELECT ?geolat ?geolong ?trackdate WHERE { <http://tracker.com/track/3> track:Trackpoints ?trackpoints . <http://tracker.com/user/thomasmuster> user:privacy "0" . ?trackpoints ?type ?trackpointsobject . ?trackpointsobject rdf:type geo:Point . ?trackpointsobject geo:lat ?geolat . ?trackpointsobject geo:long ?geolong . ?trackpointsobject dc:date ?trackdate }