Semantic Web and RDF Ontologies Mehmet Aktas Marlon
Semantic Web and RDF Ontologies Mehmet Aktas Marlon Pierce Indiana University
Semantic Web Overview n n “The Semantic Web is a major research initiative of the World Wide Web Consortium (W 3 C) to create a metadata-rich Web of resources that can describe themselves not only by how they should be displayed (HTML) or syntactically (XML), but also by the meaning of the metadata. ” From W 3 C Semantic Web Activity Page “The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation. ” Tim Berners-Lee, James Hendler, Ora Lassila, The Semantic Web, Scientific American, May 2001
Semantic Web Vision n Well known Scientific American article by Tim Berners-Lee, James Hendler, and Ora Lassila • http: //www. sciam. com/print_version. cf m? article. ID=00048144 -10 D 2 -1 C 7084 A 9809 EC 588 EF 21 n Example: making a doctor’s appointment Dr. Marlon Pierce
Motivations Difficulties to find, present, access, or maintain available electronic information on the web n Need for a data representation to enable software products (agents) to provide intelligent access to heterogeneous and distributed information. n
The Semantic Stack and Ontology Languages B A The Semantic Language Layer for the Web From “The Semantic Web” technical report by Pierce A = Ontology languages based on XML syntax B = Declarative ontology languages build on top of RDF and RDF Schema
Resource Description Framework (RDF) - I n n Resource Description Framework (RDF) is a framework for describing and interchanging metadata (data describing the web resources). RDF provides machine understandable semantics for metadata. This leads, n n n better precision in resource discovery than full text search, assisting applications as schemas evolve, interoperability of metadata.
Resource Description Framework (RDF)- II n RDF has following important concepts • Resource : The resources being described by RDF are anything that can be named via a URI. • Property : RDF entities are built up out of properties and their associated values. A property is also a resource that has a name, for instance Author or Title. • Statement : A statement consists of the combination of a Resource, a Property, and an associated value. Example: Alice is the creator of the resource http: //www. cs. indiana. edu/~Alice.
The Dublin Core Definition Standard RDF is dependent on metadata conventions for definitions. n The Dublin Core is an example definition standard which defines a simple metadata elements for describing Web authoring. n n It is named after 1995 Dublin (Ohio) Metadata Workshop. n Following list is the partial tag element list for Dublin Core standard. • • Creator: the primary author of the content Date: date of creation or other important life cycle events Title: the name of the resource Subject: the resource topic Description: an account of the content Type: the genre of the content Language: the human language of the content.
Example Alice is the creator of the resource http: //www. cs. indiana. edu/~Alice. Property Resource Property Value creator = http: //purl. org/dc/elements/1. 1/creator http: //www. cs. indiana. edu/~Alice • Property “creator” refers to a specific definition. (in this example by Dublin Core Definition Standard). So, there is a structured URI for this property. This URI makes this property unique and globally known. • By providing structured URI, we also specified the property value Alice as following. “http: //www. cs. indiana. edu/People/auto/b/Alice”
Example Why bother to use RDF instead of XML? Alice is the creator of the resource http: //www. cs. indiana. edu/~Alice. <rdf: RDF xmlns: rdf=”http: //www. w 3 c. org/1999/02/22 -rdf-syntax-ns##” xmlns: dc=”http: //purl. org/dc/elements/1. 1” xmlns: cgl=”http: //cgl. indiana. edu/people”> <rdf: Description about=” http: //www. cs. indiana. edu/~Alice”> <dc: creator> <cgl: staff> Alice </cgl: staff> </dc: creator> </rdf: RDF> • Information in the graph can be modeled in diff. XML organizations. Human readers would infer the same structure, however, general purpose applications would not. • Given RDF model enables any general purpose application to infer the same structure.
RDF Schema (RDFS ) RDF Schema is an extension of Resource Description Framework. RDF Schema provides a higher level of abstraction than RDF. n n • • • n n It resembles objected-oriented programming specific classes of resources , specific properties, and the relationships between these properties and other resources can be described. RDFS allows specific resources to be described as instances of more general classes. Also, RDFS provides important semantic capabilities that are used by enhanced semantic languages like DAML, OIL and OWL.
Resource Description Framework (RDF) n n RDF is the simplest of the semantic languages. Basic Idea #1: Triples • RDF is based on a subject-verb-object statement structure. • RDF subjects are called classes • Verbs are called properties. n Basic Idea #2: Everything is a resource that is named with a URI • • RDF nouns, verbs, and objects are all labeled with URIs Recall that a URI is just a name for a resource. It may be a URL, but not necessarily. A URI can name anything that can be described n Web pages, creators of web pages, organizations that the creator works for, …. Dr. Marlon Pierce
Scientific Metadata Define metadata and describe its use in physical and computer science. Dr. Marlon Pierce
What is Metadata? n n Common definition: data about data “Traditional” Examples • Prescriptions of database structure and contents. • File names and permissions in a file system. • HDF 5 metadata: describes data characteristics such as array sizes, data formats, etc. n n Metadata may be queried to learn the characteristics of the data it describes. Traditional metadata systems are functionally tightly coupled to the data they describe. • Prescriptive, needed to interact directly with data. Dr. Marlon Pierce
Metadata and the Web n Traditional metadata concepts must be extended as systems become more distributed, information becomes broader • Tight functional integration not as important • Metadata used for information, becomes descriptive. • Metadata may need to describe resources, not just data. n Everything is a resource • People, computers, software, conference presentations, conferences, activities, projects. n We’ll next look at several examples that use metadata, featuring • Dublin Core: digital libraries • CMCS: chemistry Dr. Marlon Pierce
Collaboratory for Multiscale Chemical Science (CMCS) n Sci. DAC project involving several DOE labs • See http: //cmcs. ca. sandia. gov/index. php. n Project scope is to build Web infrastructure (portals, services, distributed data) to enable multiscale coupling of chemical applications Dr. Marlon Pierce
CMCS Is Data Driven Grid n n Core of the CMCS project is to exchange chemical data and information between different scales in a well defined, consistent, validated manner. Journal publication of chemical data is too slow. Need to support distributed online chemical data repositories. Need an application layer between the user and the data. • Simplify access through portals and intelligent search tools. • Control read/write access to data Dr. Marlon Pierce
CMCS Data Problems n Users need to intelligently search repositories for data. • Characterize it with metadata n Many data values are derived from long calculation chains. • Bad data can propagate, corrupt many dependent values. n n Experimental values are also sometimes questionable. Always the problem of incorrect data entry, errata. Dr. Marlon Pierce
Solution: Annotation Metadata and Data Pedigree n CMCS provides subject area metadata tags to identify data • Species name, Chemical Abstracts Service number, formula, common name, vibrational frequency, molecular geometry, absolute energy, entropy, specific heat, heat capacity, free energy differences, etc. n Data Pedigree also must be recorded. • Where was it published/described? • Who measured or calculated the values? n Intellectual property • How were the values obtained? • What other values does it depend upon? n Also provides community annotation capabilities • Is this value suspicious? Why? n Monte Carlo and other techniques exist to automate this. • Has the data been officially blessed? By whom? n Curation Dr. Marlon Pierce
What Does This Have to Do with Scientific Computing? n RDF resources aren’t just web pages • Can be computer codes, simulation and experimental data, hardware, research groups, algorithms, …. n Recall from the CMCS chemistry example that they needed to describe the provenance, annotation, and curation of chemistry data. • Compound X’s properties were calculated by Dr. Y. n n CMCS maps all of their metadata to the Dublin Core. The Dublin Core is encoded quite nicely as RDF. Dr. Marlon Pierce
Resource Description Framework Overview of RDF basic ideas and XML encoding. Dr. Marlon Pierce
Structure of the Document n n n RDF XML probably a bit hard to read if you are not familiar with XML namespaces. Container structure is illustrated on the right. Skeleton is <RDF> <Description> <Creator> <Title> <RDF> <Description about=“”> <creator/> <title/> </Description> </RDF> Dr. Marlon Pierce
What is the Advantage? n So far, properties are just conventional URI names. • All semantic web properties are conventional assertions about relationships between resources. • RDFS and DAML will offer more precise property capabilities. n But there is a powerful feature we are about to explore… • Properties provide a powerful way of linking different RDF resources n n “Nuggets” of information. For example, a publication is a resource that can be described by RDF • Author, publication date, URL are all metadata property values. • But publications have references that are just other publications • DC’s “has. Reference” can be used to point from one publication to another. n Publication also have authors • An author is more than a name • Also an RDF resource with collections of properties n Name, email, telephone number, Dr. Marlon Pierce
v. Card: Representing People with RDF Properties n The Dublin Core tags are best used to represent metadata about “published content” • Documents, published data n v. Cards are an IETF standard for representing people • Typical properties include name, email, organization membership, mailing address, title, etc. • See http: //www. ietf. org/rfc 2426. txt n Like the DC, v. Cards are independent of (and predate) RDF but are map naturally into RDF. • Each of these maps naturally to an RDF property • See http: //www. w 3. org/TR/2001/NOTE-vcard-rdf 20010222/ Dr. Marlon Pierce
Example: A v. Card in RDF/XML <rdf: RDF xmlns: rdf='http: //www. w 3. org/1999/02/22 -rdf-syntax-ns#' xmlns: vcard='http: //www. w 3. org/2001/vcard-rdf/3. 0#'> <rdf: Description rdf: about='http: //cgl. indiana. edu/people/GCF' vcard: EMAIL='gcf@indiana. edu'> <vcard: FN>Geoffrey Fox</vcard: FN> <vcard: N vcard: Given='Geoffrey' vcard: Family='Fox'/> </rdf: Description> </rdf: RDF> Dr. Marlon Pierce
Linking v. Card and Dublin Core Resources n n The real power of RDF is that you can link two independently specified resources through the use of properties. We do this using URIs as universal pointers • Identify specific resources (nouns) and specifications for properties (verbs) • The URIs may optionally be URLs that can be used to fetch the information. n Linking these resource nuggets allows us to pose queries like • “What is the email address of the creator of this entry in the chemical database? ” • “What other entries reference directly or indirectly on this data entry? ” n Linkages can be made at any time • Don’t have to be designed into the system Dr. Marlon Pierce
RDF Schema n RDF Schema is a rules system for building RDF languages. • RDF and RDFS are defined in terms of RDFS • DAML+OIL is defined by RDFS. n Take the Dublin Core RDF encoding as an example: • Can we formalize this process, defining a consistent set of rules? • Can we place restrictions and use inheritance to define resources? n What really is the value of “creator”? Can I derive it from another class, like “person”? • Can we provide restrictions and rules for properties? n How can I express the fact that “title” should only appear once? • Current DC encoding in fact is defined by RDFS. Dr. Marlon Pierce
Some RDFS Classes RDFS: Resource The RDFS root element. All other tags derive from Resource RDFS: Class The Class class. Literals and Datatypes are example classes. RDFS: Literal The class for holding Strings and integers. Literals are dead ends in RDF graphs. RDFS: Datatype A type of data, a member of the Literal class. RDFS: XMLLiteral A datatype for holding XML data. RDFS: Property This is the base class for all properties (that is, verbs). Dr. Marlon Pierce
RDFS Class Org Chart Resource Class Literal Property Data. Type XMLLiteral Instance Of: Subclass Of: Dr. Marlon Pierce
Some RDFS Properties sub. Class. Of Indicates the subject is a subclass of the object in a statement. sub. Property. Of The subject is a sub. Property of the property (masquerading as an object). Comment, Label Simple properties that take string literals as values Range Restricts the values of a property to be members of an indicated class or one of its subclasses. is. Defined. By Points to the human readaable definition of a class, usually a URL. Dr. Marlon Pierce
Sample RDFS: Defining <Property> <rdfs: Class rdf: about="http: //. . . /some/uri"> <rdfs: is. Defined. By rdf: resource="http: //. . . /some/uri"/> <rdfs: label>Property</rdfs: label> <rdfs: comment>The class of RDF properties. </rdfs: comment> <rdfs: sub. Class. Of rdf: resource="http: //. . . /#Resource”> </rdfs: Class> n n n This is the definition of <property>, taken from the RDF schema. The “about” attribute labels names this nugget. <property> has several properties • <label>, <comment> are self explanatory. • <sub. Class. Of> means <property> is a subclass of <resource> • <is. Defined. By> points to the human-readable documentation. Dr. Marlon Pierce
What’s an Ontology? n n “Ontology” is an often used term in the field of Knowledge Representation, Information Modeling, etc. English definitions tend to be vague to nonspecialists • “A formal, explicit specification of a shared conceptionalization” n Clearer definition: an ontology is a taxonomy combined with inference rules • T. Berners-Lee, J. Hendler, O. Lassila n But really, if you sit down to describe a subject in terms of its classes and their relationships using RDFS or DAML, you are creating an Ontology. • See the HPCMP Ontology example in the report. Dr. Marlon Pierce
Philosophy’s Fine, but Can I Program It? n n Yes. The HP Lab’s Jena package provide Java classes for creating programs to RDF/RDFS, DAML, and now OWL. Several tools built on top of Jena • Isa. Viz, Protégé are two nice authoring tools. n Also tools for Perl, Python, C, Tcl/TK • See the W 3 C RDF web site. Dr. Marlon Pierce
RDF Ontologies for Scientific Data n We are developing ontologies for science data. Examples domains: • Earthquake modeling codes • Earth sciences data n Technologies • RDF/RDFS • Ontology Editors (Isa. Viz, Onto. Edit, Protégé, etc. . ) • Jena toolkit from HP. n n n Reasoning on the semantic metadata Ontology aided querial services Software Agents for front-end applications • Case Base Reasoning (CBR)
EOS Concepts
Jena Output n n n Give me the list of resources measuring the Temperature. (Query 1) [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<Terra>] [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<MISR>] There are total 3 resources. Give me the list of parameters measured by ASTER. (Query 2) [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] [OZONE, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] There are total 2 resources. Give me the list of triples where the Temperature is measured or ASTER is the Sensor. (Union) [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] [OZONE, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<Terra>] [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<MISR>] There are total 4 triples. Give me the list of triples where the Temperature is measured and ASTER is the Sensor. (Intersection) [Temperature, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>] Give me the list of triples where the Query 2 results are different than Query 1 results. (Difference) [OZONE, http: //protege. stanford. edu/kb#is. Measured. By, Resource<ASTER>]
- Slides: 38