+ All Categories
Home > Technology > Building Semantic Web Portals with WebML

Building Semantic Web Portals with WebML

Date post: 01-Nov-2014
Category:
Upload: marco-brambilla
View: 2,323 times
Download: 3 times
Share this document with a friend
Description:
Current conceptual models and methodologies for Web applications concentrate on content, navigation, and service modeling. Although some of them are meant to address semantic web applications too, they do not fully exploit the whole potential deriving from interaction with ontological data sources and and from Semantic annotations. This paper proposes an extension to Web application conceptual models toward Semantic Web. We devise an extension of the WebML modeling framework that fulfills most of the design requirements emerging for the new area of Semantic Web. We generalize the development process to cover Semantic Web and we devise a set of new primitives for ontology importing and querying. Finally, an implementation prototype of the proposed concepts is proposed within the commercial tool WebRatio.
Popular Tags:
17
Politecnico di Milano Dipartimento di Elettronica e Informazione Building Semantic Web Portals with WebML Marco Brambilla and Federico M. Facca ICWE 2007 Como, 20th July 2007 http://home.dei.polimi.it/mbrambil http://twitter.com/MarcoBrambi http://www.slideshare.net/mbramb il
Transcript
Page 1: Building Semantic Web Portals with WebML

Politecnico di MilanoDipartimento di Elettronica e Informazione

Building Semantic Web Portals with

WebMLMarco Brambilla and Federico M. Facca

ICWE 2007Como, 20th July 2007

http://home.dei.polimi.it/mbrambil http://twitter.com/MarcoBrambi

http://www.slideshare.net/mbrambil

Page 2: Building Semantic Web Portals with WebML

2

Agenda

Introduction– Requirements for metamodels of Semantic Web

applications Extending WebML towards Semantic Web

– Evolving existing primitives– New Advanced units for ontology querying– Primitives for Ontology management– Example of Usage of Advanced Units

Case Study Example Implementation expirience Conclusions & Future Works

Page 3: Building Semantic Web Portals with WebML

3

Introduction

Model-driven techniques aims to reduce the cost of design and implementation of software

The Semantic Web can benefit from Web Engineering field and viceversa– there’s a lack of well engineered solution in SW– SW technologies provide more “flexibility” and allow complex

reasoning task– Some effort have been already done: HERA, SHDM, …

A Web Portal is a Web site providing personalization to to its visitors and designed to use distributed data sources– One of the assumptions of Semantic Web is the use of

distributed data sources and reuse of existing ones

Page 4: Building Semantic Web Portals with WebML

4

IntroductionRequirements for metamodels of Semantic Web applications

Support of semantic languages (OWL, RDF, WSML, …) Models should be “semantic”

– i.e., grant self-annotation and explicit semantic annotation extraction

Allow for flexible integration of heterogeneous sources and applications

Transformations towards a semantic query language– allowing for inference, verification, query on schema and

instances

Allow for (semi-)automatic annotation of generated Web pages

Support the import and reference of remote ontologies– reuse and sharing of the knowledge

Page 5: Building Semantic Web Portals with WebML

5

Extending WebML towards Semantic Web

WebML methodology extended to support the new requirements

+ Reuse of existingontological data source

+ Specialized units foradvanced queries over

semantic data and annotation extraction

Page 6: Building Semantic Web Portals with WebML

6

Extending WebML towards Semantic Web

WebML methodology extended to support the new requirements

Data Design

Presentation Design

Hypertext / Service Design

Business Requirements

Requirements Specification

Architecture Design

ImplementationTesting and Evaluation

Maintenance and Evolution

Page 7: Building Semantic Web Portals with WebML

7

Extending WebML towards Semantic WebEvolving existing primitives

Existing units can be adapted for direct access to ontology– Changes in their “semantic” (query both on schemas and instances)

Ontology:MusicBrainzClass:Artist

Artist

instance uriclass uri

e.g. mf:Artist

Wines

Ontology:OwlWineClass:Wine […]

[…][…]

[…]

no inputclass uri

e.g. vin:RedWine

Page 8: Building Semantic Web Portals with WebML

8

Extending WebML towards Semantic WebNew Advanced units for ontology querying

[ClassName1=?][ClassName2=?]

SubclassOf

[ClassName=?][Instance=?]

InstanceOf

[ClassName=?][Property=?]

HasProperty

[Property=?][Value=?]

Has PropertyValue

[Property1=?][Property2=?]

Subproperty Is x subproperty of y?Or: find subproperties/find superproperties

The list of URIs whereproperty p has value vOr: find values/find properties

Is x property of y?Or: find the properties/find the class

Is x an instance of y?Or: find instances/find classes

Is x subclass of y?Or: find subclasses/find superclasses

Page 9: Building Semantic Web Portals with WebML

9

Extending WebML towards Semantic WebNew Advanced units for ontology querying

[ClassName=?][Instance=?]

InstanceOf

class uri instance uris

instace uri classes uris

instace & class uri boolean

[ClassName=?][Instance=?]

InstanceOf

[ClassName=?][Instance=?]

InstanceOf

Page 10: Building Semantic Web Portals with WebML

10

Extending WebML towards Semantic WebPrimitives for Ontology management

