W3C home > Mailing lists > Public > www-rdf-comments@w3.org > October to December 2002

Re: An implementation of proposal F

From: Janne Saarela <janne.saarela@profium.com>
Date: Sat, 12 Oct 2002 11:32:22 +0300
Message-ID: <3DA7DE16.3000104@profium.com>
To: Dan Connolly <connolly@w3.org>
CC: Brian McBride <bwm@hplb.hpl.hp.com>, rdf core <w3c-rdfcore-wg@w3.org>, www-rdf-comments@w3.org

> The question is: how does your implementation handle the case
> where datatype information isn't available at parse time?
> 
> Suppose you read in just this much:
> 
>    <rdf:Description rdf:about="Jenny">
>      <foo:age>10</foo:age>
>    </rdf:Description>
>    <rdf:Description rdf:about="Johnny">
>      <foo:age>10</foo:age>
>    </rdf:Description>
> 
> I presume your implementation has some way of asking...
> 
> 	values = store.getTriplesMatching('...Jenny',
> 		'...age', wildcard)
> 
> yes? In this case, I'd expect one value. Then, we
> ask...
> 
> 	results = store.getTriplesMatching('...Johnny', '...age',
> 		values[0])
> 
> and the critical question is: how many results does your
> implementation return? If it implements F, it must
> return 0, since there isn't enough information to
> determine that the values of the two triples are
> the same.
> 
> If it returns 1 result, it's tidy, and it's actually
> implementing something closer to B or C.

I think I need to elaborate on our current implementation
and then eventually answer your question:

Profium SIR can be configured with any number of
RDF schemas. Once RDF instance data is received,
it will be validated against these schemas and
only valid data will be stored for further processing.

This step alone would require there to be a schema
that defines foo:age you suggested. The schema
can now require the foo:age to have a certain
typed literal value i.e. a range. If it doesn't explicitly
state the range, Profium SIR will assume it to be
of type &xsd;String in the spirit of RDF M&S 1.0.

Now, if the schema had the foo:age set to &xsd;string
either explicitly or implicitly, your first query would
return one result, a string '10'. If it was set to
&xsd;int, your first query would return one result, an
integer 10.

In the 2nd query, if the foo:age was set to &xsd;string,
you would get one result with our implementation. Again,
had foo:age been set to &xsd;int, you would still get one
result.

Using the terminology from Proposal F, the &xsd;string
would have a string value from &xsd;string value space and
&xsd;int would have an integer value from &xsd;int value space.

Regards,
Janne
-- 
Janne Saarela <janne.saarela@profium.com>
Profium, Lars Sonckin kaari 12, 02600 Espoo, Finland
Tel. +358 (0)9 855 98 000 Fax. +358 (0)9 855 98 002
Mob. +358 (0)40 508 4767  Internet: http://www.profium.com
Received on Saturday, 12 October 2002 04:32:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 21 September 2012 14:16:31 GMT