Peter,
On 29 Jan 2009, at 23:11, Peter Ansell wrote:
What was the rationale behind having both void:target and the combination of void:subjectsTarget and void:objectsTarget? I would have thought that linksets would always be directed, otherwise it leaves you uncertain about whether you can actually find anything in one set or the triples are actually contained in the other dataset. At least with subjectsTarget you can always be sure that that dataset will contain the relevant triples.
Reiterating what others said: Containment of link triples in a dataset, and direction of the link statements, are two separate issues.
Containment (which dataset physically contains the triples, that is, where can I find them via resolving URIs or via SPARQL queries or dumps) is indicated via void:subset. The linkset is a subset of the dataset that contains the link triples.
Directionality of the statements (which dataset provides the subjects, and which the objects?) is an orthogonal question. Note that dataset A could contain links to B of the shape "a:foo dc:creator b:bar" or of the shape "b:bar dc:creator a:foo". SubjectsTarget and objectsTarget can be used to distinguish between them.
The superproperty void:target was included for cases where we want to specify less about the linkset. For example, I might just want to express the general fact that A contains links to B, without saying anything about what predicate is used or what the subjects and objects are.
Hope that explains things. Best, Richard
If people use two void:target statements as part of a linkset can we only assume that they are trying to include triples from both datasets at once? If so, the target's might contain anything resembling the statistics that one might be able to apply to directed linksets where one is really only trying to describe a subset of triples from void:subjectsTarget that happen to have object resources in another known dataset? Cheers, Peter