[Set1] [Ç|È|- ] [Set2]

Set Composition

[OntologyURI]

ImportOntol.

[Ontological Query]

Describe

RDF

Ontology composition: union, intersection, difference Ontology importing: for direct query of existing ontologies Semantic description extraction: for extracting semantic

annotation of contents / pages

Page 11: Building Semantic Web Portals with WebML

11

Extending WebML towards Semantic WebExample of Usage of Advanced Units

Artists PageSearch Page

ValSearch Similar InstanceOf

<Istance:=?><Class:=Artist>

[Property=mm:soundsLike][Value=?]

Has PropertyValue [uri]

OK

Artists

Ontology:MusicBrainzClass:Artist

[uri]

KO

The value submitted in the form is passed to the HasPropertyValue unitthat extracts a set of URIs of instances (albums or artists) with mm:soundsLike

property equal to Val. The InstanceOf unit that checks if theyare instances of the class Artist. The URIs are then shown in a list of Artists.

Page 12: Building Semantic Web Portals with WebML

12

Case Study Example

User Home Page

Add Foaf Prof.

User[Selector: User.OID]

User Data

Get unit

UserCtx

Ontology:FoafClass:Person

[Filter: Person.uri]

Foaf ProfileUser.FoafUri

Import Ontology

[OntologyURI]

OntologyURIModify

User[Selector: User.OID]

<User.FoafUri := OntologyURI>

OntologyURI

OK

H

Suggestions Artist Details

Artist

Ontology:MusicBrainzClass:Artist

[Filter: Artist.uri]

Per

son

.Top

ic

Tracks

Ontology:MusicBrainzClass:Track

[Filter: Track.playedBy]

Ontology:MusicBrainzClass:Artist

[Filter: Artist.uri]

Artist Artist.uri

Artist.uri

Search by genre

HierarchicalIndex

Ontology:MusicMozClass:Genre

L

Artist

Ontology:MusicBrainzClass:Artist

[Filter: Artist.hasGenre]

Genre.uri

Artist.uri

SubClassOf

<Class1:=?><Class2:=Genre.uri>

SubClasses

Describe

RDF

<Uri: Artist.uri>Artist.uri

Page 13: Building Semantic Web Portals with WebML

13

Implementation expirience

Current extension is for RDF/OWL and uses SPARQL queries

New set of runtime components created to support semantic data sources based on Jena API and Pellet

Modeling environment extended for the use of the new units

OntologyModelServiceAbstractOntologyQuery

Service

AbstractSelectQueryService

AbstractDescribeQueryService

<<uses>>

OntoIndexUnitServiceSubClassOfUnitService DescribeUnitService

<<uses>>

ImportUnitService

<<uses>>

SetCompositionUnitService

<<uses>>

AbstractAskQueryService

AskQueryUnitService

<<uses>>

Data Access Layer

Abstract Query Layer

Unit Layer

Page 14: Building Semantic Web Portals with WebML

14

Implementation expirience

Page 15: Building Semantic Web Portals with WebML

15

Implementation expirience

The automatic code generation phase is based on the generation of configuration files for the generic components

The transformation from design time descriptor to runtime descriptor is based on XSLT

Design Time Descriptor Runtime Descriptor<SWINDEXUNIT class="mf:Track" id="swinu1"

name="Tracks" ontology="onto1">

<DisplayedProperties

property="mf:title"/>

<DisplayedProperties

property="mf:descripion"/>

<SortProperties order="ascending"

property="mf:title"/>

<Filter boolean="or">

<FilterCondition id="fselector1"

property="mf:playedBy"

predicate="eq" name="Artist"/>

</Filter>

</SWINDEXUNIT>

<descriptor service="org.webml.onto.

SWIndexUnitService">

<onto>onto1</onto>

...

<input-params>

<input-param type="mm:Artist"

name="swdau2.rdf:ID" />

</input-params>

...

<query type="SELECT">

SELECT DISTINCT ?instance ?p1 ?p2

WHERE {?instance rdf:type mm:Track .

?instance mm:title ?p1 .

?instance mm:descriptor ?p2 .

?instance mm:playedBy ?fs1 .

FILTER (?fs1 = $swdau2.rdf:ID$)}

ORDER BY DESC(?p1)

</query>

</descriptor>

Page 16: Building Semantic Web Portals with WebML

16

Conclusions & Future Works

Good abstractions are still valid even when new technologies become available

Schema querying become relevant in the context of Semantic Web and Models should provide support for it

Semantic Web introduces new query “types” and metamodels for Web applications should deal with this

Our solution is missing a real integration layer for better allowing seamless integration of the different datasources

Current implementations suffers performance issue when executed the first time

Page 17: Building Semantic Web Portals with WebML

Thanks for the attention!

For comments or questions:Marco Brambilla

Politecnico di Milano

Dipartimento di Elettronica e Informazione

[email protected]

Resources:http://home.dei.polimi.it/mbrambil

http://marcobrambi.blogspot.com

http://twitter.com/MarcoBrambi

17

http://home.dei.polimi.it/mbrambil http://twitter.com/MarcoBrambi

http://www.slideshare.net/mbrambil


Recommended