- From: Souripriya Das <SOURIPRIYA.DAS@oracle.com>
- Date: Thu, 9 Feb 2012 20:28:57 -0800 (PST)
- To: <juanfederico@gmail.com>
- Cc: <public-rdb2rdf-wg@w3.org>
- Message-ID: <1a60244d-d719-4483-a8a6-c10f85bf6eb6@default>
If you are going to materialize the RDF data (for all the million rows): the error will show up (b/c every row gets mapped).
If you are using virtual RDF, you'll not hit any error until and unless you happen to access the bad row and try to construct an IRI.
Thanks,
- Souri.
----- Original Message -----
From: juanfederico@gmail.com
To: SOURIPRIYA.DAS@oracle.com
Cc: public-rdb2rdf-wg@w3.org
Sent: Thursday, February 9, 2012 11:08:59 PM GMT -05:00 US/Canada Eastern
Subject: Re: negative test case question
But you said initially that the failure of the mapping would depend on the data. I understand that if in the data, everything is an IRI, then the mapping succeeded. If everything was not an IRI, then the mapping would fail because all the triples are "wrong". But if the data is mixed. Is the mapping right or wrong?
On Thu, Feb 9, 2012 at 9:53 PM, Souripriya Das < SOURIPRIYA.DAS@oracle.com > wrote:
If the SPARQL query you are executing does not need to return or use the constructed IRI from that one bad row, then the query should succeed. Otherwise it should fail with an error such as "illegal IRI in data" or something along that line.
Thanks,
- Souri.
----- Original Message -----
From: juanfederico@gmail.com
To: SOURIPRIYA.DAS@oracle.com
Cc: public-rdb2rdf-wg@w3.org
Sent: Thursday, February 9, 2012 10:37:08 PM GMT -05:00 US/Canada Eastern
Subject: Re: negative test case question
Ok. I see.
If I have one million rows and they all have IRIs for the FirstName column, except for one row... then what happens? Or is this just an implementation issue.
Juan Sequeda
+1-575-SEQ-UEDA
www.juansequeda.com
On Thu, Feb 9, 2012 at 9:16 PM, Souripriya Das < SOURIPRIYA.DAS@oracle.com > wrote:
Whether the following mapping will fail or not will depend upon the data:
<TriplesMap1>
a rr:TriplesMap;
rr:logicalTable [ rr:tableName "Employees" ];
rr:subjectMap [ rr:column "FirstName" ];
rr:predicateObjectMap
[
rr:predicate foaf:name;
rr:objectMap [ rr:column "FirstName" ]
]
For example, it will not fail for the following data (with uncommon first names) in the EMPLOYEES table:
FirstName
-----------
http://example.com/ns#John
http://example.com/ns#Mary
Thanks,
- Souri.
----- Original Message -----
From: bvillazon@fi.upm.es
To: juanfederico@gmail.com
Cc: richard@cyganiak.de , public-rdb2rdf-wg@w3.org
Sent: Thursday, February 9, 2012 9:17:46 PM GMT -05:00 US/Canada Eastern
Subject: Re: negative test case question
Hi Juan
Thanks for this
On Feb 10, 2012, at 1:56 AM, Juan Sequeda wrote:
Let me clarify
The following mapping is correct:
<TriplesMap1>
a rr:TriplesMap;
rr:logicalTable [ rr:tableName "Employees" ];
rr:subjectMap [ rr:column "FirstName"; rr:termType rr:BlankNode ];
rr:predicateObjectMap
[
rr:predicate foaf:name;
rr:objectMap [ rr:column "FirstName" ]
]
.
The following mapping should fail:
<TriplesMap1>
a rr:TriplesMap;
rr:logicalTable [ rr:tableName "Employees" ];
rr:subjectMap [ rr:column "FirstName" ];
rr:predicateObjectMap
[
rr:predicate foaf:name;
rr:objectMap [ rr:column "FirstName" ]
]
.
right?
According to the spec
<<
If the term map does not have a rr:termType property, then its term type is:
• rr:Literal , if it is an object map and at least one of the following conditions is true:
• It is a column-based term map .
• It has a rr:language property (and thus a specified language tag ).
• It has a rr:datatype property (and thus a specified datatype ).
• rr:IRI , otherwise.
>>
So, if the FirstName column has "normal" first names … I think yes, it would fail
Richard?
Boris
Juan Sequeda
+1-575-SEQ-UEDA
www.juansequeda.com
On Thu, Feb 9, 2012 at 6:33 PM, Richard Cyganiak < richard@cyganiak.de > wrote:
Juan,
On 9 Feb 2012, at 23:51, Juan Sequeda wrote:
> I'm coming up with r2rml mappings that should fail.
>
> The following is correct:
>
> <TriplesMap1>
> a rr:TriplesMap;
> rr:logicalTable [ rr:tableName "Employees" ];
> rr:subjectMap [ rr:column "FirstName"; rr:termType rr:BlankNode ];
> rr:predicateObjectMap
> [
> rr:predicate foaf:name;
> rr:objectMap [ rr:column "FirstName" ]
> ]
> .
>
>
> If I take the rr:TermType rr:BlankNode, that should fail, right?
I'm not sure what you mean. Do you mean, if you add “rr:termType rr:BlankNode” to the object map, then it should fail?
Why do you think so?
Richard
Received on Friday, 10 February 2012 04:29:27 UTC