11.07.2015 Aufrufe

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

ODL-Sprachkonstrukte und interaktive Benutzerschnittstelle - TUM

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.

Kapitel 4Erweiterung von <strong>ODL</strong>Zur Aufgabe der Diplomarbeit gehörte die Erweiterung des Sprachumfangs von <strong>ODL</strong> sowie die Konzeption<strong>und</strong> Implementierung einer <strong>interaktive</strong>n <strong>Benutzerschnittstelle</strong> für die Auswertung von <strong>ODL</strong>-Abfragen.In den folgenden Abschnitten erläutern wir im Einzelnen, welche Erweiterungen am Sprachumfangvon <strong>ODL</strong> vorgenommen werden sollten <strong>und</strong> wie die <strong>Benutzerschnittstelle</strong> konzipiert wurde.4.1 Erweiterung des SprachumfangsWie im Abschnitt 3.2 erwähnt, waren einige wichtige <strong>Sprachkonstrukte</strong> von <strong>ODL</strong> im implementiertenSprachumfang noch nicht enthalten. In [Sch01] (S. 5, S. 16-19) wurden mehrere Erweiterungen des<strong>ODL</strong>-Sprachumfangs vorgestellt, von denen die folgenden im Rahmen der vorliegenden Diplomarbeitzu realisieren waren:• ProdukttypenBislang konnten nur Variablen unärer Typen deklariert werden, z.B. var:Boolean odervar:Component. Jetzt sollte die Deklaration von Variablen ermöglicht werden, deren Typein Tupel aus mehreren Typen ist:var:(ident1:type1,ident2:type2,...,ident_n:type_n) (4.1)Damit wären beispielsweise folgende Typdeklarationen möglich:- var:(comp:Component, port:Port)- var:(comp:Component, name:String, ports:(p1:Port,p2:Port))Hierbei darf jeder gültige <strong>ODL</strong>-Typ als Elementtyp eines Produkttyps verwendet werden.• SelektorenFür den Zugriff auf Elemente eines Produkttyps <strong>und</strong> auf Attribute bzw. Assoziationenvon Modellelementen werden Selektoren verwendet. Der Zugriff auf ein Element bzw. Attributeiner Variablen erfolgt über das Anhängen eines Punkts <strong>und</strong> des Selektors an die Variable:var.selector (4.2)Betrachten wir Beispiele für den Zugriff auf Elemente eines Produkttyps:- exists ports:( p1:Port, p2:Port ). ports.p1 = ports.p2liefert alle Paare gleicher Ports

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!