Re: [Fwd: Some questions about Named Graphs]

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