RDF – Week 4

I’m back. A bit gloomy. I’ve been writing a bit on the Semantic Web and theres just so much to it. No its not that its hard its just too much “stuff” a document has to implement in order for the SW to take shape. I don’t see how a site admin will add a web ontology to their site, let alone spend a few minutes converting exiting document into rdf formats. A program should do the work for the user not the user do the work for the program. Maybe hide the rdf/ontology layer all together from the developer and from people in general and provided a service much like google that will search through these ontology’s. Well see.

Here is a rough draft of my “Semantic Web: Current Tools” RDF section. Again its a rough draft and has a lot of errors so bare with me, i’ll keep updating the document as I go.

Semantic Web: Current Status (Tools and Research)
Armando Padilla

Introduction:
To understand what tools are available and what research has been done in the field of the Semantic Web we have to reference Figure 2.1 and look at the different technologies that make up the Semantic Web.

By referencing Figure 2.1 it’s clear that the Semantic Web is not a simple language nor a simple application we can use one type of technology to get it started and working. Since the Semantic Web requires different technologies; such as RDF, OWL, XML+NS, to work together there should be a broad range of tools to use. Unfortunately, the primary technologies in use for the “Self Description Document” sections of Figure 2.1, the layers we will be focusing on in this section, are few.

What tools are available for each of the different layers the Semantic Web has? And, What is the current forefront research being made in the area of the Semantic Web? This section will cover not only these questions but also provide current examples for RDF and OWL, which are leading tools in creating the Semantic Web, along with, providing background on the most up-to-date research currently being conducted on the Semantic Web.

Semantic Web Language: Building the idea with Resource Description Framework and the Web Ontology Language

RDF: Why do we need it?
With vast amounts of data on the Internet today we typically use Google, Yahoo, or any of the many search engines to locate important information for us. A typical use of these companies’ service would go something like this. The user types in the phrase, “chair”, into the input field of the search engine and then watches as a display of hundreds, thousands, and possibly millions of results appear onto the screen. Here lies the problem, the keyword “chair” would not only display the most popular chairs, which a person can sit on, but also an organization’s chairs, the person that manages an organization.

The goal of RDF as a tool for the Semantic Web is to place published content under the appropriate context so such events do not occur. The first RDF draft was released in 1997 by Ora Lassila and Ralph Swick and later released the first recommended RDF specification in 1999 located here, http://www.w3.org/RDF/. Currently RDF is maintained by the RDF Issue Tracking document and updates can be located at the RDF Interest Groups web site, http://www.w3.org/RDF/Interest/.

RDF: Statements
RDF is based on the XML markup language and uses Namespaces. Using these technologies a person must create a set of statements, which contain three key items, a subject, predicate, and a value, {subject, property/predicate, value}.

A statement contains a unique identifier for the document or object the statement will describe, this is held in the ‘subject’ area of the statement and usually is a unique-id of an object or the full URI of a online document. The predicate in the statement contains property information such as ‘name’,’color’,’author’, etc, and the “value” section contains the value of the property given to the unique object. A simple RDF statement using a published online document could look like this, {http://www.armando.ws/rdf_example.html, author, Armando Padilla}

RDF: Syntax by Example
Along with using a set of statements to describe a document we use XML+NS to create the document. Using a simplified example of a DVD collection we can create a list of RDF/XML list to share a DVD collection with friends or the general public. We will need a base to start off with and we will also need a list of DVD’s to format into a RDF listing. By using a list of 2 DVD’s we can show the structure of a RDF list and validate it using an online RDF validation tool.

The initial step in creating an RDF document for this example is creating a list of properties as we would use when describing a DVD. A DVD has a title, director, a length of time, and our personal rating on scale of 1 though 10.

DVD_1 has a title of Gladiator.
DVD_1 has a director named XYZ
DVD_1 has a length of 90 minutes.
DVD_1 has a rating of 8
DVD_2 has a title of Lord of the Rings
DVD_2 has a director named XYZ
DVD_2 has a length of 65 minutes.
DVD_2 has rating of 5

Using the example described in Figure 2.2 we create the formatted statements shown in Figure 2.3.

{DVD_1, title, Gladiator}
{DVD_1, director, XYZ}
{DVD_1, length, 90m}
{DVD_1, rating, 8}
{DVD_2, title, Lord of the Rings}
{DVD_2, director, XYZ}
{DVD_2, length 90m}
{DVD_2, rating, 5}

Following this step, which is normally not required, we create our RDF document using XML+NS. Since we are using the RDF markup language we must use the namespace identifier of “rdf” for out XML tags and begin each new element with a “Description” RDF type,
. Using the attribute “about” for the Description tag we specify the unique identifier for document RDF will describe. In this example were using the DVD Id. Next we create our own namespace, “mydvd” and begin to describe our DVD set using the same property names as we used in the predicate RDF Triple Figure 2.3.Our final RDF document will look like the Figure 2.4.

RDF: Validation and Tools
The semantic web could be a collection of RDF document that are not valid or flaws syntax, for this reason there are open source validators and IDE’s that a developer can use.

The World Wide Web Consortium has created a RDF validator, which can be located at this location, http://www.w3.org/RDF/Validator/. The validator provides two methods that the user can point to their created RDF document. One method is via a text-area that the user can copy and paste their RDF document and another method is by specifying a full URL to the RDF document published on the web.

If the document validation passes the user has additional options on how they would like to have the data displayed. Two methods of display are either through a triple and/or a graph as seen both Figures 2.5 and 2.6

BrownSauce
Viewing a RDF document can also be made using other tools available on the web. One of the browsers in use at the moment is BrownSauce. BrownSauce can be downloaded at the current location, http://brownsauce.sourceforge.net/. BrownSauce was created by the HP Labs and released under the BSD style license.

IsaViz
Another tool for visualizing an RDF document comes from the same inventor of BrownSauce and allows users to visualize RDF documents as graphs. IsaViz is a standalone tool, which allows users to create RDF documents in a IDE tool setting. IsaViz is free for downloading at http://www.w3.org/2001/11/IsaViz/.

Jena
Jena is an open source semantic web framework for Java developers created by HP Labs and can be downloaded at http://jena.sourceforge.net/. Jena allows developers to utilize the RDF API, read RDF documents, create N3 and N-Triple formatted documents, it also contains an OWL API and contains a SPARQL engine. More information can be found on the web site. http://jena.sourceforge.net/