PageAccueil Plan du Site Modifications Récentes ModificationsRécentesDeProximité Comment Faire 2012-05-21 fr | 2012-05-20 fr |

Matching Pages:

RSS

CanTheSemanticWebWork

This page is an informal discussion of issues surrounding the Semantic Web and, trying to ignore the hype, its viability on the Web (as opposed to whatever potential uses it might provide DARPA, its largest funding agency).

[…]

Murray, I found only one argument that wasn't already answered in Themes and Metaphors in the Semantic Web discussion.

That one argument is that "People will lie." The response is: Well, semantic web agents will be fooled. (So what?) So, we'll implement strategies for identifying blatantly poor sources of information. Our systems will be fuzzy.

Language is fuzzy. Semantic web language is also fuzzy.

(No big deal.)

I'm wondering: Perhaps you and I should talk about this on a dedicated SemanticWeb page, or SemanticWebFeasability?, or something like that. – LionKimbro

Lion, actually, no. Language is fuzzy, but the Semantic Web language is not. It is based in what is called Description Logics (or DL for short), which is monotonic logic, i.e., you can't alter an existing ontology by altering something in the ontology that would make existing statements wrong. It's an exceedingly rigid logic, as is all logic (even fuzzy logic is probably a lot more rigid than you might think). The problem is exactly that the W3C is approaching ontology as if the world really can use formal logical systems. There are very few applications of formal logic, and they're all in places where there is a fixed and pre-agreed vocabulary and meaning. The level of complexity of a logic that can accurately model context, time, space, situations, unknowns, lies and distortions, alternate realities (like those between the pro-life and pro-choice camps), etc. is exceedingly complex, like life. Something like DL is incapable of handling context (for example), so it couldn't express alternative viewpoints. It doesn't include mereological relations (like "part of") so it can't (without being extended to include mereology) model how the parts of a car fit together, the handle of a mug, the tail of a dog. These are actually not very simple things to model, despite how easily we as humans do it. The more I know about knowledge representation, the more I realize how our minds are pretty amazing things.

Regarding issues like lying, this is certainly not the only instance of a problem. Cory Doctorow wrote a nice piece on this: http://www.well.com/~doctorow/metacrap.htm which I think tries to inject a note of realism into all the hype. One must remember that back in the 1970s the AI people were telling the world we'd have intelligent machines in a few years. We don't, nor would a knowledgeable scientist today project that we will anytime soon. The world is more complex than that.

I do think it will be a big deal if anyone ever relies on information based on the Semantic Web if that information is not reliable, or if incorrect inferences are made based on bad information. There was that medical doctor arrested in New York because his name was the same as somebody who knew one of the 911 hijackers. How bad does bad intelligence have to be before we stop relying on it? We don't want systems that are at their heart badly suited for their intended application. I certainly am not alone in thinking this is the case with the SW, that what is being promised is far grander than what can possibly be delivered. The science fiction of the original Scientific American article is just that: science fiction. Not even particularly unique or well-considered fiction. But it certainly has generated the research dollars for the W3C, so it at least has shown it was suited for its intended application. – MurrayAltheim

Nah; I don't buy it. This is anti-hype hype.

Suppose I write in my FOAF file that my name is "Lion Kimbro." I say that Alex is my friend, by linking to his FOAF file.

Now he links back to my file, saying that I'm his friend, also by linking to my FOAF file.

But he includes a piece of information- he says my name is "Lion," say.

Now I write a bot that goes around picking up information.

Now, am I going to write it to do this?

:"Oh no! His name is Lion… But, his name is Lion Kimbro… But… His… His name is Lion…. But… But…." (Circuitry explodes.)

I mean, by the way you've written about the Semantic Web, that's how it must go.

I think that's goofy.

There's a bunch of ways to write your robot:

  1. The robot chooses the name in the self-describing FOAF file, and ignores what everyone else says.
  2. The robot picks up both names.
  3. The robot picks up both names, but considers the name in the self-describing FOAF file primary.
  4. The robot chooses the name in the self-describing FOAF file, and calls anyone who says otherwise "slightly less than reliable."
  5. The robot looks at the dates of the two FOAF files, and picks the one that's more recent.
  6. The robot notes that "Lion" fits in "Lion Kimbro," and decides to strongly trust that both names are valid, perhaps even noting that "Lion" may be what friends call this person.

I mean, there's a zillion ways to write the robot so that it's head doesn't explode.

People can and will write this stuff.

Which takes us to the next point. Fear.

I think you know that people can and will write this stuff.

You also know, like I know, like I think everyone knows, that it's going to break a lot. That there are going to be horrendous mistakes, as we go from giving more and more decision making and intel gathering power to machines.

Now, I happen to believe in our ability to correct the machines after we've found mistakes in them.

I'll bet that one of the things they did after that doctor was arrested just for having the same name, was say, "If the only piece of evidence is the same name, note that prominantly."

