Hi

Your query selects all triples without  source, at first. If  the two
elements without  author have a source they will be discarded, because the
value added by "optional" clause have to respect "where clauses" anyway.

You should try to use UNION construct, because you want to retrieve a list
with
-item without a source
-item without author



2012/9/10 Katja Siegemund <[email protected]>

> Hi,
>
> I'm having trouble with constructing a query that uses "or". I already
> tried optional, but it does not lead to the expected result. I'd be glad if
> someone could help me. I'd like to query for:
>
> all var bindings that have no author or no source.
>
> I tried:
>
> SELECT ?r WHERE {?r a ro:FR. FILTER NOT EXISTS {?r ro:hasSource ?a}
> OPTIONAL {FILTER NOT EXISTS {?r ro:isAuthoredBy ?a}}}";
>
> But it only computes the first part (source).
>
> If I have 3 items without a source and 2 others with no author, then I
> should get 5 results instead only the first 3. What am I doing wrong?
>
> Thanks in advance,
> Katja
>
>


-- 
ufficio:  0542 32640
mail:     [email protected]
cell:      349 3508348
skype:  [email protected]

Reply via email to