WebML for Semantic Web Michael Hertel
Gliederung WebML WebML für das semantische Web Datenmodell Hypertextmodell Präsentationsmodell Entwicklungsphasen WebML für das semantische Web Anforderungen für das semantische Web Erweiterung von WebML für das semantische Web
1. WebML http://webml.org http://www.webratio.com
1.1 Datenmodell Modellierung durch ein Entity-Relationship-Diagramm
1.2 Hypertextmodell <Page id= "outermost" name="Studenten in LV"> <Alternative id="alt" name="Alternative" defaultPage= "alt1"> <Page id= "alt1" name="Kurzansicht"> </Page> <Page id= "alt2" name="Detailansicht"> </Alternative>
Content Units Informationen eines einzelnen Objektes einer Entität einer ganzen Objektmenge (mehrere Objekte aus einer Entität) Indexierung aller Objekte einer Entität Navigation durch eine Objektmenge Annahme von Benutzer-eingaben
Operation Units Erstellen eines Objektes einer Entität Löschen eines Objektes einer Entität Verändern der Eigenschaften eines Objektes einer Entität Hinzufügen einer Beziehung zwischen zwei Objekten unterschiedlicher Entitäten Entfernen einer Beziehung zwischen zwei Objekten unterschiedlicher Entitäten Spezifikation einer Auswahllogik auf eine Entität
Session Units Setzen eines globalen Parameters zu einem bestimmten Kontext Laden eines globalen Parameters zu einem bestimmten Kontext Verifizierung der Benutzerdaten und Zugriffskontrolle für geschützte Seiten Beenden der Benutzer-sitzung
1.3 Präsentationsmodell #?delimiters [%, %], [%=, %] [% def indexUnit = getLayoutUnitsByType(cell, "IndexUnit")[0] %] <p> [% def inuLink = indexUnit.selectSingleNode("layout:Link") %] [% def inuAttr1 = indexUnit.selectSingleNode("layout:Attribute[1]") %] [% def inuAttr2 = indexUnit.selectSingleNode("layout:Attribute[2]") %] [% def inuAttr3 = indexUnit.selectSingleNode("layout:Attribute[3]") %] [% def inuAttr4 = indexUnit.selectSingleNode("layout:Attribute[4]") %] <table style="border:1px solid #cccccc"> <tr title="IndexUnitLV"> <td class="headerOpened">Lehrveranstaltungen</td> </tr> <tr> <td> <table> <tr class="row"> <th class="header"><wr:Label context="inuAttr1"/></th> <th class="header"><wr:Label context="inuAttr2"/></th> <th class="header"><wr:Label context="inuAttr3"/></th> <th class="header">professor</th> <c:forEach var="current" varStatus="status" items="${[%= indexUnit["id"]%].data}"> <c:set var="index" value="${status.index}"/> <c:if test="${(index%2) eq 1}"> <td class="value string"><wr:Value context="inuAttr1"/></td> <td class="value integer"><wr:Value context="inuAttr2"/></td> <td class="value integer"><wr:Value context="inuAttr3"/></td> <td class="value string"><a href="<wr:URL context="inuLink"/>" title="<wr:Value context="inuAttr4"/>"><wr:Value context="inuAttr4"/></a></td> </c:if> <c:if test="${(index%2) eq 0}"> <tr class="rowAlternate"> <td class="valueAlternate string"><wr:Value context="inuAttr1"/></td> <td class="valueAlternate integer"><wr:Value context="inuAttr2"/></td> <td class="valueAlternate integer"><wr:Value context="inuAttr3"/></td> <td class="valueAlternate string"><a href="<wr:URL context="inuLink"/>" title="<wr:Value context="inuAttr4"/>"><wr:Value context="inuAttr4"/></a></td> </c:forEach> </table> </td> </p>
1.4 Entwicklungsphasen S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, and M. Matera, Designing Data-Intensive Web Applications, Morgan Kaufmann Publishers Inc., 2002, pp. 197.
2. WebML für das semantische Web
2.1 Anforderungen für das semantische Web Unterstützung semantischer Sprachen Einfache Spezifikation semantischer Inhalte Flexible Integration Semantische Datenquellen Zugriff und Anfragen auf ontologische Klassen und Instanzen Inferenz und Integrität Import und Wiederverwendung von Ontologien
2.2 Erweiterung von WebML für das semantische Web Entwicklungsprozess: Erweiterung zur Erfüllung semantischer Anforderungen Datenmodell: Erweiterung zur Nutzung semantischer Datenquellen Hypertextmodell: Erweiterung für Anfragen auf Ontologien Präsentationsmodell: Erweiterung zur Unterstützung für semantische Annotationen
Erweiterung des Entwicklungsprozesses M. Brambilla and F.M. Facca, “Building Semantic Web Portals with WebML,” ICWE’07 Proceedings of the 7th international conference on Web engineering, 2007, pp. 329.
Neue WebML Units für das semantische Web 1 M. Brambilla and F.M. Facca, “Building Semantic Web Portals with WebML,” ICWE’07 Proceedings of the 7th international conference on Web engineering, 2007, pp. 320.
Neue WebML Units für das semantische Web 2 Mengen-operationen auf zwei übergebene Mengen Import ontologischer Datenquellen Export als RDF-Beschreibung M. Brambilla and F.M. Facca, “Building Semantic Web Portals with WebML,” ICWE’07 Proceedings of the 7th international conference on Web engineering, 2007, pp. 320.
Quellen S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, and M. Matera, Designing Data-Intensive Web Applications, Morgan Kaufmann Publishers Inc., 2002. M. Brambilla, S. Comai, P. Fraternali, and M. Matera, “Chapter 9 DESIGNING WEB APPLICATIONS WITH WEBML AND WEBRATIO,” Methodology, 2002, pp. 221-261. P.F., Aldo Bongio Stefano Ceri. Web Modeling Language (WebML): a modeling language for designing Web sites [Online]. Available: http://www9.org/w9cdrom/177/177.html (Last Access: 05-Nov.-2011). Presentation Model [Online]. Available: http://webml.org/webml/page6.do?dau4.oid=5&UserCtxParam=0&GroupCtxParam=0&ctx1=EN (Last Access: 28-Nov.-2011). “WebRatio Web Modeling User Guide.” F.M. Facca and M. Brambilla, “Extending WebML towards semantic web,” Proceedings of the 16th international conference on World Wide Web WWW 07, 2007, p. 1235. M. Brambilla and F.M. Facca, “Building Semantic Web Portals with WebML,” ICWE’07 Proceedings of the 7th international conference on Web engineering, 2007, pp. 312-327.