semantic computing research group university of helsinki 1 semcocoon – a semantic cocoon ontoview...

14
Semantic Computing Research Group University of Helsinki http://www.cs.helsinki.fi/group/seco/ 1 SemCocoon – A Semantic Cocoon OntoView – Portal System of MuseumFinland Eetu Mäkelä ([email protected])

Upload: stewart-fletcher

Post on 11-Jan-2016

222 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki

http://www.cs.helsinki.fi/group/seco/

1

SemCocoon – A Semantic CocoonOntoView – Portal System of MuseumFinland

Eetu Mäkelä ([email protected])

Page 2: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 2

http://www.cs.helsinki.fi/group/seco/

Topics

• What are SemCocoon and OntoView, and what are they useful for?

• SemCocoon– The structure and use of Cocoon-pipelines– The Cocoon-components of SemCocoon

• OntoView– Applying OntoView to new material– The logical and implementation architecture of OntoView– The Cocoon-pipelines of OntoView– The components of the OntoViewn Cocoon-pipelines

Page 3: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 3

http://www.cs.helsinki.fi/group/seco/

SemCocoon vs. OntoView

• SemCocoon is a Cocoon-based environment for the creation of modular, semantic and Web Services -compatible XML-based applications.

• OntoView ≈ MuseumFinland, A tool for creating MuseumFinland type semantic web portals, based on SemCocoon, and including also Ontogator and Ontodella.

Cocoon: http://cocoon.apache.org/

Page 4: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 4

http://www.cs.helsinki.fi/group/seco/

The Cocoon components of SemCocoon

• SemCocoon is an extended stand-alone distribution of Cocoon 2.1.3, with added components that enable Web Services- and Semantic Web-functionality, along with other minor enhancements.

• The Cocoon components of SemCocoon– Base classes– Web Services –components– Semantic Web –components– Other components

Page 5: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 5

http://www.cs.helsinki.fi/group/seco/

The Structure and Use of Cocoon Pipelines

• A single pipeline is comprised of a single generator, zero or more transformers and one serializer.

• Pipelines can also aggregate results from multiple subpipelines.

• Every component in the pipeline after the generator and before the serializer consumes and produces XML (=SAX events).

• Forces a modular design.

• Are defined in the sitemap.xmap file.

Lisätietoa: http://cocoon.apache.org/2.1/userdocs/concepts/index.html

Page 6: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 6

http://www.cs.helsinki.fi/group/seco/

Base Classes

• NullTransformer – Swallows all input and produces nothing.

• AbstractSerializedXMLTransformer – Serializes all incoming XML into a string. Usage requires the implementation of a generate method which uses the string to generate SAX-events.

Page 7: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 7

http://www.cs.helsinki.fi/group/seco/

Web Services –components

• Allow Cocoon-pipelines and components to be used over the network– CacheableStreamGenerator – parses XML from inside a

HTTP-request into SAX-events. Used for implementing Web Services.

– XMLHTTPServerTransformer – Sends its input inside a HTTP-request to a server, and generates SAX-events from the respones. Used for calling Web Services

– QueryGenerator – Parses any RDF-format from a HTTP-request into RDF/XML SAX-events

Page 8: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 8

http://www.cs.helsinki.fi/group/seco/

Semantic Web -components

• Implement the semantic functionality– OntodellaServerTransformer – Takes an URI from a

configured XML-element attribute and queries the Ontodella server with that URI.

– OgtTransformer – A Local Ontogator view-based search server wrapped in a Cocoon-transformer.

– QueryGenerator can also be seen as a Semantic Web component in addition to a Web Services component

Page 9: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 9

http://www.cs.helsinki.fi/group/seco/

Other Components

• LoggingTransformer – Saves incoming XML into a log file, and optionally forwards it.

• SmartImageReader – An improvement on the ImageReader in basic Cocoon, with additional configuration options and supporting more image formats.

Page 10: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 10

http://www.cs.helsinki.fi/group/seco/

OntoView

• A tool for building MuseumFinland -like semantic web portals

• Applying OntoView to new data requires– Ontologies to be used in the projection of categories.– Item data annotated to the ontologies– Prolog rules for projecting the categories– Prolog rules for the creation of semantic links– An Ontodella run– An XSLT-sheet for the layout

Page 11: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 11

http://www.cs.helsinki.fi/group/seco/

The Architecture of OntoView

User Interface

Ontogator Ontodella

data

the user

categories

-category projection rules-semantic linking rules

-layout-user interaction logic-cocoon, java, xml, xsl

-multiview based search-keyword search-java -data in RDF format

http: text/RDF

Logical Structure:

Implementation Structure:

SemCocoon:•Ontogator•User Interfacethe user

SWI-Prolog:

Ontodellacategories – file: text/RDF

semantic links - http: text/RDF

data

– file: text/RDF– http: text/HTML

Page 12: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 12

http://www.cs.helsinki.fi/group/seco/

The Cocoon pipelines of OntoView

Page 13: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 13

http://www.cs.helsinki.fi/group/seco/

The Components of OntoView

• Content: – categories.rdf: The category projection file produced by Ontodella for OntoView.

• Generators:– ustateGen.xsp: create an XML-representation of user state– ogtRootQuery.rdf: Ontogator root query

• Transformers:– User Interaction Logic:

• ustate.xslt: Produces final user state by combining multiple data sources– Ontogator:

• ogtHelper.xslt: helper file for creating Ontogator queries• ogtPreQuery.xslt: helper query for constraining the actual Ontogator search query• ogtSearchQuery.xslt: Transforms the user state into an Ontogator query for categories and

bookmarks• ogtItemQuery.xslt: Transforms the user state into an Ontogator query for item details• ogtTreeQuery.xslt: Transforms the user state into an Ontogator query for getting a category tree• ogtItemsQuery.xslt: Transforms the user state into an Ontogator query for details on all items

– User Interface/layout:• xhtmlHelper.xslt: helper file for UI XSLT transformations• [mobile/web]Main.xslt: Transforms an appropriate Ontogator-response into a main/search page• [mobile/web]Item.xslt: Transforms an appropriate Ontogator-response into an item page• [mobile/web]Tree.xslt: Transforms an appropriate Ontogator-response into a tree view page• [mobile/web]Muinainen.xslt: Transforms an appropriate Ontodella-response into a historic site

page• webItems.xslt: Transforms an appropriate Ontogator-response into a page containing all item

data

Page 14: Semantic Computing Research Group University of Helsinki  1 SemCocoon – A Semantic Cocoon OntoView – Portal System

Semantic Computing Research Group

University of Helsinki 14

http://www.cs.helsinki.fi/group/seco/

Summary

• SemCocoon– A basis for creating XML-based semantic and/or Web

Services -compatible applications.– Forces a modular design, with generic, easily reusable and

extendable components.– Requires that application logic can be formalized as Cocoon-

pipelines and the application datamodel as XML.

• OntoView– A tool for creating MuseumFinland -type semantic web

portals.– Requires ontologies and data in RDF-format, experience in

the creation of prolog-rules, and experience with XSLT for layout (but could quite easily be modified to get rid of the last two conditions)