I mean, we already do something like this, for humans, in running medical records: There are these standardized stickers that you buy, and every single identical sticker says, "Duplicate Name." That's so that if you get a chart that has a duplicate name, you make sure to double-check the birthdates.

I've heard the Sem-Web folk talking about making it so that the robots explain their reasoning. It seems simple enough to me. The robot just keeps track of where it learned what.

  1. Bayle Shanks said yesterday that Lion has a copy of the Dark Side of the Moon.
  2. Bayle Shanks has a friend named Lion Kimbro.
  3. Lion Kimbro has a friend named Alex Schroeder.
  4. Alex Schroeder says he has a friend named Lion, identified by Lion Kimbro's Foaf.
  5. Lion Kimbro is probably also known as Lion.
  6. Bayle Shanks is probably talking about one of his friends, and Lion Kimbro is a friend of Bayle's.
  7. Thus, I tell you that Lion probably had a copy of the Dark Side of the Moon yesterday.

Really, I don't see how you can not think that this is going to happen.

Let me pick apart your proof, using more robot stories.

:The Semantic Web is about describing things.

Check. We're in agreement here.

:But the world is so amazingly complex, we can't communicate useful ideas to the computer.

I assume that you mean: We can describe things like window rectangles and other things to computers. But, if we try and tell it that people know other people, and so-and-so owns a Sega, and such-and-such has a volume control- that's just not going to work.

Because, you know: Someone will bring in a mixing board, and then what do you do?

But this all reminds me of "I, Pencil." If you haven't read it, do. It's about the enormous complexity that goes into the construction of a simple pencil. Not just the construction, but the enormous complexity of efforts it took to make the designs of the pencil, and the machines that cut the pencil, and the designs of the machines that cut the pencil, and the ability to get graphite in there, and where the graphite came from, and on and on.

And it's about how nobody set out, from the beginning, to just "make a pencil." Whoever discovered graphite wasn't thinking, "Gee, I'm going to make a pencil. But first, I'll need some graphite. Where am I going to find that?"

The quote from "I, Pencil":

:…But to these miracles which manifest themselves in Nature an even more extraordinary miracle has been added: the configuration of creative human energies--millions of tiny know-hows configurating naturally and spontaneously in response to human necessity and desire and in the absence of any human master-minding! Since only God can make a tree, I insist that only God could make me. Man can no more direct these millions of know-hows to bring me into being than he can put molecules together to create a tree.

So, I don't buy that "The Semantic Web would have to be so complicated, and no organization can do this."

This is a process of fabrication. Lots of little groups of people are going to describe their own little turf. And then people are going to go, "Oh! I can use the conclusions your bot puts out, and combine that with the conclusions my bot puts out, and hook them together- bam! New info!"

And then someone else is going to figure out how to connect two pieces. And then the two groups of two will work together.

We'll copy bots. When we suddenly need 10 bots that can think about X, and we only have 1, we'll just copy the intel for the 1 to be 10, and next thing you know, there'll be all of whatever bot is needed crawling all over the place.

Fabrication. Sewing together little squares. Then sewing together to make quilts. And then sewing the quilts together to make even larger quilts.

That's how you address complexity.

Next.

:Systems based on descriptions can't handle context.

That's just whack. That's like saying, "My bot can't remember anything."

That's just goofy. Of course my bot can remember stuff.

If it's trying to see if "Lion" is "Lion Kimbro," it might go and search all of Lion's friends. In the context of reading Alex's FOAF file, it can remember that "I'm looking for Lion."

It sees that Alex knows a "Lion," and that Lion Kimbro's FOAF is targetted as "Lion Kimbro."

It also remembers that it's doing this all in the context of saying something about Bayle's friend "Lion." And it saw that Alex called Lion Kimbro "Lion," and Bayle said Lion Kimbro was his friend, and Bayle was talking about a friend named "Lion…"

This all sounds like the application of context to me.

:Can't express alternative viewpoints.

Why not?

I mean, you just say: "It can't."

Of course it can.

Person A says: "Sky color-is Blue."

Person B says: "Sky color-is Black."

Robot notes that A says Sky color-is Blue, and that B says Sky color-is Black.

Now, if you ask the robot, "What color is the sky," what's it going to do?

It's going to do nothing. Why? Because we haven't programmed it yet. This is actually an important point.

