Re: Bug in DM test D024?

* Richard Cyganiak <richard@cyganiak.de> [2012-06-07 17:32+0200]
> Hi Boris, Eric,
> 
> The DM spec says that the row graph contains:
> 
> [[
> a reference triple for each <column name list> in a table's foreign keys where none of the column values is NULL.
> ]]

Yeah, that could have been "has at least one non-NULL value", which is the semantics of MATCH TYPE FULL.
Unique keys permit any unique arrangements of NULLs so it really is up to the foreign key match type semantics we want to support.
That said, we haven't spec'd how to embed NULL values in IRIs.
Most importantly, most joins are of the form (referrer.a1=referent.a1 … AND referrer.aⁿ=referent.aⁿ), which corresponds to MATCH TYPE FULL.

It will be a lot easier for future versions to extend the DM (to suport MATCH TYPE DEFAULT) than to reduce the DM so we have plenty of time to reconsider this later.


> In create.sql for D024 we have:
> 
> [[
> INSERT INTO "Source" ("ID", "attrA", "attrB")
>              VALUES (1101, 'K2A22', NULL   );
> ]]
> 
> And then we have a triple in directGraph.ttl:
> 
> [[
> <Source/ID=1101> <Source#ref-attrA;attrB> <Target/PK=1011> .
> ]]
> 
> I believe this triple shouldn't be there, because one of the involved column values is NULL.
> 
> Or am I misunderstanding something?

Nope, I totally agree.

also, D021:
[[
- <Source/ID-1101> <Source#ref-attrA.attrB> <Target/PK-1011> .
- <Source/ID-1102> <Source#ref-attrA.attrB> <Target/PK-1012> .
]]


> Best,
> Richard

-- 
-ericP

Received on Thursday, 7 June 2012 17:08:57 UTC