- From: Yuzhong Qu <yzqu@seu.edu.cn>
- Date: Tue, 29 Jun 2004 12:30:08 +0800
- To: "Pat Hayes" <phayes@ihmc.us>
- Cc: "Jeremy Carroll" <jjc@hpl.hp.com>, "www-archive" <www-archive@w3.org>
- Message-ID: <00d801c45d91$c45fcbb0$fd0b77ca@xobjects>
Re: [Fwd: Some questions about Named Graphs]Thanks! Just one more thinking arised from "named graphs are RDF graphs (with a name added, but still RDF graphs all the same), rather than a distinct category of entity" Within the framework of Named Graphs, an rdfgraph without a name doesn't make sense (at semantic level), and a named graph is not just an RDF graph with a name added. Of course, it's my understanding. Yuzhong Qu Some questions arised when I read the section 2 "Abstract Syntax and Semantics" of this paper. 1. 5-tuple <N,V,U,B,L> where: U is a "set" of URIrefs; L is a "set" of literals (both plain and typed); B is a "set" of Oblank¹ nodes; ......;N is a "set" of pairs forming a partial function from U to V Å~ U Å~ V . Are they finite sets? I guess they should be. That would be usual when describing a syntax, for sure, but there are some cases where it might be sensible to allow (countably) infinite graphs, eg when one has some procedure which can match an infinite range of graphs and therefore can be thought of as embodying an infinite virtual graph. Such cases arise when one considers question-answering systems, for example. So it seemed best to just leave this possibility open by not imposing the finiteness condition, since we do not actually need it in any case. As to "N is a set of pairs forming a partial function from U to V Å~ U Å~ V", why not a partial function from U to P(V Å~ U Å~ V)? (The power set of ...) because you use "partial function" instead of "partial mapping". Whoops. I think we noticed this at some point but it must have got edited back in by mistake. 2. For ng, ng' belonging N with ng != ng'then the blank nodes used in triples from rdfgraph(ng) are all distinct from those used in triples from rdfgraph(ng'), i.e. blank nodes cannot be shared between different graphs named in N. What's the criteria to test ng = ng'? Good question. Strictly speaking an RDF graph is a *set* of triples, so one ought to use set criteria of identity. But we 'cheated' slightly when writing the RDF spec, by saying that graphs which differ only in the identity of their blank nodes are treated as identical. In effect, this means that an RDF graph is (again speaking strictly) a factorization of the space of sets under the equivalence relation of being mutual instances. This makes it mathematically impossible for two graphs to 'share' a blank node, since the bnode in one graph can be instantiated by a different bnode without changing the identity of the graphs. Put less mathematically, bnodes are scoped to the graphs they occur in. I guess it depends on the equality of the first elements of the two pairs, i.e. whether or not name(ng) = name(ng'), then it depends on the equality of URIrefs? In addition, why you must require "the blank nodes used in triples from rdfgraph(ng) are all distinct from those used in triples from rdfgraph(ng')"? I mean that the above requirement (or assumption) seems redundant. Even worse, in some cases, two blank nodes within two different graphs may be equal due to the fact that they have the same value for an inverse-functional dataProperty (in OWL), or the two blank nodes are equal to each other within some context. Ah, be careful. Identity of blank nodes is a syntactic question. So one might have _:x ex:revfunprop1 A . _:y ex:revfunprop1 A . and then _:x owl:sameAs _;y . but this means that the two blank nodes denote the same thing, not that they are the same blank node. You can see they are not the same blank node by looking at their nodeID labels (x and y). The only way that two blank nodes can be equal (actually this form of words is misleading, since if they are equal then there is only one blank node) is if they are (it is) in a single graph. 3. Can a blank node denote a named graph (or graph)? If it can, how about the corresponding syntax? 4. As to the Namespace and RDF Schema: xmlns:rdfg="http://www.w3.org/2004/03/trix/rdfg-1/" The class "rdfg:Graph" is to represent the concept of named graph, graph, or other thing? I guess it's about named graph, then why not use the word "NamedGraph"? Because named graphs are RDF graphs (with a name added, but still RDF graphs all the same), rather than a distinct category of entity. Thanks for your enthusiasm Pat Hayes -- --------------------------------------------------------------------- IHMC (850)434 8903 or (650)494 3973 home 40 South Alcaniz St. (850)202 4416 office Pensacola (850)202 4440 fax FL 32501 (850)291 0667 cell phayes@ihmc.us http://www.ihmc.us/users/phayes
Received on Tuesday, 29 June 2004 00:27:35 UTC