eb 1.0 came about with the invention of HTML, which described web pages. That was fine, but very quickly people wanted the ability to describe more than just web pages. They wanted to describe everything
, from documents to business entities to simply anything. That prompted the invention of XML, which allowed users to create their own tags to describe whatever they wanted. For example, to describe myself in XML I could write the following:
<placeOfResidence>New York</ placeOfResidence>
While this format provides the flexibility to describe anything, it is also prone to errors and miscommunication. For example, although I can send the above XML to anyone over the web, the recipient would be forced to use my tags for "occupation" and "placeOfResidence" (which I purposely made awkward to illustrate the potential problems with basic XML). Because no one would be able to guess the names of the tags I used, only I would be able to communicate their names to another party that wants to use the document.
Not only that but whoever wants to use the XML I wrote also has to write code specific to the naming conventions of my tags. Otherwise, their software won't be able to process my document. In short, only people who know what my tags are can use them. This limitation is just one example of howdespite being helpful in many waysXML greatly decreases the potential sharing of data over the web.
Enter Semantic Web, the solution to many of these limitations (see the sidebar "Introducing Semantic Web (aka Web 3.0)" for a brief history of the web from its beginnings through Web 3.0). Generally, Semantic Web is split into two main solution areas:
- Resource Description Framework (RDF)
- Natural Language Processing (NLP)
A discussion of NLP will come a little later. RDF is a language that represents information about resources (which can be anything) on the World Wide Web in a standard format. It is intended for machine processing and its preferred syntax is XML, so it retains all the benefits of XML but isn't hampered by having specific tags that one must know before being able to use it. Because people don't need to write code to process custom tags, RDF also can be shared immediately by any number of machines on the web without human interaction.
With human interaction out of the picture, information that already traveled fast online has the potential to be shared infinitely by machines.