To know the social meaning of an RDF graph is to know what it says about the world. This is in contrast to its formal meaning, which is what it says about all possible worlds (See RDF Semantics sec. 1.3). Social meaning is by its nature less precise, but the real-world behavior of software systems in response to RDF graphs is still amenable to specification and standardization. This is all about ontological committment.
There is a gap in the Semantic Web family of specifications. RDF, OWL, and the traditional web protocols nearly combine to provide a scalable knowledge-sharing medium, but they fail to specify how one is supposed to know which ontologies apply to each RDF graph. Without knowing which ontologies apply, one has no connection between symbolic names (URIs) and objects in the domain of discourse. In a related issue, how is one to know which semantic extensions to RDF and author has committed to, to whatever degree the author has committed to the RDF itself?
The RDF community is deeply divided about the problem, including factions who:
- see no problem at all
- think we're not ready for standards work in this area
- think the problem cannot be solved
- think the problem is already solved by existing specifications
- think URI dereferencing can solve this problem
- think they have some other way to solve this problem.
Some times it seems like this might be addressed by a SocialMeaningGroup.
This gap allows certain detrimental behaviors to occur more easily and with no simple recourse. Some such behaviors are NamespaceSquatting, BadNameReuse, and NamespaceDistortion.
Moreover, expectations diverge about what RDF is capable of. On the one hand, RDF Simple Entailment gives us a very simple language which is useless in itself. On the other hand, we can imagine building on it by defining additional vocabulary terms (URIs) with meanings which extend RDF almost without limit. But how do we provide AnarchicScalability for such extensions? People think URIs will naturally do it, but how? Our best guess is FollowYourNose, but that's not very satisfying for some application. UseImpliesConsent is much more powerful, but makes many people uncomfortable.
Rephrased: What does a URI denote?
How do I know what each URI names? In particular, what should be the relationship between web content available at some URI and the meaning of RDF graphs using that URI?
The heart of this question is perhaps the same as the heart of the longstanding XML Namespaces issue of "What's at the namespace address?" The main answers are radically different:
- a) Application-Specific Semantics. There is no normative
relationship between what's served and the meaning of the URI. This is perhaps the more conservative, "this-already-works" view.
- a) The web-content is normative. When an RDF author chooses to use
some particular URI as a name for someting, that author MUST follow the restrictions on meaning given in the available content. This suggests a robust, decentralized approach, where anyone can define a term and control have it will be used, but when it comes down to the technical details, many people are not convinced this will work.
When the web-content is machine-understandable, normative associated web-content becomes an instance of PullTheDefinition.
How might the answers, and overall semantic web behavior, be different with different standards in place or after an education/outreach effort?
What kind of research or exploration might be helpful in understanding these questions?
Philosophical Foundations of the Basic Issues
The debate about the manner in which RDF graphs ought to be associated with social meaning mirrors an ancient and unresolved tension in epistemology and the philosophy of langage: skepticism. It's important to understand this connection in order to trying to solve in the technical realm what has never been resolved philosophically. I believe we can also learn something from the few thousand years of (Western) thought.
Philosophical skepticism is the worry that we don't actually exist, or that even if we do, we can't prove it. (Note that only Western Christian cultures seem to worry about this. The rest of the world seems ok to muddle through without logical proof, but that's another story.) I believe that those who worry about whether concepts represented on the Web (with RDF) actually have any social meaning are engaged in an analogous sort of technical skepticism.
Here's a thumbnail history of the skeptics debate:
Descartes worried that he might be dreaming his entire existence but persuaded himself otherwise by declaring cogito ergo sum and relying on the existence of God. Hume and Locke accepted that it might be true that the neither they nor the world really existed, but seemed prepared to go on living anyway. Finally, Wittgenstein came along and declared that proof of existence is not the source of meaning. Rather, he said, "the meaning of a word is its use in language."
Similarly, technical skeptics seems to worry that we don't have a foolproof way to associate graphs with meaning. I say we should follow the lesson of Wittgenstein, declare that the meaning of a graph is its use on the Web, and get on with it.
(section contributed by Daniel Weitzner, awaiting refactoring as needed.)
Why do these issues matter? Can we engineer systems that work properly despite concern over these issues? Perhaps.
Consider the ReadyForBookTwo scenario. ... Need to flesh out the issues raised there over here ...
A Related Issue: Responsibility
How seriously should I take an RDF Graph? When RDF graphs are transmitted, to what extent, in what situations, and in what ways can the sender be held responsible for what the graph says?
This includes legal and security issues.
There is perhaps a basic tension between people wanting reliable data and people not wanting to be held fully accountable for everything they might offer on the web. Fear of such accountability may stop people from saying anything, and the people wanting reliable data may get no data at all.
This is not quite the same as the Social Meaning question. This issue comes up when you know what an RDF graph says, and you want to know what you should do about it. Should you sign or transmit it as something you believe? Should you believe it because someone you trust believes it?
These issues around responsibility and non-repudiation help motivate work on social meaning. If a third party cannot determine with confidence what the original communicating parties thought was meant by an RDF graph, the third party cannot adjudicate a dispute related to the graph. Therefor, we want a social meaning mechanism which is suitable for third party inspection.
An general introduction, for the masses: XML.com: The Social Meaning of RDF [Mar. 05, 2003]
A thorough breakdown of the issues as seen by JeremyCarroll, based on draft text in the RDF Concepts: Social Meaning Discussion Agenda at SW Arch meeting
GrahamKlyne's tracking of discussion, for RDF Core: Social Meaning and RDF
RoyFielding's RFC 2396bis issue near here: 024-identity
TAG issue httpRange-14
These predate the discussion above and should probably be to be explained & refactored into it.
Are URIs in General like FOL constant terms, denoting like in the RDF MT?
refactor: EveryUriDenotesTheSameThingEverywhere, or GlobalNaming, or UniversalNames, or something.
Or is a URI more like a word in natural language, its meaning dependent in context? How do people and systems use URIs today? How do we need them to be used for the Semantic Web to work? Are the two usage styles incompatible?
Test Case 1:
<http://example.com/x> owl:differentFrom <http://example.com/x>.
If this is logically inconsistant (false in all interpretations)?
The current specs clear say yes.
Test Case 2:
<http://example.com/x> owl:differentFrom <http://example.com/y>.
<http://example.com/x> owl:same''''''As <http://example.com/y>.
Is it possible for both these documents to be true? It would be if the author of Document A delivered it with different ontological committments than the author of Document B. Is that to be allowed? Can it be prevented?
Is RDF Asserted When Published on the Web?
refactor: Partially in "A Related Issue"; might move to... WebContentIsAsserted
Al writes a web page saying, in RDF, that he agrees to sell signed copies of the SciAm article for $10, while supplies last. Ignoring issues of how the meaning of the URIs in that RDF were established, can Al be held to that offer to the same extent he could if the offer were made in English?
More generally: What makes an assertional context for RDF? That is: when is the information communicated by some RDF exactly the same as the propositional content of the RDF?
Does the owner of w3.org get to say what http://www.w3.org/ denotes?
refactor: Moving to: NamespaceDistortion, NamespaceSquatting
More generally: What social and technical mechanisms, if any, determine what things each URIRef may or may not legitimately be considered to denote?
(A tangent: who owns w3.org? The domain registrar says "World Wide Web Consortium", but is that really an entity which can own something?)
Can A Non-Hash HTTP URIs be used to denote a Person?
refactor: Moving to: WorkingHttpUrisDenoteServices
Can http://www.w3.org/Consortium/ denote the W3C, given its current behavior?
How about http://www.w3.org/2003/06/07/W3C? What if I set that up as a proper SlashURI, so it issues a "303 See Other" redirect to give you a web page without leading one to believe it is the web page?
Does Using a URI Assert Its Web-Content?
refactor: Moving to: UseImpliesConsent
Consistency test case:
@prefix bio: <http://www.w3.org/2000/10/swap/test/demo1/biology#>. _:foo a bio:Dog, bio:RedWolf.
Where the web content at http://www.w3.org/2000/10/swap/test/demo1/biology says:
@prefix bio: <http://www.w3.org/2000/10/swap/test/demo1/biology#>. @prefix owl: <http://www.w3.org/2002/07/owl#>. bio:Dog owl:sameClassAs bio:CanisFamiliaris. bio:RedWolf owl:sameClassAs bio:CanisRufus. bio:CanisFamiliaris owl:disjointWith bio:CanisRufus.
XML.com: Language Instincts [Sep. 17, 2003]