22.01.2014 Aufrufe

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

100 Umsetzung des Prototyps<br />

7.3.2 Statische, vordefinierte Elemente des Datenmodells<br />

In diesem Abschnitt wird kurz die Prozedur zur ursprünglichen Befüllung des Datenbestandes erläutert.<br />

Für diesen Vorgang wurden Ruby-Programme entwickelt, die die Daten auslesen, interpretieren,<br />

in einem Datenbank- bzw. ORM-geeigneten Format umwandeln und letztendlich die interpretierten<br />

Daten als feste Instanzen des Datenmodells in der relationalen Datenbank speichern.<br />

AssetCategory<br />

Die erste Kategorie von statischen, vordefinierten Elementen des Datenmodells ist von der Klasse<br />

AssetCategory (siehe auch 7.2) repräsentiert. Diese Datensammlung wurde händisch von dedizierten<br />

Quellen wie ein <strong>Online</strong>-Werkzeug für die Erstellung von Grundrissen 8 oder ein <strong>Online</strong>-<br />

Werkzeug für die Erstellung von verschiedenen Diagrammen-Typen , welche auch die Erstellung von<br />

Grundrissen ermöglicht 9 zusammengefasst.<br />

Die Darstellung der gesammelten Daten wurde in einer formatierten Text-Datei realisiert, zur Erleichterung<br />

der Bearbeitung. Die Vater-Kind Beziehungen zwischen den einzelnen Kategorien bzw.<br />

“Knoten” wird durch die Einrückung bestimmt. Trennzeichen unterscheiden die verfügbaren Attribute<br />

wie Name, Beschreibung oder für die Darstellung benutztes Symbol. Ein Parser wurde für diese<br />

vereinfachte Datei-Struktur geschrieben. Nachdem die Daten ausgelesen sind und damit die Struktur<br />

bzw. die Vater-Kind Beziehungen festgestellt sind, werden die Daten zu DataMapper-entsprechenden<br />

Instanzen der Klasse AssetCategory umgewandelt und in der Datenbank gespeichert.<br />

Derselbe Vorgang wird im Fall der “externen” Kategorien (d.h. die Örtlichkeiten außerhalb der<br />

Wohnung, ExternalVenue) eingesetzt, mit dem Unterschied dass kein Parser erforderlich ist, es<br />

wurde ein JSON-Parser für Ruby verwendet. Die Quelle der Örtlichkeiten ist die API der populäre<br />

Dienst für Check-Ins und lokale Vorschläge namens Foursquare 10 , welche die Taxonomie der<br />

erfassbaren Örtlichkeiten veröffentlicht. Eine Application Programming Interface (API) ist eine Spezifikation<br />

der Schnittstellen, die für die Kommunikation zwischen Software-Komponenten verwendet<br />

werden können.<br />

Um eine transparente Darstellung der auswählbaren Kategorien im Frontend zu ermöglichen, wird<br />

bei der Umwandlung der ausgelesenen Daten zu DataMapper-Ressourcen eine Vereinbarung gemacht.<br />

Zwar wird als Vater-Knoten für die hiermit entstehende Baum-Struktur die vorher erfassten<br />

Kategorie, die “Gegenstände” außerhalb der Wohnung beschreibt, benutzt. Weitere Informationen<br />

sind im Abschnitt 7.4.1 beschrieben.<br />

CentralElement<br />

Der zentrale “Gegenstand” wird durch eine Wohnung ausgeprägt und lässt sich durch ein Kommandozeile-gesteuertes<br />

Programm automatisch erstellen. Hierfür sind Parameter der UserProfile<br />

erforderlich (siehe auch 7.2.3), wie z.B. einen Benutzername oder einen kurzen Profil-Satz.<br />

Die damit entstehende Instanz der CentralElement Klasse wird in der Datenbank gespeichert<br />

und kann danach benutzt werden. An dieser Stelle findet eine “Anpassung” des vorher befüllten Datenbestandes:<br />

die generisch benannten Elementen wie z.B. Apartment/House oder Building werden<br />

8<br />

http://www.floorplanner.com<br />

9<br />

http://www.gliffy.com<br />

10<br />

http://www.foursquare.com

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!