Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Introduction to Semantic Web Portal

Similar presentations


Presentation on theme: "An Introduction to Semantic Web Portal"— Presentation transcript:

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

44

45

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


Download ppt "An Introduction to Semantic Web Portal"

Similar presentations


Ads by Google