 | Level: Intermediate Nicholas Chase (ibmquestions@nicholaschase.com), Freelance writer, Backstop Media
31 Oct 2006 Updated 08 Mar 2007 This is the final tutorial in a series that shows you how to create a mashup application. At this point you have a working application and the framework in place so that the system can use semantic reasoning to understand the services at its disposal. In this tutorial, you will give the user control to choose a type of service, the data to pull from the Web service, and the presentation of that data.
In this tutorial
The purpose of this tutorial series is to create a mashup application so smart that users can literally add and remove services at will, and the system will know what to do with them. The series progresses as follows:
Part 1 introduced the concept of mashups, showing how they work and building a simple version of one. Serious performance problems involved in making potentially dozens of Web calls were also discovered.
Part 2 solved some of that problem by using the new pureXML™ capabilities of IBM® DB2® to build an XML cache, which saves the the results of previous requests and also enables you to retrieve specific information. Ultimately, you will need to use ontologies, or vocabularies that define concepts and their relationships, so in Part 3 that process began as you learned about RDF and RDFS, two key ingredients in the Web Ontology Language (OWL), which is discussed in Part 4. In Part 5, you will take the ontologies created in Part 4 and use them to enable users to change out information sources. Now, in this tutorial, you have a working application and the framework in place so that the system can use semantic reasoning to understand the services at its disposal. In this part, you give the user control, and enable him or her to map new services into the ontology and to pick and choose the data that is used for a custom mashup.
Objectives - Invoke a reasoner on semantic data
- Programmatically determine subclasses of a class
- Programmatically determine the available properties of a class
- Programmatically determine specific property values
- Build an application that pulls information based on semantics rather than XPath expressions
Prerequisites
This tutorial is for developers who want to learn more about using semantic techniques and applications. Specifically, it teaches you how to use semantic Web techniques to pull data from an arbitrary Web service on-the-fly and display it in the form of a user's choosing.
This tutorial assumes that you are familiar with Java programming. You should also be familiar with the concepts of XML and Resource Description Framework (RDF) in general, and Web Ontology Language (OWL) in particular. If you need a refresher on these three topics, check out Parts 3 and 4 of this series.
System requirements
You will need JavaScript enabled in your browser. To follow along with the code in this tutorial, you will need to install and test the following software:
-
IBM® DB2® 9 (formerly known as "Viper"): This relational database also includes significant XML capabilities, which you'll need for this tutorial. You can download a trial version of DB2 9: DB2 Enterprise 9 or DB2 Express-C 9, a no-charge version of DB2 Express 9 data server.
-
Apache Tomcat or other servlet engine: This tutorial assumes that you will build Web applications using servlets, so you'll need a servlet engine such as Apache Tomcat. If you choose to build the application using another environment, just make sure you have the appropriate software on hand. Download apache-tomcat-5.5.17.zip and install into a directory with no spaces in the directory name.
- Java: Apache Tomcat 5.5, with which this tutorial is built, requires Java 1.5 or higher. Download the J2SE SDK.
- To make things easier, you can use an IDE such as Eclipse or IBM Rational™ Web Developer for your development. You can download Eclipse at Eclipse.org, download a trial version of Rational Web Developer, or use your favorite development environment. You won't be doing anything fancy as far as compilation and deployment are concerned.
Duration
2 hours
Formats html, pdf
|  | |  |