Resource Description Frameworks (RDF)

Resource Description Framework (RDF) is a methodology for representing both ontologies and metadata (data about data). The last edition, which focused on ontologies, showed us the need for finding a way to develop a framework for designing and representing ontologies. RDF answers that need. The "resource" in RDF refers to the idea that we are speaking about Internet resources. Thus, a resource could be a Web site, a page on a web site, music, pictures, and so on. Ultimately, this doesn't place any limits at all on RDF--RDF can be used to build an ontology to represent pretty much anything. However, it does indicate something about the underlying philosophy of RDF: it starts from the assumption that everything worth talking about is available in some form as a resource on the Internet. Thus, if RDF is to be used to represent concepts in the "real world", those concepts would be expected to have some counterpart in cyberspace-and more specifically on the Web-that RDF documents can work off of.

RDF itself is actually a very simple XML-based markup language for representing classes, properties, and property values. Its power comes from its flexibility-you can use RDF to define varying ontologies and then very easily port those ontologies across the Internet, since they are ultimately just text files. And because the ontologies describe resources that are themselves available on the Internet, the ontologies continue to be useful as they are shared across the Internet. In a sense, RDF serves as a wrapper around the very generic XML and serving to provide an interface to the actual business or other objects which are ultimately defined using the ontologies. The intent is that developers will use an RDF editor to define an RDF ontology which they will then make available on their website. Then, pretty much anyone who wishes to use this ontology will be able to get it and in turn use it to actually build knowledge bases for particular companies or organizations, or subgroups within a company. RDF is thus a building block for designing the permanent knowledge which is used to sustain a company on a long-term basis. Another advantage to RDF is that it is likely to be a fairly permanent technology, since it is (like most other Web language) text-based and text isn't going to go away any time soon. There will no doubt be additional wrappers and interfaces around RDF being designed all the time, but RDF itself will continue to be useful and understood. This gives it an enormous advantage over traditional means of representing business knowledge, where the knowledge is often embedded deep in legacy code and is virtually impossible to get out.

Of course, knowledge and data is already conveniently stored in databases, and databases offer many features not available in flat text files. Thus, an ideal situation would be for RDF to become compatible with the major databases so that the best of both worlds can be realized. At present, XML is compatible with databases such as Sybase and Oracle. Therefore, in a sense, RDF is as well, since RDF is based upon XML; however, it would be nicer if there were a more direct compatibility. This is supposed to be in the works.

As mentioned above, we would ordinarily not edit an RDF model directly but rather would use an RDF editor. Some examples of how this could be done include with Xpetal, Protege, and OilEd. Xpetal is a tool which converts from a Rational Rose UML representation of a model into RDF. This provides the additional advantage of providing further compatibility with another important technology. Protégé is an ontology editor which ultimately generates RDF models, and OilEd is used to edit within the DARPA Agent Markup Language and, again, ultimately produce models in XML.

You might hear about another approach, similar to RDF but sometimes described as a competing approach, called "XML schemas". Indeed, one can do very similar things with RDF models/schemas and XML schemas. Both can be used to impose a certain level of structure on free-form XML documents, and hence can serve as a steppingstone to ontology development. However, there is a fundamental difference in underlying philosophy between the two approaches: RDF is primarily semantic whereas XML schemas are primarily syntactic. Thus, XML schemas are really intended to operate at a lower level, whereas RDF provides the basis for building knowledge models and, ultimately, ontologies.

You may be wondering where all this fits into artificial intelligence, since we are talking primarily about general-purpose IT technologies. Remember that RDF is intended to be a language for modeling ontologies, and its being based upon XML make it an ideal tool for doing this. XML is very easily ported across the Internet, and any serious attempt at artificial intelligence development these days requires that we be able to port documents in such a manner, since if we can't, there is simply too much repetition of effort. Though in many respects RDF is based upon old ideas, it uses them in new ways, and that is what makes it an ideal building block for artificial intelligence applications. However, it must be said at the same time that RDF is not a mature technology, and significant further development of this technology is needed.

In the next edition, we will return to more basic AI with a discussion of Real Time Artificial Intelligence.


Home: Ramalila.NET



All copyrights are maintained by respective contributors and may not be reused without permission. Graphics and scripts may not be directly linked to. Site assets copyright © 2000 RamaLila.com and respective authors.
By using this site, you agree to relinquish all liabilities and claims financial or otherwise against RamaLila and its contributors. Visit this site at your own risk.