Post on 06-Apr-2015
transcript
WebML for Semantic WebMichael Hertel
Gliederung
1. WebML1. Datenmodell2. Hypertextmodell3. Präsentationsmodell4. Entwicklungsphasen
2. WebML für das semantische Web1. Anforderungen für das semantische
Web2. 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"> </Page> </Alternative></Page>
Content Units
Informationen eines einzelnen Objektes einer
Entität
Informationeneiner ganzen
Objektmenge (mehrere Objekte aus einer Entität)
Indexierungaller Objekte einer Entität
Navigationdurch 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> </tr> <c:forEach var="current" varStatus="status" items="${[%= indexUnit["id"]%].data}"> <c:set var="index" value="${status.index}"/> <c:if test="${(index%2) eq 1}"> <tr class="row"> <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> </tr> </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> </tr> </c:if> </c:forEach> </table>
</td> </tr> </table></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
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.
Mengen-operationen auf zwei übergebene
Mengen
Import ontologischer Datenquellen
Export alsRDF-Beschreibung
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.