(It's an important point, because you keep talking as if we just lay out the metadata, put in an inference engine, turn on the switch, and Bling-Bling, everything's supposed to work. "But it wouldn't ever work! Are you out of your minds?" Of course that wouldn't work. Nobody's saying that would work. You're attacking a semantic web that nobody cares about. Nobody's trying to make master top-down maps of everything. Nobody's trying to make PlatonicCategories. Nobody's trying to make machines that automatically learn everything by just applying OWL transforms to RDF data. Those things exist, to be sure, but they're just tools. I think you're missing the big picture amidst the little primitive tools. You're shouting out, "These tools can't work by themselves!" And you're right. They can't work by themselves. But we're making programs that put these tools together intelligently. And we're going to hook those programs up to one another.)

But some day, somebody's going to write a robot that knows about figuring out the common colors of things.

And it's going to go around the semantic web, looking for assertions people put out. "What do people say the colors of things are?"

And it's going to note- "Most people say the Sky is Blue. Some people say the Sky is Black. Some goofballs things the Sky is Green."

(Some other robot keeps track of goofballs.)

Does that mean that the sky is always blue? Of course not. It's black some times.

People aren't going to use this bot to figure out what color the sky is. They're going to use it to figure out context, or something. Or if people say, "Draw me a house," it'll pull up some standard blue prints for a house, and then paint it whatever color most people paint houses.

Granted, someone's going to misuse the bot. But hey, what can you do? You live and learn.

:The Semantic Web can't describe "part of" relations.

Well, you said it yourself, in the next sentence: Without being extended to include "part of" relations. That's the neat thing. It's easy to extend.

X is-part-of Y.

There we go.

Alternator is-part-of Car.

Tail is-part-of Dog.

"Ah-hah! But not all tails are parts of dogs! Cats have tails too!"

Well of course not all tails are parts of dogs. Silly. We're not just randomly connecting data that sounds similar.

Scoping, my friend. Trivial. Name two variables "x" in the same program. Just use the scope to tell what you're talking about.

:The human mind is amazing.

I know that. But that doesn't mean we can't build a useful Semantic Web.

It will gain intelligence, piece, by piece, by piece.

RDF, OWL, all this stuff- will probably be rewritten several times. Just like it itself is a rewrite of older concepts.

You know how this goes. Piece, by piece, by piece.

Like it's always done.

Lion, I don't even know how to begin to respond to what you've written. It is founded on belief, not science. Like: "of course my robot can remember stuff." In order to represent anything, a machine first has to be able to create an accurate representation of what it is going to remember. What I'm trying to say is that the "Semantic Web" is a marketing ploy, and you should tease that away from the notions of the robotic future you believe in, because they're not related.

Like your use of the word "proof". I did not intend to prove anything, nor did I. Nor could I. We'd have to agree on what "proof" meant before you could disprove me. But to take that as an example, we'd have to be able to represent all of that in the computer, including all the things that we were saying, with all their nuances. Then we'd have to write a program that could formalize what we were saying (despite it not being said formally), reason about it and provide an answer, a "proof". But neither of us could trust the output any more than we trusted the representation and the program that operated upon that representation. Which is to say, very little. If our money, our safety, our freedom, our lives depending on those results, would you trust them? If you wouldn't, then there's little room for this kind of thing in our lives. This is very different than whether the ATM works, since there is no machine reasoning going on (unless you count every program ever written as machine reasoning; then we have a very different definition of machine reasoning).

Now, people like John Sowa advocate using something called "Common Logic Controlled English" (CLCE) to make statements, claiming that the link between CLCE and logic is firm. But that's only if we both agree on the terms, know that we mean the same thing by those terms, and have the same foundation of understanding between those terms and their meaning. We can never know we have agreement, only think we do. It's only when people discern a disagreement between a term and its meaning that we know there to be a problem. But if people do (and they will) hand off reasoning to machines, they'll never be a position to discern mistakes in reasoning. If you never read your monthly bank statement and compare it against all of that month's transactions, you won't know if the bank has made a mistake. I don't read mine, and I've found that the bank has made mistakes, but only when they were big enough to notice. I'm certain that there were many smaller ones I missed. (Funny, all of them were always in the bank's favour.)

There are a number of fundamental problems that have not been solved, and don't look likely to be solved anytime soon, such as identity and context (since they're bound up together). You seem to believe you have answered these questions. But your belief is not backed up in the existing research (there are currently entire conference series trying to figure out context, so you stating that you've solved the context problem doesn't buy much). I'm not worrying about circuitry exploding, but it certainly will make errors. You seem to be comfortable with errors. I'm not. People do and will continue to misuse machine-based information. That New York doctor didn't benefit from your enlightened view of people's use of machines. He was arrested and mistreated because people wanted to mistreat him, because he became one of the scapegoats for 911. The machine information was used against him; nobody checked its accuracy. He was held for a very long time, like months. Kept in solitary confinement, because he was believed dangerous. He was not. He was just a doctor.

Is the sky blue? Such a simple question, really. But from a physics POV, it's not blue. From my perspective, my sky might be black when yours is blue (since I live in a different part of the world), so your ontology has to keep track of time. You have to define all of your terms, too. What do you mean by "blue"? And at sunrise or sunset, the sky is not blue. It doesn't suffice to simply be able to say something, unless you're a human. Being able to say something doesn't mean it can be modeled, or at least modeled in some way that removes enough of the ambiguity to provide a machine the ability to reason effectively. So while it's simple for a human to state things, it's extremely difficult to represent what is said with enough accuracy, context, and knowledge of identity to be able to reason effectively. All of the behind-the-scenes logical machinery has to be there for every part of the ontology. Point is, rather than digress into examples (which you've tried to do), you have to look at the fundamentals of the problem, which aren't in robotics or the Web, they're in linguistics, in epistemology, cognitive science.

But I don't want either of us to be drawn into some debate about whether the future holds more intelligent machines or not as if this was related to the Semantic Web, as if somehow detractors of the SW were anti-future and defenders were somehow pro-future. The SW is just marketing bullshit that gains the W3C somewhere like $60-90 million a year in funding. It has nothing to do with the machine intelligence future. That future will not come from the real research that has been going on since at least the 1970s, from the community of researchers in AI, Knowledge Representation, Cognitive Science, Ontological Engineering, etc. The Semantic Web is not the thing to defend, if you want to spend energy defending some vision of the future. The future will have nothing to do with OWL or RDF or anything else coming out of the W3C, which is just an industry consortium that has managed to gain the limelight in promoting itself as the builders of the Matrix.

And Lion, while you may believe you have answered my criticisms to your own satisfaction, labeling what I've said as "anti-hype hype" (and you're certainly entitled to your own opinion), when you actually try to apply what you've said to the real world of knowledge representation, it just doesn't happen so easily as you believe. I could point you to some papers on identity or context to show you how far we are from being able to perform this human-simple feat using machines.

Or I could point you at the Cyc ontology, which claims (rightfully) to be the world's largest "common sense" ontology. As a project, it's been in production for over 20 years, and has hundreds of thousands of terms and relations. But it's still a toy compared to what will be necessary to implement your vision of the future, because even with all of its complexity, and the enormous investment of time and energy, it only scratches the surface of what we know well enough to do machine reasoning on that little bit. In any particular field, for example, it represents very little if any knowledge. it doesn't represent enough about traffic patterns to control a city's grid any better than the existing programs that do that. It doesn't know enough about surgery to assist a doctor safely, or about air traffic control to take over for humans. Or even about easier problems, like whether we butter one or both sides of a piece of toast. It's not in the ontology, so Cyc doesn't represent it. Yes, we could put that into Cyc. After 20 years it's not there yet. Now, of course you'd be correct in guessing that Cycorp, Inc. is enthusiastic about the Semantic Web, partly because it might help generate more research dollars. Here's their view of the Semantic Web.

But the big problem with Cyc isn't the ability to add more concepts (called "Constants" in Cyc) and relations.

  • Constants are the "vocabulary words" of the CYC knowledge base. The CYC KB is an attempt to model the world as most sane, adult humans perceive it, so each constant stands for some thing or concept in the world that we think many people know about and/or that most could understand.

Now, this is a good example of PlatonicCategories. One must first believe this approach is viable before accepting Cyc as a viable tool. One must believe there is something real called "common sense". You likely do. I don't. I think it's religion, first to think that naming something somehow captures its essense (there are many fallacies connected to that), and secondly, that anyone can safely define "sane" for anyone else (this is a world view shared by all fundamentalists). This isn't to say that I don't think Cyc is a viable experiment, a very cool project, etc. but I think it's misleading to believe it approaches an accurate representation of "consensus" human knowledge.

Lion, these debates have been going on for thousands of years. We're not going to solve them here, and you honestly aren't going to convince me that somehow the problems with machine intelligence are magically going to go away. But as I've said to you before, I don't wish to tarnish your enthusiasm for that future, I just don't share it. Call me a Luddite, a skeptic, whatever. In looking at the evidence and the current state of the art, we're not even close.

Like, see; You say this: "In order to represent anything, a machine first has to be able to create an accurate representation of what it is going to remember."

I like examples, because they are proof by counter-example.

Here goes:

  user = (LionKimbro,27)
  print "%s is %d years old" % user

There you go.

It doesn't have to make an accurate representation.

In one year, that program will be wrong.

However, we can still code the machine just fine. Good enough is good enough for me.

I mean, when I read what you write, it seems like it's basically saying: "It's impossible to program anything. Because it won't be perfect."

You don't have to make an accurate representation in order to program.

i think you're reading the criticism too much as a statement of "don't bother, it won't work". that's not what i am seeing. when i read it, it seems like it's saying "much of what is promised by people hyping the SemanticWeb will be way more difficult to program than they seem to realize. don't let that stop you, but don't expect me to buy it all, for reasons X, Y, and Z.".

as to "good enough" – yes, for a lot of things "good enough" is good enough for me as well. but that depends a lot on what things we're talking about. it's not crucial that i know your precise age. it is crucial that i can identify the unique person who owns the bank account into which i am having to transfer a payment for services received.

Lion, if it were truly that simple, the Semantic Web might just work. :-) But I can't take your use of the word "proof" seriously. You've proven nothing except perhaps that you seem to be ignoring about 90% of the points I've been making. If you either refuse to accept anything I'm saying or refuse to respond to any of my arguments (I'm not sure exactly how to interpret your responses), I don't see much point in continuing. I won't respond to a two line program as being representative of a serious answer to the issues I've raised, nor would anyone else. Using the word "context" or the word "identity" or writing your birthday in a two line program does not constitute an understanding of or an answer to those issues. If those two lines actually express your appreciation of the level of sophistication necessary to create "artificial intelligence", then we have a long way to go before our communication will begin to be anything other than words being thrown past each other. And I don't honestly have time to waste if you're not willing to at least listen to what I'm saying. If you'd be interested in doing some background reading, I'm happy to point you to any number of things to read (the bibliography for my lit review has several hundred on a variety of subjects related to knowledge representation, or you could start with some of the stuff Barry Smith has written under "Formal Ontology", which is pretty accessible to non-logicians like you and I).

I felt that I have been answering your points, and you've been refusing to answer them.

You say that knowledge needs perfect representations. But we're awash with counter examples, both real and thought-experiment.

I gave the example of the FOAF explorer, that figured out that the sloppy data "Lion" was referring to "Lion Kimbro." In real life, we have RSS feeds. Totally sloppy. Totally unspecified. All sorts of weirdness there. But they work.

So, I've never heard a response to these ideas.

I'm not responding to your other ideas, not because I don't want to, not because I don't have responses, but because it'd be insane to respond to 50 points at once.

Fair enough. But then let's first make sure we're talking about the same thing. RSS feeds are not the Semantic Web. RSS has nothing to do with the W3C, and all RSS feeds do is provide a way to self-publish metadata about a page. When you say "they work" I have no idea what you mean by "work". No, they don't work according to the Semantic Web definitions, which would imply that the language used in RSS feeds somehow is formal enough for machine interpretation, and that it fits into some kind of ontology that can be mined and mapped by machines. You have to note that RSS is never interpreted by a machine, it's just passed around between servers, and pattern matches made on certain strings. It's all very fragile and unreliable, and doing inferencing on any of it would be completely unreliable. It could be spoofed as easily as you spoofed my name on that humour page. You couldn't trust it for anything involving money, safety, freedom, life, etc. For example, if you got arrested by the police for something inferred from an RSS feed, how would you then think about its reliability? When it's no longer just a toy, but you just lost your entire bank account, your freedom, or perhaps your life? Do you think people should trust machines to this level of reliability? Currently, we already trust machines, but generally they do almost NO inferencing, no guesswork. It's usually just 2+2=4. And even then sometimes the traffic lights go haywire and people die.

That article of Cory Doctorow's called Metacrap was at the beginning of our conversation. It enumerated at least seven "insurmountable obstacles between the world as we know it and meta-utopia." You seem to think only one of those is insurmountable (i.e., "people lie"). I looked again at those seven and I agree entirely with all seven, and can think of several more. There doesn't need to be 50.

You say that in your thought experiment example that a machine "figured out" something about your identity. It did no such thing. You created a scenario that in today's technology could not be built. Or, if it could be built, any of the Doctorow obstacles would keep it from working reliably. I searched on Google for "Lion". I found plenty of Lions, but I couldn't find you, nor could a machine know a reference to you when it found one. Even if it did find "Lion Kimbro" (which is a rather unique name), it might not be you. And even if it was a reference to your name, no machine made today could understand the context in which your name was used well enough to state reliably what that context was. There's a computer program developed at Carnegie Mellon that can read an OCR of a page and tell roughly what the page is about based on the frequency of occurrences of words. It can do this within a very narrow range of terms that have been programmed into it (such as NASA research reports, to which it is being used as a classification tool). If you fed it today's newspaper it would just break down. But even for pages within its programmed domain, it doesn't know what the page is about, say, if it was a bad review of a movie or a good review of a movie. It doesn't even know what a movie is. The Cyc ontology has "movie" in its database, so it can do some inferencing on statements about movies. But if you connected the Carnegie Mellon program to Cyc, the computer still couldn't tell if it was a good or bad review. The nuances of natural language are too complex. It couldn't make a decision on whether you should go to the movie or not based on the text of the page.

Now substitute for "movie review" the idea of national security. The decision is now whether you are a risk to national security or not. If you've seen the movie Brazil you might remember that in the beginning, a flying insect causes a mistyping on an arrest warrant and the wrong guy gets taken away by stormtroopers. Well, my NY doctor example was a mirror of that. It's no secret that DARPA is funding the Semantic Web, and DARPA is also funding and doing the research on technologies for supporting surveillance of private citizens. You might have heard of DARPA's Office of Total Information Awareness. I don't know if TIA is still around, as they've taken their web site down, but you can bet the people paying for the Semantic Web plan to use the technologies they paid for.


I'm a believer, I guess. I'm not positive it'll work but I think it has a good shot.

We should separate the issue of whether the results will be very useful, i.e. "work", from the question of whether they'll still be unreliable enough to perhaps make the costs of misuse (e.g. by the government) outweigh the gains. Google works, but unreliably. If this stuff does "work", it is indeed probable that it will be unreliable.

Note that I'm defining "work" as being very useful, not as meeting the goals of the programme. Perhaps the system will be useful in unexpected ways.

I think it's a good idea to get all this stuff (stuff on the web, as well as "common sense") into machine readable form, but I'm skeptical that formal logical inference (even in some extended way like wacky modal logics) will be successfully applied to that information once it's there. For instance, for the "sky is blue" example, yes, there are tons of problems if you want to apply formal logic to that. But just writing lots of stuff as machine-readable will allow researchers to play around with the data, and I expect that useful advances will come from that. In addition, I think starting with logical inference and then trying to patch it up is a good way to get ideas how you might use that data (even though I think that in the end, a "patched-up" formal inference system won't work). The SW is just marketing bullshit that gains the W3C somewhere like $60-90 million a year in funding. It has nothing to do with the machine intelligence future. That future will not come from the real research that has been going on since at least the 1970s

