Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Why Migrate to the Semantic Web? : Page 2

Why should an existing web application, such as CDMS, which currently stores its data in a relational database and presents this information as HTML and PDF documents, migrate to the semantic web?

Domain Modeling
Semantic web domain modeling lets you reuse globally accepted domain models such as FOAF and extend them with application-specific modeling. In Figure 2 a new class—BuildingProject—is created by subclassing foaf:Project and three new properties added.

Clarifying Concepts
Concepts defined in Linked Data datasets such as Dbpedia can be linked to concepts used in CDMS (using constructs such as <rdfs:seeAlso rdf:resource="http://dbpedia.org/resource/Category:Building"/>) to provide additional context, making it easier for different audiences (different languages, different countries, different skills, different trades) to understand. As shown in Figure 3 the Dbpedia concept of Building provides additional context for the CDMS definition of BuildingProject.

Figure 2. Domain Modeling: BuildingProject is created by subclassing foaf:Project.
Figure 3. Linked Data: Linked data supports domain concepts.

Augmenting Location Data
Locations, landmarks, and other well-known buildings already described in Linked Data datasets can also be used to augment location information about a building project. In Figure 4 the foaf:based_near property is used to indicate that Breaker Bay is near Wellington. Dereferencing the Wellington link provides information about Wellington along with links to additional information from the Dbpedia dataset.
Figure 4. Locations Based Services: Linked data is good for location based services.

Project Collaboration
The publication of project information (in particular project status information) as Linked Data makes it available to a number of different parties to include in their own systems.

Inferences and Reasoning
The inference capabilities of OWL may assist with handling the layers of government standards, laws, regulations plus industry and manufacturer standards. This integrates with location based services. Initial steps in this direction are proposed in this blog entry.

Using Jena
The example RDF model was created using TopBraid Composer, a commercial ontology editor. This RDF model can be used to generate the beginnings of a semantic web application, in this case using Jena.

Jena already contains the static constants for FOAF. The schemagen tool was used to generate the Building.java class, which contains static constants for the new "Building Project" terms defined in http://3kbo.com/examples/building.rdf.

The downloadable maven pom.xml file contains the repository and dependencies needed to build a Jena based Java application.

With the basic domain model defined, you can create a simple application App.java with a helper class Architects to illustrate creating a new building project.

In the main method from App.java you nominate the architect and builder and create a new property to link to the legislation the approved building complies with (see Listing 1).

The Architects helper method Architects.findArchitect uses a SPARQL query to find by name an architect in the Architects group.

The method Architects.getRecommendedBuilder also uses a SPARQL query to navigate through the list of builders the nominated architect knows. (In this simple example, use the last builder in the list).

This article describes only a few of the benefits and features associated with using semantic web technologies over HTML applications. The next article in this series will delve into the requirements—and how to select—a semantic web framework.

Richard Hancock is a Software Developer with 20 software years experience, primarily in Java, XML, and Web Service technologies. His current interest is in developing Semantic Web applications.
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.