Applying the Semantic Web – Two Camps
Various authors and practitioners have radically different view on how best to apply Semantic Web technologies. Some see its potential best applied to artificial intelligence, while others feel that it would be better applied within the context of its flexible data model. This lesson aims to clarify these two distinct points of view and to consider a few of the advantages of each perspective.
After completing this lesson, you will know:
- The two most popular perspectives on how best to apply Semantic Web technology.
- How Semantic Web technology might be applied in artificial intelligence scenarios.
- How the flexibility of Semantic Web technologies alone offer benefits to to certain applications without requiring AI.
Broadly speaking, most Semantic Web practitioners try to tackle two primary types of problems. These two approaches to applying Semantic Web technology are by no means mutually exclusive, but a more detailed understanding of the two perspectives will help elucidate the differing points of view espoused by various authors on the topic.
- The first approach to applying Semantic Web technologies is to use them for the purposes of Artificial Intelligence.
- The second approach is to use Semantic Web technologies for flexible, transparent data management.
Take One: Semantic Web as the Future of AI
Tim Berners-Lee popularized the term “Semantic Web” in the May 2001 issue of Scientific American. The article painted a picture of the future of the Internet, one in which machines are able to interpret all data so that machine agents could accomplish sophisticated tasks for us.
For example, let’s say that you wanted to have lunch with your colleague, John. Before now, you might go back and forth with John:
“Well, Tuesday at noon I’m busy, but I could do 12:30.”
“That might work. How about Cambridge Brewing Company?”
“I’m a vegetarian, so that doesn’t work for me.” (Etc. etc. …)
If Semantic Web technology were used in this transaction, John would have an “agent” that would have access to all kinds of information about him, including his calendar, any food preferences or allergies he might have, and restaurant ratings he’s given. Your own agent would have access to similar information about you. These two agents would communicate with one another and then automatically suggest something that makes sense for both of you. They could even make the reservation for you!
More practically, researchers are using Semantic Web technologies to enable machines to infer new facts from existing facts and data. That is, Semantic Web technologies enable computers not only to store and retrieve information, but also to come up with entirely new information on their own.
This production of new facts is called either inference (new facts are inferred from existing facts) or reasoning (the agent reasons over a dataset).
Note: You’ll see the terms inferencing engine and reasoning engine used interchangeably from one author to another, and they are in actuality one and the same category of services.
Where this kind of capability is most compelling is in very complicated research scenarios involving huge amounts of data at a scale impractical or impossible for humans truly to comprehend. Although some specific, targeted applications of this approach to Semantic Web technologies do exist, they have yet to factor into mainstream culture.
Take Two: Semantic Web as a Flexible, Interconnected Data Model
The other major approach to applying Semantic Web technologies focuses more on the flexibility of the data model.
For many applications, these key characteristics provide Semantic Web technologies with a significant advantage—in terms of time, cost, and maintainability—over traditional technologies such as relational databases. This is the point of view taken by many enterprises that don’t quite know what to make of AI but do require more flexibility for certain applications than their existing tools are able to provide.
The fundamental difference at play here is that the Semantic Web starts with the Open World Assumption (OWA). The OWA is the assumption that we don’t know all the facts and specifically states that just because we don’t know something doesn’t mean it’s not true.
In practice, this means that it must necessarily be easy for Semantic Web systems to incorporate new facts as needed, including new kinds of data not anticipated at the beginning.
This requirement is in a sharp contrast to those for a relational database or data warehouse, where the first step is necessarily a prescribed definition of what will go inside. Changing relatively basic elements in a relational database in order to incorporate new facts is often difficult and requires significant technical expertise.
For applications where it is impossible to be able to identify ahead of time all the kinds of data that you might need to store—such as knowledge management systems, systems supporting research, or systems with a large amount of unpredictable, unstructured data—Semantic Web technologies can be significantly less costly to implement and maintain over time.
Moreover, this flexibility means that new, unanticipated sources can often be integrated on the fly. There are many Semantic Web practitioners that focus on using SPARQL to query a data distributed across many sources, which is only made possible due to this inherent flexibility.
The flexibility inherent to the OWA does come at a cost, so at times, one technology stack or package of components and services might make more sense than another.
However, the situation is not simply either/or, since Semantic Web technologies and existing technologies are very much compatible; in fact, most Semantic Web applications begin with an existing relational database!
We will compare relational databases to Semantic Web technologies in another lesson, focusing on the strengths and weaknesses of each.
In blogs, in literature, and at conferences you are likely to see points of view from people tending to focus on one of these two perspectives or the other: AI vs. a flexible model. Depending on what exactly you’re trying to accomplish, one of these two perspectives may be more useful to you than the other, but both are valid. Some applications benefit greatly from the usage of reasoning, while others don’t require it and simply need greater flexibility than is offered by traditional data management technologies.