Part of the evolution of the Web 3.0 is a push toward making the experience on any given website similar to perusing a large database. In order to extract the data we’re looking for, we must first understand how entities and instances are stored on that website, and how those entities relate to each other. This representation of knowledge about the entities within that domain is called an ontology. Once we have the ontology defined for a data-driven application, we can mediate the data interchange between it and any other application.
For example, when we use the word “Boston” in a sentence, it could refer to many items – the City, the Rock Band, the Navy submarine, the University, and more. Humans can typically tell what the speaker is referring to by the context of the conversation. But how can a computer application tell the difference without getting confused? A sample ontology could define cities, musical groups, and other classes of entities; we could then create instances of each and define relationships between them. We could say that “Boston (Rock Band)” is a musical group that originated out of “Boston (Massachusetts),” which is a large city.
The Semantic Web provides a common framework that allows data to be shared and reused across application boundaries. Public data stores such as Wikipedia and FreeBase share vast amounts of data with the public; each has an ontology that is available for developers to understand their respective data structures . Once the ontology for an application is thoroughly understood, we can navigate the relationships between real-world entities and access the information we want more quickly.
With the Semantic Web, it becomes possible to:
- Define objects as entities in the world
- Link and reconcile properties and relationships between these objects
- Customize definitions of objects to form ontologies
- Make the information on these objects and relationships available to other applications