- From: pat hayes <phayes@ai.uwf.edu>
- Date: Wed, 29 Nov 2000 11:12:04 -0600
- To: Pierre-Antoine CHAMPIN <champin@bat710.univ-lyon1.fr>
- Cc: RDF-Logic <www-rdf-logic@w3.org>
Pierre-Antoine CHAMPIN wrote: >pat hayes wrote: > > Would it be > > possible for you, or someone connected with RDF, to give a precise > > specification of what exactly *is* the syntax of RDF? > >My turn to try it :) Thanks, I need all the help I can get :-) >My understanding is that there are two levels of syntax in RDF. > >The first level syntax is the XML-syntax proposed by the RDF >recomendation. It is interpreted as a direct graph, whose nodes and >arcs are labelled by URIs (or Literals for some nodes). >The semantic is (intended to be) quite trivial, and the syntax could >very well be replaced by another one, as mentionned by Seth. > >The second level syntax IS the direct labelled graph, and the RDF >recomendation does not give any predefined semantics to it (that >semantics depends on yet-to-describe schemas/ontologies). Oh, but wait: if the basic language has no semantics, then it is (literally) impossible to specify an ontology in it. Meaning cannot be achieved just by rearranging symbols. Ontologies mean what they do by virtue of the semantics of the language they are expressed in, and if that semantics is missing then they don't mean anything. >That is *the* RDF syntax, as I understand it. The first level is >only "serialization-oriented"... OK, that is what I was calling the 'abstract syntax' in earlier messages. Fine, I am happy to take the triples to be the syntax of RDF. Thanks for the clarification. >Now, I said the RDF recomendation did not specify any second-level semantics, Im not sure what you mean by 'second-level' here. I presume you don't mean second-order (?) >that is not absolutely true : the reification.... I see this term used constantly in the RDF literature, but I have yet to see any definition of it. I get the general idea; Stefan Decker illustrates it in his earlier message: [Stefan:] >I used ([Bush, wonThe, Election] at Electoral College) as an abbreviation for >{[Bush, wonThe, Election]) >[id1, type, statement] >[id1, subject, Bush] >[id1, predicate, wonThe] >[id1, value, Election] >[id1, at, Electoral College] } but I have some trouble understanding the details. For example, what exactly specifies (in the above example) that 'id1' denotes the first triple '[Bush, wonThe, Election]' ? Or is that triple in fact redundant, since it is fully described by the following four triples, which should be read as meaning something like 'a triple called id1 exists which has type statement and....', so that the 'id1' is like an existentially quantified variable (ranging over triples)? If the latter is correct, does the above example specify the same triple twice, once directly and a second time in reified form? Or does it describe two isomorphic triples, or two tokens of the same triple? What would be the meaning of an incomplete specification of a reification? for example, suppose someone just says {[id2,type,statement] [id2,predicate,wonThe] } and nothing else; would this be legal RDF, and what would it mean? Again, suppose one asserts an 'RDF-ish' property of a thing but also asserts some property that isn't applicable to triples, such as: {[id3,predicate,wonThe] [id3,wonThe,Election] } what, if anything, would that mean? Or would it be syntactically illegal in RDF? (Or would it be legal, but *describe* something that was syntactically illegal?) Is the following syntactically illegal in RDF, or inconsistent, or does it just have some peculiar consequences? (such as that Bush=Gore, maybe?) : {.... [id4, subject, Bush] [id4, subject, Gore] .....} What happens if I reify a reification? For example, consider: {[id5,type,statement] [id5, subject, id5] [id5, predicate, type] [id5, value, statement]} Is this a description of itself? Or of nothing? (Or should there be some kind of literal- or string-quoting in a more careful writing of triples, so that the last one should be written [id5, value, "statement"] ) On a more basic level, can you (or anyone) characterise for me what the essential difference in content is between an RDF triple and its reification, ie its description using four triples? What, if anything, can be said to follow from one that doesnt follow from the other, for example? Insofar as one can talk about a piece of RDF being 'true', are there any circumstances or states of affairs which would render one of them true and not the other? Or would it be correct to think of them as just alternative ways of saying essentially the same thing? To illustrate some possible answers. One might say that an RDF triple asserts that a relation holds between two things (or that a property has a value when applied to something), but that the reification of that triple doesnt make that claim, but only says that the triple 'exists', without actually asserting it. That would be a 'meta-language' view of reification, and would amount to the observation that RDF was capable of describing its own (abstract) syntax. Or, alternatively, one might say that the reification (the four triples) was just a translation of the original triple into a different form, and that to assert the reification IS to assert the triple it describes. On this second interpretation there really is no effective semantic difference between {[Bush, wonThe, Election]} and {[id1, type, statement] [id1, subject, Bush] [id1, predicate, wonThe] [id1, value, Election] } whereas on the first interpretation there is a large difference, in that the second of these doesnt say anything at all about Bush or elections. [Pierre-Antoine, continues:] >.... has an intended semantics to describe elements of the >(second-level) language in the language itself. >Namely, some nodes of the graph (known as "reified statements") >denote some arcs of the graph, so that the arcs themselves can be >talked about. If I understand this properly, it suggests the 'metalanguage' view in which the reification of a triple means something quite different from the triple itself. Is that a proper understanding of what you mean? ><snip/> > > Now, does *that* have a model theory? > >I'm affraid not... >There is actually a very hot debate on the RDF-interest mailing list, >which, as I am writing, I could formulate as : > >"Do reified statements denote > - the *interpretation* of a statement > i.e. a semantic entity, which is unique and abstract, >or > - the *expression* of a statement > i.e. a syntactical entity, which could have many instances ?" Interesting debate. I would take issue with your characterisations here, however. Semantic meanings need not be either abstract or unique (in fact the hallmark of logical semantics is the fact that interpretations are usually - almost always, in fact - NOT unique); and syntactical entities can have many instances (in the usual understanding of 'instance') only if they contain universally quantified variables; but RDF has no syntactic mechanism for such quantification, so this issue doesnt seem to arise here. (Added later: I think I see what you mean. The syntactic entities may have several identical tokens of the same type, so that the 'same' triple may occur more than once, right? That is what linguists call the type/token distinction rather than the generalisation/instance distinction. That would explain the RDF interest in 'bags' of triples.) > > The problem is that according to > > this rule, RDF names may refer to pieces of RDF syntax, so the > > language is highly self-referential. > >This is the second hypothesis above, the one I favor, actually. >Sure, it makes it difficult to make a model theory of RDF, >but that is what will make RDF suited to the web, open as it is : >people will not only be able to annotate resources, but also >annotated their annotations, to explain/justify/comment them. Yes, point taken (and I agree). However, annotation does not require self-description; and in any case, in order to be of effective use in the web or anywhere else, any language needs a clear semantics. Pat Hayes --------------------------------------------------------------------- IHMC (850)434 8903 home 40 South Alcaniz St. (850)202 4416 office Pensacola, FL 32501 (850)202 4440 fax phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes
Received on Wednesday, 29 November 2000 12:10:50 UTC