530 likes | 739 Views
Markup Languages in Semantic Web and Application of Semantic Web. Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University chingyeh@cse.ttu.edu.tw httP://www.cse.ttu.edu.tw/chingyeh. Outline. Introduction to the Semantic Web
E N D
Markup Languages in Semantic Web andApplication of Semantic Web Ching-Long Yeh 葉慶隆 Department of Computer Science and Engineering Tatung University chingyeh@cse.ttu.edu.tw httP://www.cse.ttu.edu.tw/chingyeh
Outline • Introduction to the Semantic Web • Some Markup Languages in the Semantic Web • RDF(S) • DAML(-S) • The Big Picture of the Semantic Web • Semantic Community Portal Semantic Web
Sources • Part of the slides are selected from the following sources: • Knowledge Markup and Resource Semantics, By Harold Boley, Stefan Decker, and Michael Sintek, IJCAI-01 Tutorial, http://www.ijcai-01.org/ • Anupriya Ankolenkar, et al., “DAML-S: Semantic Markup For Web Services,”, Proceedings of SWWS’ 01, the First Semantic Web Working Symposium, California, USA, July 30 - August 1, 2001. Semantic Web
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
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
The Semantic Web Layered Architecture Tim Berners-Lee: “Axioms, Architecture and Aspirations” W3C all-working group plenary Meeting 28 February 2001 (http://www.w3.org/2001/Talks/0228-tbl/slide5-0.html) Semantic Web
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. AI’s Chance Namespaces CSS DTDs XSLT DAML Stylesheets Agents Transformations Ontobroker XQL XML HornML Rules Queries XQuery RuleML XML-QL SHOE RDF[S] Frames Acquisition TopicMaps Protégé Semantic Web
Introduction to RDF • RDF (Resource Description Framework) • Beyond Machine readable to Machine understandable • RDF unites a wide variety of stakeholders: • Digital librarians, content-raters, privacy advocates, B2B industries, AI... • Significant (but less than XML) industrial momentum, lead by W3C • 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) Knowledge Markup and Resource Semantics, By Harold Boley, Stefan Decker, and Michael Sintek, IJCAI-01 Tutorial, http://www.ijcai-01.org/
RDF Data Model • Resources • 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
Ora Lassila A Simple Example • Statement • “Ora Lassila is the creator of the resource http://www.w3.org/Home/Lassila” • Structure • Resource (subject) http://www.w3.org/Home/Lassila • Property (predicate) http://www.schema.org/#Creator • Value (object) "Ora Lassila” • Directed graph s:Creator http://www.w3.org/Home/Lassila Semantic Web
Another Example • To add properties to Creator, point through an intermediate Resource. http://www.w3.org/Home/Lassila s:Creator Person://fi/654645635 Name Email Ora Lassila lassila@w3.org Semantic Web
Collection Containers • Multiple occurrences of the same PropertyType don’t establish a relation between the values • The Millers own a boat, a bike, and a TV set • The Millers need (a car or a truck) • (Sarah and Bob) bought a new car • RDF defines three special Resources: • Bag unordered valuesrdf:Bag • Sequence ordered values rdf:Seq • Alternative single valuerdf:Alt • Core RDF does not enforce ‘set’ semantics amongst values Semantic Web
/courses/6.001 Example: Bag • The students incourse 6.001 are Amy, Tim,John, Mary,and Sue 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
Example: Alternative • The source code for X11 may be found at ftp.x.org, ftp.cs.purdue.edu, or ftp.eu.net http://x.org/package/X11 rdf:Alt rdf:type source altid rdf:_1 ftp.x.org rdf:_2 ftp.cs.purdue.edu rdf:_3 ftp.eu.net Semantic Web
Statements About Statements • Making statements about statements requires a process for transforming them into Resources • subject the original resource • predicate the original property • object the original value • type rdf:Statement Semantic Web
Statements About Statements Ralph Swick says that Ora Lassila is the creator of the resource http://www.w3.org/Home/Lassila. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:a="http://description.org/schema/"> <rdf:Description> <rdf:subject resource="http://www.w3.org/Home/Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" /> <rdf:object>Ora Lassila</rdf:object> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement" /> <a:attributedTo>Ralph Swick</a:attributedTo> </rdf:Description> </rdf:RDF> Semantic Web
Representation of a reified statement Ora Lasilla http://www.w3.org/Home/Lassila rdf:object rdf:subject rdf:predicate rdf:type rdf:Statement s:Creator a:attributedTo Ralph Swick Semantic Web
Statements About Statements <rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila" bagID="D_001"> <s:Creator>Ora Lassila</s:Creator> <s:Title>Ora's Home Page</s:Title> </rdf:Description> <rdf:Description aboutEach="#D_001"> <a:attributedTo>Ralph Swick</a:attributedTo> </rdf:Description> </rdf:RDF> Semantic Web
A Formal Model of RDF • RDF itself is mathematically straightforward: • Basic Definitions • Resources. • PropertiesResources • Literals • Statements = Properties Resources {Resources Literals} • Typing • rdf:type Properties • {RDF:type, sub, obj} Statements obj Resources • for triples like {p,r1,r2} the RDF spec should use some different bracketing, like (p,r1,r2) Semantic Web
Formal Model of RDF II • Reification • rdf:Statement Resource-Properties • {rdf:predicate, rdf:subject, rdf:object } Properties • Reification of a triple {pred, sub, obj} of Statements is an element r of Resources representing the reified triple and the elements s1, s2, s3, and s4 of Statements such that • s1: {RDF:predicate, r, pred} • s2: {RDF:subject, r, sub} • s3: {RDF:object, r, obj} • s4: {RDF:type, r, [RDF:Statement]} • Collections • { RDF:Seq, RDF:Bag, and RDF:Alt } Resources-Properties • There is a subset of Properties corresponding to the ordinals (1, 2, 3, ...) called Ord. We refer to • elements of Ord as RDF:_1, RDF:_2, RDF:_3, ... Semantic Web
RDF Syntax I • Data model does not enforce particular syntax • Specification suggests many different syntaxes based on XML • General form: Subject (OID) Starts an RDF-Description <rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> <s:createdWith rdf:resource=“http://www.w3c.org/amaya”/> </rdf:Description> </rdf:RDF> Literal Resource (possibly another RDF-description) Properties Semantic Web
Resulting Graph http://www.w3.org/Home/Lassila s:createdWith s:Creator http://www.w3c.org/amaya Ora Lassila <rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> <s:createdWith rdf:resource=“http://www.w3c.org/amaya”/> </rdf:Description> </rdf:RDF> Semantic Web
RDF Syntax II: Syntactic Varieties Typing Information Subject (OID) In-Element Property <s:Homepage rdf:about="http://www.w3.org/Home/Lassila” s:Creator=“Ora Lassila”/> <s:createdWith> <s:HTMLEditor rdf:about=“http://www.w3c.org/amaya”/> </s:createdWith> </s:Homepage> rdf:type s:Homepage http://www.w3.org/Home/Lassila Property s:createdWith s:Creator rdf:type HTMLEditor http://www.w3c.org/amaya Ora Lassila
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
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
Classes and Properties Resources Property • rdf:type • rdfs:subClassOf • rdfs:subPropertyOf • rdfs:comment • rdfs:label • rdfs:seeAlso • rdfs:isDefinedBy Classes • rdfs:Resource • rdfs:Class • rdf:Property • rdfs:ConstraintProperty • rdfs:Literal ConstraintProperty • rdfs:domain • rdfs:range Classes and Resources as Sets and Elements
DARPA Agent Markup Language Program • DARPA funded Research Program (also funded the Development of the ARPANNET -> Internet) • Focusing on building the foundation for the Semantic Web: http://www.daml.org • Ontology Language DAML+OIL: Result of a Joint (European + US-American) Committee • Rule Language in preparation Semantic Web
DAML+OIL • Extension of RDF Schema • Ontology Language DAML+OIL: Result of a Joint (European + US-American) Committee • Extension of RDF Schema • Class Expressions (Intersection, Union, Complement) • XML Schema Datatypes • Enumerations • Property Restrictions • Cardinality Constraints • Value Restrictions Semantic Web
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
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> </daml:Class> Semantic Web
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="http://www.daml.org/2001/03/daml+oil#UniqueProperty"/> <rdfs:range rdf:resource="http://www.w3.org/.../XMLSchema#nonNegativeInteger"/> </daml:DatatypeProperty> Semantic Web
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
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
Semantic Web Services Source: Anupriya Ankolenkar, et al., “DAML-S: Semantic Markup For Web Services,”, Proceedings of SWWS’ 01, the First Semantic Web Working Symposium, California, USA, July 30 - August 1, 2001
Web Services Semantic Web
What Is 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
Some Motivating Tasks • Automatic Web service discovery • Automatic Web service invocation • Automatic Web service composition and interoperation • Automatic Web service execution monitoring Semantic Web
Top Level of the Service Ontology Resource provide ServiceProfile presents (what it does) Service (how it works) (how to access it) supports describedBy ServiceGrounding ServiceModel Semantic Web
Process Modeling Ontology Semantic Web
KA2An Ontology-Based Community Web Portal • 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
The KA2 Ontology Person-ontology Publication-ontology Class hierarchy Person Employee Academic-Staff Lecturer Researcher Administrative-Staff Secretary Technical-Staff Student Phd-Student Relations Address, Affiliation, Cooperates-With, Editor-Of,Email, 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, …
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
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
Metadata-based Information In RDF, XML Metadata Information source Annotation tool (OntoPad Annotea, …) Semantic Web
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