Re: test cases - sketches

On 10/12/2011 05:32 PM, Dan Brickley wrote:
> Trying to figure out what kinds of test cases might even record
> decisions about graph concepts.
> 
> Here's an experiment, below.
> 
> Dan
> 
> 
> 
> 1. For each $X  from 'g-box', 'g-snap', 'g-text' ):
> 
>  Can this whatever-it-is RDF graphy-thing,
> 
>         <http://example.org/1> <http://example.org:80/2> "A" .
> 
>  ...ever be considered the self-same $X as
> 
>         <http://example.org/1:80> <http://example.org/2> "A" .

I'm guessing you meant <http://example.org:80/1> rather than <.../1:80> :)

>  (ie. one thing not two)
> 
> Expanded version:
> 
> Q: 1a) - Can <http://example.org/1> <http://example.org:80/2> "A" . be the
>    same g-box as <http://example.org/1:80> <http://example.org/2> "A" . ?
> 
>    ... q might not make sense.
>    Or "from the same g-box"?
> A: Sure.

Sure: the state of a graph container may change, so different RDF graph
can "come from" the same graph container.

> Q: 1b) - Can <http://example.org/1> <http://example.org:80/2> "A" . be the
>    same g-snap as <http://example.org:80/1> <http://example.org:80/2> "A" . ?
> A: No. They are different g-snaps because the RDF content does not
> compare equal
>    because they have different URI strings labelling different nodes (even if
>    they always co-refer).

+1

> Q: 1c) - Can <http://example.org/1> <http://example.org:80/2> "A" . be the
>    same g-text as <http://example.org:80/1> <http://example.org/2> "A" . ?
> A: No. Considered textually, they have different forms, checksums, etc.

+1

> Q: 2.  Can <http://example.org/1> <http://example.org/2> "A" . ever NOT be the
>    same g-snap as <http://example.org/1> <http://example.org/2> "A" . ?
> A: Sure. Maybe. Don't know. This is an example test case we might debate.

well, in your example, any conforming parser should always produce the
same graph (well, a data structure encoding the same graph), containing
one triple where
* the subject is the IRI "http://example.org/1"
* the predicate is the IRI "http://example.org/2"
* the object is a literal with lexical form "A", datatype xsd:string (in
RDF 1.1), and no language tag.

However, the same graph serialization can be the serialization of
several graphs if they contain bnodes. For example:

  [] <http://example.org/2> "A"

only specifies that the subject of its unique triple is a bnode, but it
can be *any* bnode.

More precisely, a graph serialization does not represent a single graph,
but an equivalence-class according to the equivalence relation described
in section 6.3 of RDF Concepts. At least, it seems to me that it is
implied by the way the spec describes bnodes, bnode-ids and their
relation with the abstract and concrete syntaxes.

By the way, if the rest of the WG agrees with my conclusion above, may
be it would be a good idea to add it somewhere in RDF Concepts? In the
section defining equivalence?

  pa

Received on Friday, 14 October 2011 21:03:43 UTC