eye icon indicating copy to clipboard operation
eye copied to clipboard

Derived statements missed by filter query (2)

Open MichelSc opened this issue 3 months ago • 4 comments

This issue is still present with eye 11.22.5: #165

3 queries in the filter:

  • 'other query' must just be present, otherwise the error does not occur(!)
  • 'query 2' is more constrained than 'query 1' (?p is constrained to be infraflex:skillScrewResource)
# other query
{
    ?m match:participants ?ps.
    ?m match:definition ?d.
    ( ?ps 0 ) list:memberAt ?p0 .
    ( ?ps 1 ) list:memberAt ?p1 .
} => {
    zzz:result zzz:participant (?m ?d ?p0 ?p1).
}.

# query1 (less constrained)
{
    ?m rdf:type match:Match.
    ?m ?p ?o.
}=>{
    zzz:result zzz:query1 (?m ?p ?o).
}.

# query2 (more constrained)
{
    ?m rdf:type match:Match.
    ?p log:equalTo infraflex:skillScrewResource.
    ?m ?p ?o.
}=>{
    zzz:result zzz:query2 (?m ?p ?o).
}.

This is the result

# Processed by EYE v11.22.5 (2025-10-15)
# eye --quiet --nope --query filter.n3 --turtle ../../dataset-def/dataset.ttl --turtle ../../dataset-sampl1/dataset.ttl --turtle ../capability-new.ttl ../../upper-ontology/owl/rules.n3 ../../upper-ontology/utils/rules.n3 ../../upper-ontology/match/rules-new.n3 ../../top-ontology/event/rules.n3 ../../top-ontology/routing/rules.n3 ../../top-ontology/scenario/rules.n3

@prefix zzz: <urn:zzz:>.
@prefix infraflex: <https://ontology.flandersmake.be/infraflex/ontology#>.
@prefix unimaas: <urn:unimaas:>.
@prefix match: <https://ontology.flandersmake.be/match/ontology#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix event: <https://ontology.flandersmake.be/event/ontology#>.

zzz:result zzz:participant (_:sk_3 infraflex:SkillCellPlaceScrewStep unimaas:cellA unimaas:flashlightScrewCover).
zzz:result zzz:participant (_:sk_4 infraflex:SkillCellPlaceScrewStep unimaas:cellB unimaas:flashlightScrewCover).
zzz:result zzz:query1 (_:sk_3 infraflex:skillScrewResource unimaas:cellA).
zzz:result zzz:query1 (_:sk_3 match:participants _:sk_1).
zzz:result zzz:query1 (_:sk_3 match:definition infraflex:SkillCellPlaceScrewStep).
zzz:result zzz:query1 (_:sk_3 rdf:type match:Match).
zzz:result zzz:query1 (_:sk_3 event:matchDependency ()).
zzz:result zzz:query2 (_:sk_3 infraflex:skillScrewResource unimaas:cellA).
zzz:result zzz:query2 (_:sk_4 infraflex:skillScrewResource unimaas:cellB).
# 2025-10-24T10:37:52.149Z in=1628 out=9 ent=1611 step=72931 brake=10 inf=6051436 sec=0.477 inf/sec=12686449
# ENDS

Note that the last result of 'query 2' is not returned by 'query 1': NOK.

If we remove 'other query', then result is as expected.

Hope you have enough information. I am not sure I will have the time to produce a minimal reproduction scenario.

MichelSc avatar Oct 24 '25 10:10 MichelSc