I dunno about that; I think that a lot of what I consider "research" in computer science subjects is done outside of academia, by hackers and by commercial organizations. Academia unfortunately is pretty uninterested in getting hackers interested in its ideas (for instance, for various nefarious reasons, many great research projects are quietly forgotten rather than turned into open source projects).

The W3C, on the other hand, has the ear of the larger hacker and industrial communities. The semantic web is a research programme that will involve hackers, and hence will have a lot more & broader base of people. In addition, whatever is discovered will immediately impact a lot more people.

(anyway, in my opinion, the WWW does come from cognitive science research from at least the 1970s, so both statements could be true :) )

Bayle, I'm going to continue to try to keep one thing clear: the Web itself is in an ongoing state of change, and hopefully improvement. It represents an entirety of those who participate in it. This is an organic, decentralized effort, largely being accomplished without the assistance of the W3C. The Web community itself has more to do with these improvements than the any single organization - look at SourceForge, for example. Certainly HTML and XHTML, and to a lesser degree RDF, have played a role in this; these are the kinds of things that were in the original mandate of the W3C. But this should be kept distinct from discussions regarding the W3C's Semantic Web, which doesn't even seem to have much to do with the Web itself, perhaps only a small part of the web. Large corporate/industrial entities and the military (in the 70s this was called the military-industrial complex) are funding it and will benefit most from it, and they only comprise a tiny fraction of the Web community. It's just that a very loud train has left the station and everyone wants on. It might not be going anywhere at all. The existing research communities are of course now jumping on, because that is where the research dollars are now going (sadly).

