- From: Jiří Procházka <ojirio@gmail.com>
- Date: Fri, 15 Jan 2010 23:21:28 +0100
- To: Pat Hayes <phayes@ihmc.us>, Semantic Web <semantic-web@w3.org>
- Message-ID: <4B50EA68.1090805@gmail.com>
On 01/15/2010 05:36 PM, Pat Hayes wrote: > > On Jan 15, 2010, at 1:58 AM, Jiří Procházka wrote: > >> On 01/15/2010 08:06 AM, Pat Hayes wrote: >>> >>> On Jan 15, 2010, at 12:32 AM, Jiří Procházka wrote: >>> >>>> On 01/15/2010 06:29 AM, Pat Hayes wrote: >>>>> >>>>> On Jan 14, 2010, at 10:50 PM, Jiří Procházka wrote: >>>>> >>>>>> On 01/15/2010 04:17 AM, Pat Hayes wrote: >>>>>>> >>>>>>> <rant> >>>>>>> This brings up a broader issue. Everyone agrees its good to keep RDF >>>>>>> simple. But keeping RDF simple by making it in effect into a >>>>>>> general-purpose construction kit, and then expecting that as a >>>>>>> matter of >>>>>>> routine people will use the constructions, isn't really being honest >>>>>>> about 'simple'. OWL/RDF is a lot less simple than RDF itself largely >>>>>>> because its written in what we might more honestly call >>>>>>> OWL-syntax-coded-in-lists-described-using-RDF, which IMO isn't >>>>>>> really >>>>>>> RDF any more. If we want to expect RDF to do this kind of thing, >>>>>>> then it >>>>>>> ought to have a whole datastructuring facility built in explicitly, >>>>>>> perhaps along JSON lines, rather than prostituting the triple >>>>>>> store to >>>>>>> be a data structuring tool. >>>>>>> </rant> >>>>>> >>>>>> Wasn't this the whole idea of RDF? Simple language for expressing any >>>>>> information? Doesn't it use triples, simple relations between two >>>>>> objects, specifically for the reason that it is universal, and any >>>>>> kind >>>>>> of structure can be expressed by it? >>>>> >>>>> There are two notions of universal here, and we shouldn't get them >>>>> confused. One is a universal programming language, which can be >>>>> used to >>>>> build arbitrary data structures and define operations over them. In >>>>> other words, in fact, a programming language. The other sense is a >>>>> universal *descriptive* language, which RDF is supposed to be , but >>>>> isn't because it is too simple. (Thats why we need OWL, etc.; >>>>> though RDF >>>>> is closer than I used to think, see my ISWC talk.) >>>>> >>>>> My point was only that if RDF needs to *use* sequences (like, as data >>>>> structures to encode OWL syntax, for example, or as a way of hacking >>>>> N-ary relations using only binary links) then this is more like >>>>> building >>>>> data structures than describing anything, and maybe it would be better >>>>> to admit this up front and deal with it with a real datatstructuring >>>>> notation. It wasn't the whole idea of RDF to have it be a kind of >>>>> awkward version of simplified LISP. >>>> >>>> No, I am not mixing in programming languages, I am talking about >>>> descriptive language, though I am not a logician, so could you please >>>> explain what universal descriptive language needs to fulfill (or >>>> provide >>>> a link to such explanation)? I cannot imagine anything that cannot be >>>> described by RDF+RDFS - you say we need OWL - but OWL is defined using >>>> RDF+RDFS. >>> >>> No, its not! OWL is a different language from RDF, and its not defined >>> in RDF. In fact, it couldn't be defined in RDF, since RDF is not >>> expressive enough. Both RDFS and OWL/RDF are semantic extensions of RDF, >>> but that means that they need 'extra' semantics in addition to that >>> provided by RDF. In the case of OWL/RDF, it wasn't at all easy to >>> specify this stuff and keep it consistent with the RDF meanings. >> >> Now things clears up! >> I think we differ in that, that I consider every RDF vocabulary a >> semantic extension. You can describe things using descriptive languages >> like OWL or RDFS, but also using natural language. > > True, but what then is the purpose of RDF? Why don't we just use English > as the semantic web formalism? This seems to me to be the reductio ad > absurdum of your point of view. The idea of the SWeb is that semantic > information written in RDF can be processed by machines. And the > technology of RDFS, OWL, SPARQL etc. depends entirely upon genuine > semantic extensions (as defined in the spec itself) , not just a > let-it-all-hang-out idea that anything comment written anywhere can > count as an RDF-defined meaning postulate. Still information in RDF which is using ontology that is defined just by natural language (not descriptive - OWL) are worth something and up to a certain point can be processed by machines - an engineer has to teach his application the ontology. Look at FOAF for example... Undoubtedly there is demand for such lightweight semantics. If it was to be defined by some descriptive language... to be frank, I can't imagine that - it would probably be some upper ontology stuff which is subject of many disagreements. That is why we shouldn't embrace one specific descriptive language as main RDF formalism, we should be able to choose it, therefore defining the level our ontologies can be reasoned about by machines. Saying something like "DL should be good enough for everyone" might be a mistake... As I understand it, you expect to teach your machine RDF, and be able to "understand" whole semantic web. My view is I have to continuously teach it new formalism which are starting to get used on the web (unless they are defined by some formalism it already understands). I'm all for having a widely used and W3C blessed ontology for defining ontologies using set theory and formal logic, on top of RDF, but not as a part of it. I guess it's mainly a question of proper modular design and low barrier of entry, since I don't know of any competing logic theories to be honest, but I expect there are some or will be in future. Best, Jiri PS: Others: Sorry for confusion, 3 mails accidentally went off list, they are quoted here of course. >> In any case your >> description is just a imperfect surrogate of your view of the described >> things (depending how deep is your understanding and how good is your >> skill with the descriptive/natural language) which is a surrogate of the >> things themselves (depends what philosophy you subscribe to). >> If we want RDF to be universal information interchange language, we >> shouldn't bless one way of reasoning about things (DL) or enforce usage >> of some top-level ontology (which is essentially the same thing), and >> expect data to be semantic mess like minds of all people put together... >> >>>> Anyway you probably meant the universal descriptive language has to be >>>> able to describe anything using only it's own terms, be self-hosted >>>> (bootstrapped), not aided by natural language like with RDFS. >>> >>> RDFS is defined by the RDFS semantic conditions, not by natural language >> >> And how are these semantic conditions defined? > > Using *mathematics*. And this is not a joke: although the math may be > written in English, the only aspects of English meaning that it relies > upon are those that define the meanings of terms in set theory and > formal logic. > >> >> Best, >> Jiri >> >> PS: You took the discussion off list, dunno if it's intentional > > No, it wasnt intentional. But whatever :-) > >> , any way >> is good with me. Maybe will write a blog post someday about what I learn >> from you. >> >> >>>> I don't see why it needs to be that way, in fact I see that as its >>>> strength - we can use it to describe things with various levels of >>>> detail. For example I can define simply: >>>> >>>> <NaturalNumbers> a rdfs:Class ; >>>> rdfs:comment "A class of natural numbers - integers which are greater >>>> than zero" . >>> >>> But you still need some way to actually write the numbers down, ie some >>> numerical convention. There are several of them, so you need to say >>> which one you are using. Now you have datatyped literals. >>> >>>> >>>> Or I could use OWL and express formally it's relation to integers, >>>> but I >>>> don't need to. >>>> >>>>>> Why should we give preferential >>>>>> treatment to relations describing structure than those describing >>>>>> time, >>>>>> measures, events, organizations, people, pizzas...? >>>>> >>>>> Because they aren't *descriptions* of structure, they are structures >>>>> being used to describe other things. Just like triples are. >>>> >>>> I believe triples were chosen because they are the simplest of the >>>> structures, yet can describe any other. >>> >>> They are simplest and extremely useful, yes. But using them to >>> *describe* others, which are then also themselves used to describe other >>> things, gets the syntax/semantic levels all mixed up. >>> >>>> >>>> Do you intend to define all structures possible which can be used to >>>> describe other things? >>>> >>>>>> This is what I always thought what RDF was supposed to be and things >>>>>> like containers, blank nodes, literal data types, language tags >>>>>> got in >>>>>> because of pragmatical reasons, mainly to give users some kind of >>>>>> direction, examples how to get started. >>>>> >>>>> Well, not really. All of these things are needed in order to describe >>>>> things that people wanted to describe, and couldn't be described any >>>>> other way. If you don't have literals, how are you going to use >>>>> numbers >>>>> in a description? Without language tags, how are you going to say that >>>>> something is written in French? Well, OK, maybe containers... >>>> >>>> <data:text/plain;charset=utf-8,Je%20ne%20comprends%20pas.> ex:language >>>> lang:French . >>> >>> Well, OK, but you essentially have the lang tags here as language >>> 'classes'. Whats the advantage? If these are part of the language, then >>> they are just more longwinded tags. If they aren't, then what "knows" >>> that lang:French means French? (RDF doesn't know this, right?) >>> >>> I think we did try out a design like this with language properties. But >>> you have to say what it means when the language information is missing. >>> Tags in literals make it compulsory, which is good for some purposes. >>> >>>> >>>> I don't advocate using data URI scheme instead of literals, but it >>>> should be possible. >>>> Maybe you are right about the blank nodes though, I am not sure if this >>>> would work (meaning the URI is irrelevant): >>>> >>>> <j48fd8dj3> rdf:type ex:UnnamedNode . >>> >>> No, that confuses use and mention. The thing denoted isn't a blank node. >>> >>>> >>>>>> Reality that even such thing as RDFS was made separate of the RDF >>>>>> itself >>>>>> support my view (even though I suspect one of reasons if that >>>>>> separation >>>>>> was the process of it's development). >>>>> >>>>> Yes, most the latter. I would have preferred to have one namespace, >>>>> but >>>>> this was set in stone very early on. >>>>> >>>>>> >>>>>> On the other hand I am not against creating community developed >>>>>> framework for making common uses of Semantic Web technologies easier, >>>>>> defining useful structures and design patterns... but build that *on >>>>>> top* of RDF as separate framework. >>>>>> >>>>>> I would like RDF to be as lightweight (low level) as possible - if I >>>>>> were to make mine RDF, there would be no containers, bnodes, literal >>>>>> data types, language tags, maybe even no literals - using data URI >>>>>> scheme. Anyway I value compatibility and adoption more than >>>>>> sticking to >>>>>> my view of the world so I use RDF as it is. >>>>>> >>>>>> Other alternative would be to have the low level core, build >>>>>> modules on >>>>>> top of it, for example like some programming languages do (Python, >>>>>> Java...) and call the whole thing RDF - I guess that is what would >>>>>> make >>>>>> most people happy. >>>>> >>>>> But this whole idea of 'building modules on top' is a programming >>>>> idea, >>>>> not a description language idea. It muddles up the notion of a >>>>> description. Which 'level' defines the semantics you should be >>>>> using in >>>>> a query? There's no way to know. >>>> >>>> You can use any level, because all levels are defined by levels under >>>> them, lowest of them being RDF core. >>> >>> What do you mean by one level being "defined" by another, if these are >>> all descriptive languages? Do you imagine RDF core ontologies being used >>> to describe higher-level meanings? Because that (provably) will not >>> work: RDF isn't expressive enough. And if it were expressive enough, >>> then we wouldn't need the higher levels, except maybe as syntactic >>> sugar. >>> >>> Pat >>> >>>> >>>> Best, >>>> Jiri >>>> >>>> PS: Actually there is one thing which would aid bootstrapped nature of >>>> RDF: >>>> >>>> ex:contains rdf:type rdf:Property ; >>>> rdfs:comment "property for stating that a reified triple is part of >>>> graph" ; >>>> rdfs:range rdf:Statement . >>>> >>>>> Pat >>>>> >>>>>> >>>>>> Best, >>>>>> Jiri Prochazka >>>>>> >>>>>>> >>>>>>> Pat >>>>>>> >>>>>>> >>>>>>> >>>>>>>> >>>>>>>> Rgds, >>>>>>>> >>>>>>>> -Geoff >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------ >>>>>>> IHMC (850)434 8903 or (650)494 >>>>>>> 3973 >>>>>>> 40 South Alcaniz St. (850)202 4416 office >>>>>>> Pensacola (850)202 4440 fax >>>>>>> FL 32502 (850)291 0667 mobile >>>>>>> phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> ------------------------------------------------------------ >>>>> IHMC (850)434 8903 or (650)494 >>>>> 3973 >>>>> 40 South Alcaniz St. (850)202 4416 office >>>>> Pensacola (850)202 4440 fax >>>>> FL 32502 (850)291 0667 mobile >>>>> phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>> >>> ------------------------------------------------------------ >>> IHMC (850)434 8903 or (650)494 3973 >>> 40 South Alcaniz St. (850)202 4416 office >>> Pensacola (850)202 4440 fax >>> FL 32502 (850)291 0667 mobile >>> phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes >>> >>> >>> >>> >>> >> > > ------------------------------------------------------------ > IHMC (850)434 8903 or (650)494 3973 > 40 South Alcaniz St. (850)202 4416 office > Pensacola (850)202 4440 fax > FL 32502 (850)291 0667 mobile > phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes > > > > >
Received on Friday, 15 January 2010 22:22:13 UTC