- From: Karsten-A. Otto <ottoka@cs.tu-berlin.de>
- Date: Mon, 3 Jun 2002 11:01:23 +0200 (MET DST)
- To: www-rdf-comments@w3.org
Hello, I do not claim to fully understand this recent thread, but I thought you may like to see the (possibly naive) way a humble user of RDF sees this technology. Expect the use of wooly words and lack of formalism. In my experience, there are broadly two types of RDF applications: Those that "understand" a set of vocabularies, and those that do not. Note that both need to agree on the basic structure of RDF graphs. An application of the first type takes a graph and looks for uses of vocabularies known to it. Its further actions depend on the information found. Thats what I mean by "understand" above, I think it has been called "intrinsic knowledge" somewhere. More precisely, there is some program code that defines the applications behavior when encountering certain usage patterns of some vocabulary in the graph. This behavior must be "compliant" the the specified "meaning" of the used vocabulary. For other vocabularies, there may be no code to handle them. Accordingly, those parts are not "understood" by the application. The best you can expect is that the application leaves these parts unchanged. Maybe another application may make use of it. This also means that two applications can only work together if they understand the same vocabularies, or at least a common set of them. Nevertheless, all applications can work on the same graphs, which is the "partial understanding" feature of RDF. An application of the second type has no such programming to "understand" vocabularies. Instead, it relies on the use of URIs: If two things have the same URI, they mean the same thing/concept, whatever that may be. So the application can find patterns, nodes with the same properties in multiple graphs, and so on. Search engines, aggregation tools, and similar, are applications of this type. Such an application may further make use of RDF extension vocabularies, like RDFS or DAML. It needs to contain program code to "understand" the extension mechanisms. This allows it to better find "similar" patterns, detect "same concept" (different versions of vocabularies), and validate "correctness" according to some specification (cardinality and other constraints). Applications that can use such extensions clearly have more powerful capabilities than application that have to work with basic RDF alone. But if they do not "understand" a certain extension, they cannot use it. You may call an application "compliant" to a set of such extensions, like "This application is RDFS and DAML compliant". Thats it. If I got it terribly wrong, please point me to the errors in my way. Bracing myself for the flames to come, Karsten
Received on Monday, 3 June 2002 05:03:44 UTC