Murray: Going back to you and I's discussion-

I think: RSS is part of the Semantic Web.

Here's a flippant definition of the Semantic Web, a la me:

:A HyperText of machine-intended and machine-readable data on the Internet.

Is RSS machine-intended? Check.

Machine-readable? Check.

On the Internet? Basically. Check.

Perhaps our argument is really over what "The Semantic Web" means.

That's why, in your conversation with Bayle, I agree with your principles of:

  • organic
  • decentralized
  • constant state of improvement.

And an implicit:

  • already here

Which vaguely reminds me of another list that I've seen somewhere...

I'm happy to address other issues, but I want to make sure we're clear on this point: This is what we mean when we (and "we" seems to extend to most Sem-Web Proponents) say "Semantic Web."

Then I wish you'd call what you're thinking about something else, because that isn't the Semantic web. The Semantic Web is a largely DARPA-funded effort led by the W3C. The description is here. I don't think you can speak for "most Sem-Web Proponents", which is a pretty disparate group. Most of those I know of, like maybe 50-60 people, including some here at KMi, are working under the W3C framework of OWL, Description Logics, etc. RSS predates the Semantic Web. RSS 0.9 was published in 1999, RSS 1.0 in 2000. The W3C Semantic Web activity was announced in May 2001. All you're doing is giving the W3C credit for things they aren't doing.

