Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | doreen-shelton |
View: | 217 times |
Download: | 1 times |
1USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Semantic Markup Languages:A Gentle Introduction
Yolanda Gil
USC/Information Sciences Institute
2USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Outline
I: The Big Picture The Semantic Webhttp://www.scientificamerican.com/2001/0501issue/0501berners-lee.htmlhttp://www.w3.org/DesignIssues/Semantic.html
II: A Gentle Introduction XSD, RDFS, DAMLhttp://trellis.semanticweb.org/expect/web/semanticweb/comparison.html
III: The Big Picture Revisited W3C’s Semantic Web principleshttp://www.semanticweb.org How this is changing our research in Knowledge Baseshttp://www.isi.edu/expect/papers/gil-seweb-book-01.pdf
3USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
I: THE BIG PICTURE
4USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Semantic WebW3C’s Tim Berners-Lee: “Weaving the Web”:“I have a dream for the Web… and it has two parts.” The first Web enables communication between people
The Web shows how computers and networks enable the information space while getting out of the way
The new Web will bring computers into the action Step 1 -- Describe: putting data on the Web in machine-
understandable form -- a Semantic Web– RDF (based on XML)– Master list of terms used in a document (RDF schema)– Each document mixes global standards and local agreed-upon terms
(namespaces) Step 2 -- Infer and reason: apply logic inference
– Operate on partial understanding– Answering why– Heuristics
5USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Semantics and Meaning according to TBL
“In the extreme view, the world can be seen as only connections, nothing else. … I like the idea that a piece of information is really defined only by what it’s related to, and how it’s related. There really is little else to meaning. The structure is everything.”
“What matters is in the connections. It isn’t the letters, it’s the way they are strung together into words. […] into phrases. […] into a document.
For the people, by the people: the right to link
“Once [… something…] was made available, it should be accesible to anyone […]. And it should be possible to make a link to that thing.”
6USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
And There You Have It:
XMLRDF
RDF(S)
XSD PICS
DAML
OIL
DAML+OILN3
DAML-S
WSDL
RSS
KIF MELD
OKBC
CYCL
XLink
XPath
??
? ?? ?FOL
?XTM
XQUERY
SMIL
XSLT
LOOM
7USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
II: THE GENTLE INTRODUCTION
8USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
9USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
10USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
URIs: Uniform Resource Identifiers (aka URLs)
http://trellis.semanticweb.org/semanticweb/slides/ftp://www.allinone.org/all.gz
The Web is an information space. URIs are the points in that space.
Short strings that identify resources in the web: documents, images, downloadable files, services, electronic mailboxes, and other resources.
They make resources addressable in the same simple way. They reduce the tedium of "log in to this server, then issue this magic command ..." down to a single click.
11USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
12USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Unicode
A character encoding system, like ASCII, designed to help developers who want to create software applications that work in any language in the world
Unicode provides a unique number for every character, no matter what the platform, no matter what the program, no matter what the language
13USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
14USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Why XML (eXtensible Markup Language)
Problems with HTML
HTML design - HTML is intended for presentation of information
as Web pages. - HTML contains a fixed set of markup tags.
This design is not appropriate for data: - Tags don’t convey meaning of the data inside the
tags. - Tags are not extensible.
15USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Design of XML
Tags can be used to represent the meaning of data/information separates syntax (structural representation) from semantics
=> only syntax is considered in XML
There is no fixed set of markup tags - new tags can be defined
Underlying data model is a tree structure
“XML is the new ASCII” -- Tim Bray
http://www.w3.org/TR/2000/REC-xml-20001006
16USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Simple XML Example
<Bookstore> <Book ID=“101”> <Author>John Doe</Author> <Title>Introduction to XML</Title> <Date>12 June 2001</Date> <ISBN>121232323</ISBN> <Publisher>XYZ</Publisher></Book><Book ID=“102”> <Author>Foo Bar</Author> <Title>Introduction to XSL</Title> <Date>12 June 2001</Date> <ISBN>12323573</ISBN> <Publisher>ABC</Publisher></Book></Bookstore>
XML by itself is just hierarchically structured text
Make up your own tags
Sub-elements
17USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
XSD: XML Schema Definition
– Written in the same syntax as XML documents (unlike XML DTDs!)
– Elements and attributes– Enhanced set of primitve datatypes.
• Wide range of primitive data types, supporting those found in databases (string, boolean, decimal, integer, date, etc.)
• Can create your own datatypes (complexType)- Can derive new type definitions on the basis of old ones
(refinement)– Can have constraints on attributes
• Examples: maxlength, precision, enumeration, maxInclusive (upper bound), minInclusive (lower bound), etc.
18USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
An important diversion: Namespaces
• What is a Namespace ?The Namespace of an element, is the scope within which, it (and thus it’s name) is valid. (Ex. A basic block { … } in C)
• Why do we need Namespaces ? If elements were defined within a global scope, it becomes a
problem when combining elements from multiple documents. Name collision is hard to avoid.
• Modularity: If a markup vocabulary exists which is well understood and for which there is useful software available, it is better to reuse this rather than make it again.
• Namespaces in XML:An XML namespace is a collection of names, identified by a URI reference.Names from XML namespaces may appear as qualified names, which contain a single colon, separating the name into a prefix and a local part. The prefix, which is mapped to a URI reference, selects a namespace
19USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
XSD (XML Schema) Example
<?xml version="1.0"?><xsd:schema xmlns:xsd=“http://www.w3.org/2001/XMLSchema” targetNamespace="http://www.books.org" xmlns=“http://www.books.org”> <xsd:element name="Bookstore"> <xsd:complexType> <xsd:sequence> <xsd:element ref="Book" minOccurs="1" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="Book"> <xsd:complexType> <xsd:sequence> <xsd:element ref="Title" minOccurs="1" maxOccurs="1"/> <xsd:element ref="Author" minOccurs="1" maxOccurs=“unbounded”/> <xsd:element ref="Date" minOccurs="1" maxOccurs="1"/> <xsd:element ref="ISBN" minOccurs="1" maxOccurs="1"/> <xsd:element ref="Publisher" minOccurs="1" maxOccurs="1"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="Title" type="xsd:string"/> <xsd:element name="Author" type="xsd:string"/> <xsd:element name="Date" type="xsd:Date"/> <xsd:element name="ISBN" type="xsd:integer"/> <xsd:element name="Publisher" type="xsd:string"/></xsd:schema>
Prefix “xsd” refers to the XMLSchema namespace
“xmlns” refers to the default namespace
Defining the element “Bookstore” as a complex Type
Containing a sequence of 1 or more “Book” elements
When referring to anotherElement, use “ref”
The Author can be 1 or more
Element definitions
Notice the use of more meaningful data types
20USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
XSL [XML Stylesheet Language]
<?xml version='1.0'?><xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match="/"> <html> <body> <table cellpadding="2" cellspacing="0" border="1" bgcolor="#FFFFD5"> <tr> <th>Title</th> <th>Author</th> <th>Date</th> <th>ISBN</th> </tr> <xsl:for-each select="Bookstore/Book"> <tr><td><xsl:value-of select="Title"/></td> <td><xsl:value-of select="Author"/></td> <td><xsl:value-of select="Date"/></td> <td><xsl:value-of select="ISBN"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
An Example:
Title Author Date ISBN
Introduction to XML John Doe 12 June 2001 121232323
Introduction to XSL Foo Bar 12 June 2001 12323573
Result: (Notice, that some fields have been filtered out from the XML file)
Match the Root Element
What you print outwhen the root element matches
Go through Each “Book”Element (inside a “Bookstore”Element)
And, print out their Title,Author, Date, and ISBN
“xsl” namespace
21USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
XML: Tools/SoftwareXML Spy By far, the most comprehensive editor. Handles XML files, DTD’s, XSL files, as well as XSD (XML Schema). Unfortunately only a 30 day trial version.http://www.xmlspy.com/download.html
XML NotepadMicrosoft XML Notepad is a simple application for building and editing small sets of XML-based data. Freeware.http://msdn.microsoft.com/xml/notepad/download.asp
XML ProXML Pro is a top-notch XML editor but it doesn’t include as many features as XML Spy. Shareware.http://www.vervet.com/demo.html
You can also validate your XML files by just opening them with IE5.0 or above. It checks if the XML file is well-formed or not, and also validates against a DTD (if specified on the DOCTYPE declaration
Some nice & short Tutorials on XML/XSL/DTD/XML Schemas can be found at:www.w3schools.com
22USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Summary of the XML+ NS +XSD LayerThe Power of Simplicity
Keeps the principles of SGML in place but its spec is thin enough to wave
“When I designed HTML, I chose to avoid giving it more power than it absolutely needed – a “principle of least power”, which I have stuck to ever since. I could have used a language like Knuth’s Tex but…” -- TBL
To say you are “Using XML” is sort of like saying you are using ASCII
Using XSD (XML Schema) makes a lot more sense
23USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
24USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Where XML & XML Schemas Fail
• No semantics!
• Will XML scale in the metadata world?1. The order in which elements appear in an XML document is
often meaningful. This seems highly unnatural in the metadata world.
Furthermore, maintaining the correct order of millions of data items is impractical.
2. XML allows constructions that mix up some text along with child elements, which are hard to handle.Ex.
<topelem>This is some character string data <elem> this is a child <subelem>this is another child</subelem> </elem></topelem>
<book> <title> … </title> <author> … </author> <isbn> … </isbn></book>
<bookstore> <book> … </book> <book> … </book></bookstore>
25USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
RDF (Resource Description Framework)
1. RDF provides a way of describing resources via metadata (data about data)It restricts the description of resources to triplets (subject,predicate,object)
1. It provides interoperability between applications that exchange machine understandable information on the Web.
3. The broad goal of RDF is to define a mechanism for describing resources that makes no assumptions about a particular application domain, nor defines (a priori) the semantics of any application domain.
• Uses XML as the interchange syntax.
• Provides a lightweight ontology system.
The formal specification of RDF is available at:http://www.w3.org/TR/REC-rdf-syntax/
26USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
RDF Syntax
Subject, Predicate and Object Triplets (Tuples)
• Subject: The resource being described.• Predicate: A property of the resource• Object: The value of the property
A combination of them is said to be a Statement (or a rule)
http://foo.bar.org/index.html John DoeAuthor
A web pagebeing described
[Subject]
A property of theweb page (author)
[Predicate]
The value of the predicate(here the author)
[Object]
27USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
RDF Example
<?xml version="1.0"?> <rdf:RDF xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#" xmlns:s="http://description.org/schema/">
<rdf:Description about="http://foo.bar.org/index.html"> <s:Author>John Doe</s:Author> </rdf:Description> </rdf:RDF>
Namespace for the RDF spec
Namespace ‘s’, a custom namespace
SubjectAuthor (property of the subject)(Also a resource)
Object. Can also point to a resource
The above statement says :The Author of http://foo.bar.org/index.html is “John Doe”
In this way, we can have different objects (resources) pointing to other objects (resources) , thus forming a DLG (Directed Line Graph)
You can also make statements about statements – reificationEx: ‘xyz’ says that ‘ The Author of http://foo.bar.org/index.html is John Doe’
28USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
RDF Schema
• A schema defines the terms that will be used in the RDF statements and gives specific meanings to them.
http://www.w3.org/TR/rdf-schema/
Example:<rdf:RDF xml:lang="en" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<rdf:Description ID="MotorVehicle"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/></rdf:Description>
<rdf:Description ID="PassengerVehicle"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/></rdf:Description>
<rdf:Description ID="Truck"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/></rdf:Description>
RDF Schema Namespace
An “ID” attribute actually defines a new resource
PassengerVehicle is a subclass of MotorVehicle
“Resource” is the top level class
29USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Example (cont..)
<rdf:Description ID="Van"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#MotorVehicle"/></rdf:Description>
<rdf:Description ID="MiniVan"> <rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/> <rdfs:subClassOf rdf:resource="#Van"/> <rdfs:subClassOf rdf:resource="#PassengerVehicle"/></rdf:Description>
<rdf:Description ID="registeredTo"> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> <rdfs:domain rdf:resource="#MotorVehicle"/> <rdfs:range rdf:resource="#Person"/></rdf:Description>
<rdf:Description ID="rearSeatLegRoom"> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/> <rdfs:domain rdf:resource="#PassengerVehicle"/> <rdfs:domain rdf:resource="#Minivan"/> <rdfs:range rdf:resource="http://www.w3.org/2000/03/example/classes#Number"/></rdf:Description></rdf:RDF>
Domain of a property
Range of a property
Multiple Inheritance
30USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
RDF: Tools/Resources
SirPACA Simple RDF Parser & Compiler. It parses the RDF, and validates it. It also generates the tuples and even draws a graph of the data model.www.w3.org/RDF/Implementations/SiRPAC/
ReggieA Nice Metadata Editor. Java based simple user interface to describe a web resource.Can mail the metadata file to yourself after finished editing.http://metadata.net/dstc/
ProtégéEditor of ontologies in practically any language you care about. Open source.http://www.smi.stanford.edu/projects/protege/
31USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Summary: RDF & RDF Schema layer
Minimalist model - (thing), Class, Property Subproperty, Subclass Domain & Range
Still not a W3C recommendation Continues to change
Other languages are being built on XML substrate: XQUERY, XTM
32USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
33USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
34USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
- Cannot define properties of properties (unique, transitive)
- No equivalence, disjointness, etc.
- No mechanism of specifying necessary and sufficient conditions for class membership.
Example: If it is given that ‘XYZ’ has a ‘car’ which is ‘7ft high’, has ‘wide wheels’ and ‘loading space is 4 cub.m’, then we
should be able to reason that ‘XYZ’ has an ‘SUV’, as given by the necessary and sufficient conditions for being an ‘SUV’ : height > 4ft & wide wheels & loading space > 2 cub.m
Limitations of RDF
35USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
• W3C’s Semantic Web Activity: - RDF and metadata markup efforts to represent data in a machine understandable form.
• DARPA started the DARPA Agent Markup Language (DAML) program.
• possibly with “ARPANET -> Internet” in mind
• EC (European Commission) funding programs- Ontology Interchange Language (OIL) - logic based language. - brings logic and inference to the Semantic Web
www.daml.org DAML+OIL: http://www.daml.org/2001/03/daml+oil-index.html
DAML+OIL’s History
36USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
DAML+OIL (www.daml.org)
It builds on earlier W3C standards such as RDF and RDF Schema.
DAML extends RDF and RDFS with richer modelling primitives. disjointWith, intersectionOf, oneOf, cardinality
Able to provide properties of properties uniqueness, transitivity, etc.
Current version DAML+OIL provides a semantic interpretation (model-theoretic semantics)
http://www.daml.org/2001/03/daml+oil-index.html
37USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
An Example (from www.daml.org)<rdf:RDF xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:daml="http://www.daml.org/2000/12/daml+oil#" xmlns ="http://www.daml.org/2000/12/daml+oil-ex#">
<daml:Ontology about=“”><daml:versionInfo>An example ontology</daml:versionInfo>
<rdfs:Class rdf:ID="Animal"> <rdfs:label>Animal</rdfs:label> <rdfs:comment> This class of animals is illustrative of a number of ontological idioms. </rdfs:comment></rdfs:Class>
<rdfs:Class rdf:ID="Male"> <rdfs:subClassOf rdf:resource="#Animal"/></rdfs:Class>
<rdfs:Class rdf:ID="Female"> <rdfs:subClassOf rdf:resource="#Animal"/> <daml:disjointWith rdf:resource="#Male"/></rdfs:Class>
<rdfs:Class rdf:ID="Man"> <rdfs:subClassOf rdf:resource="#Person"/> <rdfs:subClassOf rdf:resource="#Male"/></rdfs:Class>
Can explicitly specify the set of Females to be disjoint with the set of Males
Start of an ontology (about = “” implies ‘this’ document)
The label is not used for logical interpretation
To be read conjunctively. A man is a sub-class of ‘Person’ and a ‘Male’
The Person class is defined later
38USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Example (contd..)<rdfs:Class rdf:ID="Woman"> <rdfs:subClassOf rdf:resource="#Person"/> <rdfs:subClassOf rdf:resource="#Female"/></rdfs:Class>
<rdf:ObjectProperty rdf:ID="hasParent"> <rdfs:domain rdf:resource="#Animal"/> <rdfs:range rdf:resource="#Animal"/></rdf:ObjectProperty>
<rdf:ObjectProperty rdf:ID="hasFather"> <rdfs:subPropertyOf rdf:resource="#hasParent"/> <rdfs:range rdf:resource="#Male"/></rdf:ObjectProperty>
<daml:DatatypeProperty rdf:ID="age"> <rdfs:range rdf:resource="http://www.w3.org/2000/10/XMLSchema#nonNegativeInteger"/></daml:DatatypeProperty
<rdfs:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Animal"/> <rdfs:subClassOf> <daml:Restriction> <daml:onProperty rdf:resource="#hasParent"/> <daml:toClass rdf:resource="#Person"/> </daml:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <daml:Restriction daml:cardinality="1"> <daml:onProperty rdf:resource="#hasFather"/> </daml:Restriction> </rdfs:subClassOf></rdfs:Class>
Restrictions on the property hasParent (only for thePerson class – Local scope, as opposed to rdfs:range)A person can have only another Person as it’s parent
An objectProperty relates objects to objects
Describes the element which encloses this Property
Describes the value of the Property
Note: Contrary to RDF, DAML takes the ‘intersection’ of the domains/ranges if multiple domains/ranges are specified
A datatype property relates an object to a primitive datatype value
The XML Schema datatype is referenced here
A Person can have only 1 Father
The Restriction defines an anonymous class of all thingsthat satisfy the restriction.
39USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Example (contd..)<rdfs:Class rdf:about="#Animal"><rdfs:subClassOf> <daml:Restriction daml:cardinality="2"> <daml:onProperty rdf:resource="#hasParent"/> </daml:Restriction> </rdfs:subClassOf></rdfs:Class>
<rdfs:Class rdf:about="#Person"> <rdfs:subClassOf> <daml:Restriction daml:maxcardinality="1"> <daml:onProperty rdf:resource="#hasSpouse"/> </daml:Restriction> </rdfs:subClassOf></rdfs:Class>
Further constructs that the example doesn’t use :Properties: TransitiveProperty (hasAncestor), UniqueProperty (hasMother), inverseOf(hasChild -> hasParent), etc.
Classes: intersectionOf (a daml:collection), unionOf (a daml:collection), sameClassAs, complementOf, etc.
Restrictions on the property hasParentAn animal can have exactly 2 parents
Restrictions on the property hasSpouseA person can have only 1 spouse
Addition to the Animal Class without modifying it -- “about”
40USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
DAML References/Tools
DAML Viewer:It provides a means to view the instances found in a DAML document. http://www.daml.org/viewer/applet.html
DAML Crawler Results:A list of .daml files on the internethttp://www.daml.org/crawler/pages.html
A DAML Validatorhttp://www.daml.org/validator/
A DAML example explained:It has the same example as in the slides, discussed in detail.http://www.daml.org/2001/03/daml+oil-walkthru.html
41USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
42USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The Layer Cake [TBL,XML2000]
43USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The “Layer” Cake
XMLHTML
XHTML RDF
RDFS
DAML-O OIL
DAML+OIL
WSDLWSDL
NOTATION 3
NOTATION 3
XTMXTMXQUERYXQUERY
44USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
To Learn More About These Languages...
http://trellis.semanticweb.org/: more detailed tutorial slides
http://trellis.semanticweb.org/expect/web/semanticweb/flairs02.pdf
http://trellis.semanticweb.org/expect/web/semanticweb/comparison.html
45USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
The View from W3Chttp://www.w3.org/TR/
XML Schema Part 0: Primer 02 May 2001, David C. Fallside
XML Schema Part 1: Structures 02 May 2001, Henry S. Thompson, David Beech, Murray Maloney, N. Mendelsohn
XML Schema Part 2: Datatypes 02 May 2001, Paul V. Biron, Ashok Malhotra
Extensible Markup Language (XML) 1.0 (Second Edition) 6 October 2000, Tim Bray, Jean Paoli, C. M. Sperberg-McQueen, Eve Maler
Namespaces in XML 14 January 1999, Tim Bray, Dave Hollander, Andrew
Resource Description Framework (RDF) Model and Syntax Specification 22 February 1999, Ora Lassila, Ralph R. Swick
Resource Description Framework (RDF) Schemas 3 March 2000, Dan Brickley, R.V. Guha
RDF Model Theory 25 September 2001, Patrick Hayes XML Schema: Formal Description 25 September 2001, Allen Brown, Matthew Fuchs, Jonathan Robie, Philip Wadler
46USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
W3C Review Stages
1. A Working Draft represents work in progress and a commitment by W3C to pursue work in this area. A Working Draft does not imply consensus by a group or W3C. A Candidate Recommendation is work that has received significant review from its immediate technical community. It is an explicit call to those outside of the related Working Groups or the W3C itself for implementation and technical feedback.
2. A Proposed Recommendation is work that (1) represents consensus within the group that produced it and (2) has been proposed by the Director to the Advisory Committee for review.
3. A Recommendation is work that represents consensus within W3C and has the Director's stamp of approval. W3C considers that the ideas or technology specified by a Recommendation are appropriate for widespread deployment and promote W3C's mission.
47USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
III: THE BIG PICTURE REVISITED
48USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
W3C’s Semantic Web Principles
1. Everything identifiable is in the Semantic Web (URIs!)
2. Partial information Anyone can say anything about anything
3. Web of trust All statements on the Web occur in some context
4. Evolution Allow combining independent work done by different communities
5. Minimalist design Make the simple things simple, and the complex things possible Standardize no more than is necessary
49USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Hypertext: Then and Now
SOTA circa 1990: Dynatext’s electronic book A book had to be compiled (like a program) in order to be
displayed efficiently A central link database, to make sure there were no broken
links Text that was fixed and consistent (a whole book)
WWW: Links can be added and used at any time Distributed (must live with broken links!) Decentralized
50USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Knowledge Representation: Now and Tomorrow
“To webize KR in general is, in many ways, the same as to webize hypertext. Replace identifiers with URIs. Remove any requirement for global consistency. Put any significant effort into getting critical mass. Sit back.”
-- TBL
51USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
What’s Going On Out There: The Good, the Bad/Not-So-Good, and the Wacky
Web services (WSDL, DAML-S, …) Query and Rule languages Web of trust
52USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
What’s Going On Out There: The Good, the Bad/Not-So-Good, and the Wacky
Web services Query and Rules Web of trust
Will the masses create semantic annotations?
53USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
What’s Going On Out There: The Good, the Bad/Not-So-Good, and the Wacky
Web services Query and Rules Web of trust
Will the masses create semantic annotations?
Birds of a feather The Me Llamo link type The Wiki Wiki Web
54USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Ongoing Work in Our Group
EXPECT (k acquisition and problem solving) No longer developing KBs, but importing schemas
and data Electric Elves
Agents are more transparent and publish data & schemas, advertisements/assumptions
TRELLIS (try it out at trellis.semanticweb.org!) Users represent decisions and opinions -> Web of
Trust [Gil & Ratnakar, ISWC 02] IKRAFT
Users turn text in progressively more formal representations (KB) -> semi-formal annotations
55USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
TRELLIS: Developing the Web of Trust One Citizen at a Time
Capture decisions and opinions as the user finds, analyzes, and uses information annotate the reasons, judgment, and purpose that make
information meaningful keep track of contradictory, related, and rejected information annotate derivation of conclusions and formulation of hypotheses add structure and formalization incrementally semantic markup language
Derive an assessment of
info sources based on
individual opinions Try it out at
http://trellis.semanticweb.org
56USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
57USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
Notation 3# Test filter in N3# Use# cwm rules12.n3 -think -filter=filter12.n3# should conclude that granpa is ancestor of bill# @prefix log: <http://www.w3.org/2000/10/swap/log#> .@prefix daml: <http://www.daml.org/2001/03/daml+oil#> .@prefix : <#> .@prefix rules: <#> .
# SimplifiedDanC challenge - simplied version of rules13.n3
this log:forAll <#p> .
{ <#p> a daml:TransitiveProperty . } log:implies
{ { <#x> <#p> <#y>. <#y> <#p> <#z>. } log:implies { <#x> <#p> <#z>. }. this log:forAll <#x> , <#y> , <#z>.} .
<#ancestor> a daml:TransitiveProperty .<#granpa> <#ancestor> <#pa> .<#pa> <#ancestor> <#bill> .
58USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
(1 of 5)
59USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
(2 of 5)
60USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
(3 of 5)
61USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
(4 of 5)
62USC INFORMATION SCIENCES INSTITUTE Yolanda Gil
(5 of 5)