Download presentation
Presentation is loading. Please wait.
1
An Introduction to Semantic Web Portal
Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University
2
Outline A brief description to the Semantic Web Portal
Architectural basis of the Semantic Web KA2: an ontology-based web portal An architecture of RDF triple data store Conclusions Semantic Web Portal
3
Introduction to Semantic Web
Facilities to put machine-understandable data on the Web are becoming a high priority for many communities. The Web can reach its full potential only if it becomes a place where data can be shared and processed by automated tools as well as by people. For the Web to scale, tomorrow's programs must be able to share and process data even when these programs have been designed totally independently. Semantic Web Portal
4
Introduction to Semantic Web
The Semantic Web is a vision: the idea of having data on the web defined and linked in a way that it can be used by machines not just for display purposes, but for automation, integration and reuse of data across various applications See “W3C Semantic Web Activity,” by Marja-Riitta Koivunen, for more descriptions. Semantic Web Portal
5
The Semantic Web Layered Architecture
URI Unicode XML Namespaces XML Schema Sig RDF M&S RDF Schema Ontology Rules Logic Proof Tim Berners-Lee: “Axioms, Architecture and Aspirations” W3C all-working group plenary Meeting 28 February 2001 ( Semantic Web Portal
6
AI’s Chance Namespaces CSS Increasing demand for formalized knowledge on the Web: AI’s chance! XML- & RDF-based markup languages provide a 'universal' storage/interchange format for such Web-distributed knowledge representation. DTDs XSLT DAML Stylesheets Agents Ontobroker Transformations HornML XML XQL Rules Queries RuleML XQuery XML-QL SHOE Frames RDF[S] Acquisition TopicMaps Protégé Semantic Web Portal
7
The Big Picture of SW
8
Web Portals A web portal is a web site that provides information content on a common topic. General portals, e.g., Yahoo, Excite, Netscape, Lycos, CNET, MSN, and AOL.com Specialized portal e.g., gardeners.com, semanticweb.org Making valuable information to be found directory service, search facility news, , community forum Semantic Web Portal
9
Ontology-Based Web Portals
Ontology represents common knowledge and interests sharing within their community Tasks that ontology can be used to support a portal Accessing a portal Conceptual search and navigation Inference capabilities Providing information Methods and tools accounting for the diversity of information sources Semantic Web Portal
10
Introduction to XML-Based Ontology
URI Unicode XML Namespaces XML Schema Sig RDF M&S RDF Schema Ontology Rules Logic Proof Semantic Web Portal
11
What is XML? Extensible Markup Language A Syntax for Documents
A Meta-Markup Language A Structural and Semantic Language, not a Formatting Language Not just for Web pages Semantic Web Portal
12
Namespace Bindings Prefixes are bound to namespace URIs by attaching an xmlns:prefix attribute to the prefixed element or one of its ancestors, prefix:name1 ,..., prefix:namen The value of the xmlns:prefix attribute is a URI, which may or (unlike for DTDs!) may not point to a description of the namespace’s syntax An element can use bindings for multiple name-spaces via attributes xmlns:prefix1 ,..., xmlns:prefixm Semantic Web Portal
13
XML Document Instance and DTD
<mail:address xmlns:mail=" xmlns:tele=" <mail:name>Xaver M. Linde</mail:name> <mail:street>Wikingerufer 7</mail:street> <mail:town>10555 Berlin</mail:town> <mail:bill>12.50</mail:bill> <tele:phone>030/ </tele:phone> <tele:phone>030/ </tele:phone> <tele:fax>030/ </tele:fax> <tele:bill>76.20</tele:bill> </ mail:address> <!ELEMENT address (name, street, town, bill, phone+, fax+, bill)> <!ELEMENT name (#PCDATA)> <!ELEMENT street (#PCDATA)> <!ELEMENT town (#PCDATA)> <!ELEMENT bill (#PCDATA)> <!ELEMENT phone (#PCDATA)> <!ELEMENT fax (#PCDATA)> <!ELEMENT ARTIST (#PCDATA)> Semantic Web Portal
14
XML Schema An XML syntax that's an alternative and/or supplement to DTDs Data typing of element and attribute content Semantic Web Portal
15
RDF M&S RDF (Resource Description Framework) RDF consists of two parts
Beyond Machine readable to Machine understandable RDF consists of two parts RDF Model (a set of triples) RDF Syntax (different XML serialization syntaxes) RDF Schema for definition of Vocabularies (simple Ontologies) for RDF (and in RDF)
16
RDF Data Model Resources Properties Statements
A resource is a thing you talk about (can reference) Resources have URI’s RDF definitions are themselves Resources (linkage, see requirement 1) Properties slots, define relationships to other resources or atomic values Statements “Resource has Property with Value” (Values can be resources or atomic XML data) Similar to Frame Systems Semantic Web Portal
17
A Simple Example Statement Structure Directed graph
“Ora Lassila is the creator of the resource Structure Resource (subject) Property (predicate) Value (object) "Ora Lassila” Directed graph s:Creator Ora Lassila Semantic Web Portal
18
Another Example To add properties to Creator, point through an intermediate Resource. s:Creator Person://fi/ Name Ora Lassila Semantic Web Portal
19
Example: Bag The students in course are Amy, Tim, John, Mary, and Sue /courses/6.001 Rdf:Bag rdf:type /Students/Amy students rdf:_1 rdf:_2 /Students/Tim bagid1 rdf:_3 /Students/John rdf:_4 /Students/Mary rdf:_5 /Students/Sue Semantic Web Portal
20
Example: Alternative The source code for X11 may be found at ftp.x.org, ftp.cs.purdue.edu, or ftp.eu.net rdf:Alt rdf:type source altid rdf:_1 ftp.x.org rdf:_2 ftp.cs.purdue.edu rdf:_3 ftp.eu.net Semantic Web Portal
21
RDF Syntax I Data model does not enforce particular syntax
Specification suggests many different syntaxes based on XML General form: Starts an RDF-Description Subject (OID) <rdf:RDF> <rdf:Description about=" <s:Creator>Ora Lassila</s:Creator> <s:createdWith rdf:resource=“ </rdf:Description> </rdf:RDF> Literal Resource (possibly another RDF-description) Properties Semantic Web Portal
22
Resulting Graph <rdf:RDF>
s:Creator s:createdWith Ora Lassila <rdf:RDF> <rdf:Description about=" <s:Creator>Ora Lassila</s:Creator> <s:createdWith rdf:resource=“ </rdf:Description> </rdf:RDF> Semantic Web Portal
23
RDF Syntax II: Syntactic Varieties
Typing Information Subject (OID) In-Element Property <s:Homepage rdf:about=" s:Creator=“Ora Lassila”/> <s:createdWith> <s:HTMLEditor rdf:about=“ </s:createdWith> </s:Homepage> rdf:type s:Homepage Property s:createdWith s:Creator rdf:type HTMLEditor Ora Lassila
24
RDF Schema (RDFS) RDF just defines the data model
Need for definition of vocabularies for the data model - an Ontology Language! The RDF Schema mechanism provides a basic type system for use in RDF models. The RDF schema specification language is less expressive, but much simpler to implement, than full predicate calculus languages such as CycL and KIF. Semantic Web Portal
25
Most Important Modeling Primitives
Core Classes Root-Class rdfs:Resource MetaClass rdfs:Class Literals rdfs:Literal rdfs:subclassOf-property Inherited from RDF: properties (slots) rdfs:domain & rdfs:range rdfs:label, rdfs:comment, etc. Inherited from RDF: InstanceOf (rdf:type) Semantic Web Portal
26
DAML+OIL: an Ontology Language
Extension of RDF Schema Ontology Language DAML+OIL: Result of a Joint (European + US-American) Committee Class Expressions (Intersection, Union, Complement) XML Schema Datatypes Enumerations Property Restrictions Cardinality Constraints Value Restrictions Semantic Web Portal
27
Example: Intersection & Synonyms
<daml:Class rdf:ID="TallMan"> <daml:intersectionOf rdf:parseType="daml:collection"> <daml:Class rdf:about="#TallThing"/> <daml:Class rdf:about="#Man"/> </daml:intersectionOf> </daml:Class> <daml:Class rdf:ID="HumanBeing"> <daml:sameClassAs rdf:resource="#Person"/> </daml:Class> Semantic Web Portal
28
Example: Disjoint & Complement
<daml:Disjoint rdf:parseType="daml:collection"> <daml:Class rdf:about="#Car"/> <daml:Class rdf:about="#Person"/> <daml:Class rdf:about="#Plant"/> </daml:Disjoint> Disjoint not strictly necessary, since expressible via pairwise subClassOf of complementOf, as for Car and Person: <daml:Class rdf:ID="Car"> <rdfs:comment>no car is a person</rdfs:comment> <rdfs:subClassOf> <daml:Class> <daml:complementOf rdf:resource="#Person"/> </daml:Class> </rdfs:subClassOf> Semantic Web Portal
29
Example: Properties (Transitive, Inverse, subProperty, UniqueProperty, range, Datatypes)
<daml:TransitiveProperty rdf:ID="hasAncestor"/> <daml:ObjectProperty rdf:ID="hasChild"> <daml:inverseOf rdf:resource="#hasParent"/> </daml:ObjectProperty> <daml:UniqueProperty rdf:ID="hasMother"> <rdfs:subPropertyOf rdf:resource="#hasParent"/> <rdfs:range rdf:resource="#Female"/> </daml:UniqueProperty> <daml:DatatypeProperty rdf:ID="age"> <rdf:type rdf:resource=" <rdfs:range rdf:resource=" </daml:DatatypeProperty> Semantic Web Portal
30
Using User-defined Datatypes (based on XML Schema)
<xsd:simpleType name="over17"> <!--over17 is an XMLS datatype based on decimal--> <!--with the added restriction that values must be >=18--> <xsd:restriction base="xsd:decimal"> <xsd:minInclusive value="18"/> </xsd:restriction> </xsd:simpleType> <daml:Class rdf:ID="Adult"> <daml:intersectionOf rdf:parseType="daml:collection"> <daml:Class rdf:about="#Person"/> <daml:Restriction> <daml:onProperty rdf:resource="#age"/> <daml:hasClass rdf:resource="somefile#over17"/> </daml:Restriction> </daml:intersectionOf> </daml:Class> Semantic Web Portal
31
Instances (Individuals)
<daml:Class rdf:ID="Person"> . . . </daml:Class> <Person rdf:ID="Adam"> <rdfs:label>Adam</rdfs:label> <rdfs:comment>Adam is a person.</rdfs:comment> <age><xsd:integer rdf:value="13"/></age> <shoesize> <xsd:decimal rdf:value="9.5"/> </shoesize> </Person> Semantic Web Portal
32
Web Services Semantic Web Portal
33
DAML-S Users and software agents should be able to discover, invoke, compose, and monitor Web resources offering particular services and having particular properties. As part of the DARPA Agent Markup Language program, we have begun to develop an ontology of services, called DAML-S. Semantic Web Portal
34
Top Level of the Service Ontology
Resource provides ServiceProfile presents (what it does) Service (how it works) (how to access it) supports described by Service Grounding ServiceModel Semantic Web Portal
35
Process Modeling Ontology
Semantic Web Portal
36
Concept of ebXML Business Process Specification Schema
Semantic Web Portal
37
Business Process Specification in XML Semantic Web Portal
38
KA2 An Ontology-Based Community Web Portal
39
KA2 Knowledge Annotation Initiative of the Knowledge Acquisition Community The basic scenario WWW documents of the KS community were annotated according to the schema of an ontology. The annotations enable intelligent access to these documents and infer implicit knowledge from explicitly stated facts and rules from the ontology. Semantic Web Portal
40
The KA2 Ontology Person-ontology Publication-ontology Class hierarchy
Employee Academic-Staff Lecturer Researcher Administrative-Staff Secretary Technical-Staff Student Phd-Student Relations Address, Affiliation, Cooperates-With, Editor-Of, , First-Name, Has-Publication, Head-Of-Group, Head-Of-Project, Last-Name, Member-Of-Organization, Member-Of-Program-Committee, Member-Of-Research-Group, Middle-Initial, Organizer-Of-Chair-Of, Person-Name, Photo, Research-Interest, Secretary-Of, Studies-At, Supervises, Supervisor, Works-At-Project Class hierarchy On-Line-Publication Publication Article Article-In-Book Conference-Paper Journal-Article Technical-Report Workshop-Paper Book Journal IEEE-Expert IJHCS Special-Issue Relations Abstract, Book-Editor, Conference-Proceedings-Title, Contains-Article-In-Book, Contains-Article-In-Journal, Describes-Project, First-Page, Has-Author, Has-Publisher, In-Book, In-Conference, In-Journal, In-Organization, In-Workshop, Journal-Editor, Journal-Number, Journal-Publisher, Journal-Year, Last-Page, On-Line-Version, …
41
Accessing the Community Web Portal
Query capability In F-Logic mechanism Navigating capability As the easy-to-use front-end of the query mechanism Semantic Web Portal
42
Query Capabilities For all publications of the researcher “Steffen Staab”. FORALL Pub <- EXISTS ResID ResID:Researcher[NAME->> Steffen "Staab"; PUBLICATION ->> Pub]. Two researchers cooperate, if a Researcher X works at a Project Proj and if a Researcher Y works at the same Project Proj and X is another person than Y FORALL X; Y; Proj X:Researcher[COOPERATESWITH ->> Y:Researcher] <- X:Researcher[WORKSATPROJECT->>Proj:Project] AND Y:Researcher[WORKSATPROJECT->>Proj:Project] AND NOT equal(X; Y ): Which researchers are cooperating with other r? FORALL ResID1, ResID2 <- ResID1:Researcher[COOPERATESWITH ->> ResID2]. Semantic Web Portal
43
Navigating and Querying the Portal
Query the portal using F-Logic is too inconvenient. Navigating and querying the web A hypertext link may contain a query dynamically evaluated when clicking on the link (See P. 45) Query generated by using the hyperbolic view interface (See P. 46) Queries may be personalized and for the different users and available for the user in a selection list. An expert mode: Querying the portal by typing an F-Logic statement Semantic Web Portal
46
Providing Information
Integrating various syntactic and semantic formats based on the common ontology Three different modes of information provision are supported Metadata-based information Wrapper-based information Fact-based information Semantic Web Portal
47
Metadata-based Information
In RDF, XML Metadata Information source Annotation tool (OntoPad Annotea, …) Semantic Web Portal
48
Wrapper-based Information
Annotating information sources by hand is time-consuming. Semi-structured Information sources (e.g., HTML) Wrapper program Metadata Structured Information sources (e.g., RDB) (Onto Wrapper) Semantic Web Portal
49
Fact-Based Information
create New facts add, modify, delete Knowledge warehouse Fact Editor (Ontoedit, OilED, Protégé 2000) Semantic Web Portal
50
Development of Web Portals
Semantic Web Portal
51
The System Architecture
Semantic Web Portal
52
An Architecture of RDF Triple Data Store
53
RDF Parser and Generator
Using DCG in Prolog as the development tool Formal grammar in RDF M&S Spec Formal grammar rules in DCG Prolog’s working storage Prolog’s inference engine User interface Semantic Web Portal
54
[6.1] RDF ::= ['<rdf:RDF>'] obj* ['</rdf:RDF>']
[6.2] obj ::= description | container [6.3] description ::= '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '/>' | '<rdf:Description' idAboutAttr? bagIdAttr? propAttr* '>' propertyElt* '</rdf:Description>' | typedNode [6.4] container ::= sequence | bag | alternative rdf(Objs) --> (['<?'], ([nm/'xml'];[nm/'XML']; [nm/'xmls'];[nm/'XMLS']), ([nm/'version','=',qs/_];[]), ([nm/'encoding','=',qs/_];[]), ['?>'],{wl('XML heading')} ;[]), (fullSTG('RDF',NS) ; halfSTG('RDF',NS), ['>'] [ ]), objStar(Objs), (fullETG('RDF',NS);[ ]). objStar(Out) --> obj(O), objStar(R),{Out=[O|R]} [],{Out=[]}. obj(Obj) --> container(Obj) ; description(_),{getAllTriples(Obj)}. getAllTriples(Obj):- findall(statement(A,B,C),statement(A,B,C),Obj). description(_) --> halfSTG('Description',NS), (idAboutAttr(IdAboutAttr);[]), (bagIdAttr(BagIdAttr);[]), propAttrStar(IdAboutAttr), (['/>'] ; ['>'], propertyEltStar(IdAboutAttr), fullETG('Description',NS)), {reificationOfStatements(IdAboutAttr,BagIdAttr)} typedNode.
55
RDF input Prolog output [statement(about/http://www.foo.com/cool.html,
<rdf:RDF xmlns:rdf=" xmlns:dc=" <rdf:Description about=" <dc:Creator> <rdf:Seq ID="CreatorsAlphabeticalBySurname"> <rdf:li>Mary Andrew</rdf:li> <rdf:li>Jacky Crystal</rdf:li> </rdf:Seq> </dc:Creator> <dc:Identifier> <rdf:Bag ID="MirroredSites"> <rdf:li rdf:resource=" <rdf:li rdf:resource=" </rdf:Bag> </dc:Identifier> <dc:Title> <rdf:Alt> <rdf:li xml:lang="en">The Coolest Web Page</rdf:li> <rdf:li xml:lang="it">Il Pagio di Web Fuba</rdf:li> </rdf:Alt> </dc:Title></rdf:Description></rdf:RDF> RDF input [statement(about/ Title, alt(_87882,[string/The Coolest Web Page, string/Il Pagio di Web Fuba])), statement(about/ Identifier, bag(id/MirroredSites,[resource/ resource/ Creator, seq(id/CreatorsAlphabeticalBySurname,[string/Mary Andrew, string/Jacky Crystal]))] Prolog output
56
RDF Statements in RDB Tables
RDF_NameSpace Id NsName 1 2 … RDF_Resource Id ResourceName 1 2 … RDF_Statement Id Resource Predicate Literal 1 2 … RDF_Predicate Id NS PredicateName 1 2 Creator Language … RDF_Literal Id LiteralName 1 Jacky Crystal 2 English …
57
User Interface Conceptual Search
Natural language interface is the best choice, but is very difficult to obtain a good result. Form-based interface is easy to implement, but is too restricted. Hierarchical directory browsing is perhaps a good idea, if the domain in question is well organized. We also propose a frame-based query interface. target_concept[(attribute1[:value1], …)] teacher(office:6th_floor) Semantic Web Portal
58
User Interface Natural Language Generation
Knowledge Warehouse (RDF) Content extraction Text planning Multi-sentential text Content planning NLG Semantic Web Portal
59
Future Work Building an ontology for the Digital Archive Services
Consisting of resource and process parts Declarative approach to semantic web service Using an workflow engine to interpret the process descriptions Intelligent Q&A for digital archive Semantic Web Portal
60
Summary Semantic Web portals Machine-understandable information
RDF store Accessing information Navigation and query Providing information Annotation, wrapper, fact editing Enabling automatic processing by software agents Semantic Web Portal
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.