InfoQ

News

The Semantic Web and Ontological Technologies Continue to Expand

Posted by Steven Robbins on Apr 30, 2008 10:30 PM

Community
Architecture,
SOA
Topics
Semantic Web ,
Enterprise Architecture
Tags
Best Practices ,
Ontology ,
Enterprisey ,
XML Schema
Ontologies and Ontological management have become more popular as enterprise architecture has gained ground among organizations. As tool support has become more available and the concepts of semantics and ontologies are being understood, there are more players that have come to the table with contributions. The AKSW group recently released their Triplify product to provide "a building block for the 'semantification' of the web." The UMBEL backbone project has started up to provide a lightweight subject structure for the Web. Dan McCreary talked about some of the main pitfalls in developing and maintaining enterprise ontologies.

The Agile Knowledge and Semantic Web research group (AKSW) has recently released the newest version of their Triplify product. Triplify is a small plugin for Web applications, which reveals the semantic structures encoded in relational databases by making database content available as RDF, JSON or Linked Data. By using the plugin and ordering the columns in the application queries, Triplify can analyze the data returned by the applications queries and make them available in the previously mentioned formats. This makes it easier for small to medium web applications to participate in the semantic web without a very large effort to create and maintain large semantic definition efforts. This is the end goal of the Triplify approach - "exploiting structured relational representations behind Web applications for creating a critical mass of semantic representations on the Web."

The Upper Mapping and Bind Exchange Layer (UMBEL) project billed itself as "a lightweight ontology for relating Web data and datasets to one another via a standard set of subject concepts." UMBEL defines "subject concepts" as:
a distinct subset of the more broadly understood concept such as used in the SKOS RDFS controlled vocabulary or formal concept analysis or the very general concepts common to some upper ontologies. Subject concepts are a special kind of concept: ones that are concrete, subject-related and non-abstract. We further contrast these with named entities, which are the real things or instances in the world that are members of these subject concept classes.
The main thrust of the project is to help provide "meta-maps" of the relationships between the immense number of fine-grainied, local ontological and concept maps. Michael K. Bergman provided a look at what the web's subject backbone might look like as well as a slideshow describing the UMBEL online demos and the project's first 11 semantic web services.

Lastly, Dan McCreary discussed some of the things to watch out for in defining enterprise ontologies. When asked about some of the main stumbling blocks to getting an organization involved in defining their ontologies, Dan replied that the word "ontology" itself was a big hurdle:
It is too intimidating. It puts too many people off. They think they are paying for AI research. Sometime we just have to pick a more friendly name. Just call it a metadata registry and you my get better adoption. Many people that work with database developers just end up calling it a logical data model or and enterprise data dictionary. XML types like to call it an XML Schema type library. Whatever the audience...pick a term that makes them feel comfortable and then focus on the pain points of the organzation. I only tell about 25% of my customers I am building ontologies.
Once an organization gets started on defining and maintaining their ontologies, it needs to be managed and run across the enterprise. Dan said that it is not just a high-level effort but that it needs to extend all the way through the organization.
An upper ontology is pretty much useless by itself. They solve no real business problems by themselves. It is only when you get to the leaf level elements that you can start mapping to columns in databases. That is where the rubber meets the road.
Once adoption of ontologies has begun in an organization, McCreary's list of ten pitfalls should be heeded:
  1. Use tools made for designing ontologies
  2. Avoid duplication of data elements
  3. Do not confuse roles with objects within the ontology
  4. Separate processes for defining semantics from those defining constraints
  5. Test upper ontologies thoroughly
  6. Create unambiguous definitions for data elements
  7. Avoid mixing definitions of elements with the descriptions of them
  8. Create searchable structures that allow complex full-text searches
  9. Adopt a practice of versioning and traceability for the definitions
  10. Define the semantics for enterprise code/identifier objects as well.
McCreary also stressed the importance of having individuals or teams within the organization that own the ontologies and are responsible for semantic precision. For enterprises that are serious about the value of their ontologies, these individuals should play key leadership roles.

No comments

Watch Thread Reply

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.