The Semantics Are Important

Stefan Plantikow asks a good question:

> But isnt it absurd or at least meaningless to believe we are talking about the same “uri-wise” thing iff we put “it” into completely different classes? What does such an identity establish at all?

I don’t think it’s meaningless at all. Think about how we talk about things in the real world.

Q: “Where are you going this weekend?”
A: :Seth :travelsTo [geo:lat “123″; geo:long “456″];

OK, so now we have a bnode for some location. That is unambiguous as far as I’m concerned, as there’s only one Point on Earth with that lat and long.

Now, here’s my point about the difference between identity and meaning. The identity is singular. The meaning is relative. Let’s think about all the different meanings we can associate to that identity.

[geo:lat “123″; geo:long “456″] a :Beach.

OR

[geo:lat “123″; geo:long “456″] a :CountyPark.

OR

[geo:lat “123″; geo:long “456″] a :Ocean.

All of the above would work in the real world. You can easily answer the question, “I’m going to the beach” or “I’m going to the park” or “I’m going to the ocean” and we know you mean the same thing. The real world is that flexible, so the semantic web must allow for this type of flexibility.

Now, this is where Semantics comes in. When you say “ocean”, you might mean “Something with sand, next to the ocean, where people hang out, where you can swim”. Again, the identifier for the class :Ocean is what is globally unique. But the definition of :Ocean is context specific.

Thinking about it, it happens that your definition of :Ocean (above) matches perfectly with my definition of :Beach (”Something with sand, next to the ocean, where people hang out, where you can swim”). And this is where the semantic web shines… when you say :Ocean and I say :Beach, we can reason we are talking about the same type of thing.

If we apply our contextual definitions (semantics) to the Thing in question (here it is [geo:lat “123″; geo:long “456″]) then we are at least talking about the same thing. This is the important part about the whole operation. No matter how we define that location on earth, it’s the same location between the both of us.

11 Responses to “The Semantics Are Important”

  1. Phil Dawes Says:

    Um - I’m not so sure about this. The semantics of bnodes are different to URIs.

    Your example:

    [geo:lat “123″; geo:long “456″] a :Beach.

    OR

    [geo:lat “123″; geo:long “456″] a :CountyPark.

    OR

    [geo:lat “123″; geo:long “456″] a :Ocean.

    works because you are employing identity by description - i.e. [geo:lat “123″; geo:long “456″] can be a beach, a countypark or an ocean, even if somebody states that they are disjoint classes. The same trick with a URI generates inconsistency - try substituting ‘OR’ for ‘AND’ and the bnodes for the same URI, and then add some owl:disjoint statements to seperate the classes.

  2. Dan Brickley Says:

    Don’t forget altitude. There are lots of points “on earth” that share lat/long (including some near the surface of the earth, some in the sea, some deep underground and some in the skies…).

  3. sethladd Says:

    Phil, I knew you’d pick up on that. :)
    I should have used some URI with absolutely no semantics in the URI string itself, such as <http://example.org/foo>. URIs are opaque anyway.

    What if I change the example to:

    <http://example.org/foo> a :Beach.

    or

    <http://example.org/foo> a :CountyPark.

    Does that change anything?

  4. sethladd Says:

    Also, why would I make :CountyPark and :Beach disjoint? That location, identified by <http://example.org/foo> can be both a :Beach and a :CountyPark at the same time. That’s actually one of my points.

  5. Phil Dawes Says:

    Agreed, but somebody else can make :CountyPark, :Ocean and :Beach disjoint. You say:

    the identifier for the class :Ocean is what is globally unique. But the definition of :Ocean is context specific.

    If somebody has a seperate definition of :Ocean and :Beach then they might easily make them disjoint.

    I suppose my point is that I don’t think the meaning can be seperated from identity in RDF. That’s one of the implicit rules - otherwise RDFS, OWL etc.. don’t work; they expect identity and ‘meaning’ to be 1:1.

    In the real world we do allow the meaning of our words and labels to be fuzzy, but then we aren’t trying to derive any of it using propositional logic.

  6. sethladd Says:

    Hi Phil,

    Sure, someone in their view can say that :CountyPark, :Ocean, and :Beach is disjoint. Then others can say they aren’t disjoint. It’s this kind of sloppiness that the semantic web toolkits must allow for, as on the web anyone can say anything.

    I still don’t buy that identity and meaning are 1:1. Quite the opposite, actually, and that’s why the semantic web is so powerful.

    I would say that identity and meaning are 1:N. That is, there are many meanings to one Resource. One Resource can have multiple meanings.

    Of course, one person might create a meaning for a Resource that is way out in left field (that is, completely different than what the majority of other people think). It’s up to localized ontologies to be able to identify the conflict in meanings, then. In other words, it’s OK that two Resources have two different meanings (semantics) to two different people. As long as the localized environment is able to detect the conflict.

    Maybe it’s better to say that there are global identifiers but local (context relative) ontologies (semantics).

  7. Bernard Vatant Says:

    Seth

    Global identifiers, local ontologies, yes, yes! Another way to put it is to consider ontologies as providing perspectives on the resources they describe, as Michel Biezunski suggests in his Extreme Markup 2005 paper. In an open and multidimensional world, no perspective provides a complete description of a resource, different perspectives (ontologies) can provide orthogonal and maybe inconsistent viewpoints (meanings). The point now is to know if perspectives should remain implicit, as they currently are, or if they should be explicited, and if yes, how to do that.

  8. sethladd Says:

    Hi Bernard, thanks for joining the party. What do you mean by “perspectives should remain implicit”? Implicit to what?

    From what I can see, ontologies are explicitly stated perspectives of descriptions. However, of course there is a lot of implicit relationships that a reasoner can produce from an ontology.

  9. sethladd Says:

    Found Michel Biezunski’s Talking About Talking About Topic Maps paper. This was referenced in a comment above.

  10. Bernard Vatant Says:

    Seth
    From what I can see, ontologies are explicitly stated perspectives of descriptions

    That’s right when descriptions are embedded in a single original ontology. But if a RDF tool grabs descriptions from multiple sources and mashes them in a single new file through import, merge … whatever, the original contexts/perspectives are lost. And there pop inconsistencies, because the new single perspective has blurred the viewpoints.
    In the current state of RDF, there is no way to keep track of the original perspectives in a merged RDF file, because perspective is not explicitly declared *in each “rdf:Description” element*. I have tried to solve that kind of problem in my “SPEK” vocabulary.

  11. sethladd Says:

    True, however most RDF tools handle quads. Quads are triples with a context URI, so you can at least track which URI asserted the triple. As you point out, though, the RDF spec doesn’t mention this at all. I wonder if all the work here done with the tools with role back into the specs? It’s obvious people need to track where the triple came from.

Leave a Reply