Let me get this straight: Murray is talking about The Semantic Web, while Lion is talking about the semantic web? One is a W3C group, the other is what they are trying to codify?

It's not a group, it's called a W3C activity, which is wider than a specific working group. There's a grand vision and a set of plans to implement that vision. It's all based on RDF at a syntactic level, but it's not about syntax, it's about describing things very formally using a ontology language called the Web Ontology Language (OWL) (which is the reverse-Pooh-bear way of spelling WOL). OWL is based in Description Logics (DL), a specific form of logic that also existed prior to the Semantic Web (there are practitioners of DL that have nothing to do with the SW; it has its own community). There's very little that RSS, Atom, etc. have to do with the SW, and I think the enthusiasm for these new technologies is being misplaced when they're lumped under its umbrella. I don't think the Semantic Web has much to do with the Web, actually, despite the name. I don't think Lion is talking about OWL, he's talking (from I can gather) about things like RSS and other non-W3C technologies designed to augment the Web. His enthusiasm (which I think is great, BTW) for improving the Web community and its technologies is just (IMO) getting mixed up in the marketing spin of the W3C, an organization that serves large corporate interests and the military. Lion couldn't participate in the W3C's Semantic Web if he tried; there's no individual memberships. I was able to because I worked for Sun Microsystems. From the outside we can just watch as they turn out new specifications every month or so. But the Web is bigger than the W3C. It's all of us.

  • The Internet came out of military (DARPA, even) and corporate interests. (So, it doesn't particularly bother me if they fund the W3C either.)
  • OWL is for helping machines interpret RDF graphs. It is not meant to completely express such interpretations. (A tool, not a straightjacket.)
  • The Semantic Web connects the semantic webs. The InterNetwork? connects (or is intended to connect) internetworks. This is part of the reason we are so excited about it.
  • This is also a reason for the clash in names, I believe. People who were excited about internetworks were probably also excited about "The InterNetwork?." They may have used the words "Internetwork" and "internetwork" interchangably.
  • Another reason for the clash in names, is marketing. However, that doesn't bother me: Standards efforts are efforts to get people onto the bandwagon. That's what it's all about.
  • The Semantic Web does not have much to do with the Web; We are in agreement here. (See also, ThePublicWeb, which uses the word "Web" similarly. It includes, for instance, "IRC" and "IM.")
  • I am pissed that I can't participate in the W3C.
  • I am happy that the W3C has been better at dodging patents than the IETF.

Lion, I'm happy to say I'm in agreement with most of your points. But the one big question I think is still: (as proposed by the W3C) CanTheSemanticWebWork? Your suggestion that OWL will be the common glue to interconnect all the semantic webs is highly contested by some of the best logicians around, who have stated that the choice of Description Logics as the glue was a rather poor one, motivated more by politics than logic. One of those naysayers includes Pat Hayes, who is an Eminent Scholar (that's actually his title) whose work has had a profound effect on the fields of logic and AI. Where RDF didn't have any formal semantics, Pat went ahead and created them, after the fact. Pat and R.V. Guha (the man most responsible for the graph theory that became RDF) have written an underlying logical framework for the Semantic Web, called LBase.

Pat is part of a small, independent group of people working on something called Common Logic or CL (see 1 and 2 for more info). Common Logic, as you might guess by its name, is intended to be that glue. (I am on the hook to them to help write an XML version of CL, and wrote a strawman proposal for XCL last year.)

According to Pat, LBase is in harmony with CL. So what's the problem? It seems like apart from Pat's efforts, nobody at the W3C seems to be all that interested in either LBase or CL. Note that CL is (again), not the Semantic Web, more like the semantic web. If you want to put your money on some kind of glue, put your money on CL rather than DL/OWL. As Pat says in this letter, if the semantic web succeeds, it will represent a change almost as profound as that brought about by the world-wide web itself; and if it fails, the cause will almost certainly be a failure to achieve a sufficently general level of semantic interoperability. I hope the semantic web succeeds. I don't have much faith in the Semantic Web.

I looked up a tiny bit of stuff about description logics and wrote what I learned here:

and here's a short note on Common Logic:

There may be inaccuracies, as I'm only just learning about it myself. Please add to these pages if you feel like it.

Murray:

  • So your beef is with the use of Description Logics for the Semantic Web instead of full-blown First Order Logic? Or, is it that you don't think formal, logical inference using stuff found on the web is a good idea at all?
  • Thanks for the info. I was wondering what happened to KIF! (others: it seems an old format for representing first order logic-ish stuff, Knowledge Interchange Format or KIF, has now been subsumed into the Common Logic/CL effort)
  • Good work on XCL. When you say it's a "strawman proposal", do you mean it like the phrase "strawman" is often used: you put it up only to have something easy to argue against? Or do you mean it's a rough draft?
  • As I understand it (others: see above links), description logic is equivalent to a fragment of first-order logic. Common Logic can express first-order logic and a little more. So what's the problem with the SemanticWeb using description logics? If it's a subset of CL, then we should be able to automatically translate them into XCL, right? And OWL is description-logic-y, so OWL will be translatable into XCL? In support of this, http://www.jfsowa.com/talks/clprop.htm says that "Pat [Hayes] has influenced the design of RDF and OWL to make them CL conformant." and "therefore, the CL semantics is inherited by RDF and OWL."

Bayle, it's a bit different than the way you've figured it. First Order Logic (FOL) is more fundamental, simpler than Description Logics. The simplest kind of logic is called propositional logic. From there, a step up is predicate logic, where quanitification is added, e.g., you can state how many things a statement applies to. Here we see the quantifiers "for all" (also called the universal quantifier, denoted with the symbol ∀) and "there exists" (also called the existential quantifier, denoted by ∃). When it is used in a system of making statements it is called a predicate calculus, which is better known as "first order logic" (or FOL).

If you were to build a tree with propositional logic at the bottom, predicate calculus or FOL a step up, well, Description Logics would be a fair bit up that tree, though certainly not near the top. Description Logics, and more complex representational languages like Conceptual Graphs, include within them the basics of FOL (at least in theory).

Languages like LISP, Prolog, Scheme, KIF, OCML (which is used extensively at KMi, where I'm at), are all basically related to each other in some way. They're all ways of making statements in a formal way. Now, how those statements relate to the things they're making statements about (i.e., the epistemological relationship between the representation and the world it is representing) isn't talked about much in KR circles. It's a kind of dirty subject. But there are certainly researchers who still use KIF, LISP, etc. Most of the preexisting KR community doesn't use RDF or OWL, though some people are jumping on that train since the money is flowing that direction.

Now, as to the XCL strawman, it was an early proposal I made in working through an early draft of SCL (the Simplified Common Logic), influenced by some of the work of an Estonian researcher named Tanel Tammet (who's also been involved in the CL work but has since broken off to do his own thing). The relationship between CL and SCL is a bit arcane, but they're essentially the same project, just done by different people at different times. The original CL project (I believe) kinda died, and was reborn as SCL. But I think it's since been regrouped and renamed as CL again. Very confusing. I just sent a message off to Pat Hayes last week, and hopefully I'll be looking at their latest draft again by summer (Chris Menzel got married, Pat's been busy, etc.).

Regarding your final paragraph, as you may gather from what I've written, FOL actually is a fragment within DL. CL will be somewhat similar to FOL but have a greater level of expressiveness, with the idea that it will be universally useful as a basis for other forms of logic. So you could take modal logic, fuzzy logic, description logic, etc. and find commonalities between them by mapping them to Common Logic. Of course, each logic is different, but the idea is that CL could be the foundation of any.

To answer your question about the appropriateness of DL or OWL to express things about the Web (or about real life), look around you. How much of what you see do you believe is structured formally enough to make logical statements about? Now, you have to differentiate logical statements from linguistic statements. Saying that "Bill is married to Anne" is not a statement of logic, but of linguistics. Now, some would argue that logic underlies language. I don't believe it for a minute. Logic and real life seldom mix that much, especially in the kinds of things people say. So outside of the realm of domains where things are very logical, I don't believe DL (or any formal logical apparatus) has much application. There has been a lot of research into computational linguistics, but in talking with experts in that field (like Geoffrey Nunberg at Stanford) I'm led to believe we're a LONG way from being able to understand human speech that well. A lot of progress has been made, but human communication is a lot more complex and subtle than some people would like to believe.

I hope this wasn't too confusing… one thing to remember is that a lot of definitions of things aren't universally agreed upon. There's a great deal of belief that there is universal agreement, but when you begin to dig deeper you find that there are camps (and camps within camps) just like in any field, and logicians are at least as good as lawyers at spending time arguing.

Well, of course it's too confusing, but there's no way around it :) Thanks for the the intro in your last post.

It sounds to me like the things that different people are calling "description logics" have very different expressivity. Page 38 of Nardi and Brachman's intro says that most DLs (and especially ALC, which seems to be the typical one) are less expressive than FOL (and some other places concur, but sometimes say most descriptive logics), but page 14 of Haarslev's slides suggests that other things like DAML+OIL are also considered DLs, and they have much greater complexity than ALC (and hence may be more expressive; I think I remember reading somewhere (besides your previous post) than OWL is more expressive, although I forgot where).

So perhaps "description logics" was classically used to refer to things like ALC which were less expressive than FOL, but now people lump in stuff like OWl, which is more expressive than FOL?

Bayle, I'm not sure about what different people have said, but there is a strange paradox in "expressivity". If you consider that FOL is very simple but can form the basis of many logics, it's very expressive. If DL is based on FOL, and establishes a specific set of semantics to say things in a particular way, that makes DL less expressive than FOL. DL == more specific, FOL == more general. This isn't a judgment about usefulness. It just says that once one has made some specific ontological commitments (i.e., made some decisions about what things mean), the other possibilities are no longer open. One has focused on a single set of meanings from among the infinite possibilities. Once you've chosen a single tool from a toolkit, you can then do a smaller set of possible functions. But the tool is (hopefully) tailored for the task you have at hand. (…and that's the big question with the Semantic Web.)


Case histories

Define external redirect: InterNetwork SemanticWebFeasability

ModifierLiensDeProximité: MeatballWiki HyperText WikiMatrix SourceForge PatrickAnderson

Langues :