@prefix rdf: . @prefix rdfs: . @prefix mf: . @prefix qt: . @prefix dawgt: . <> rdf:type mf:Manifest ; rdfs:comment "Test of boolean expressions" ; mf:entries ( <#dawg-bev-1> <#dawg-bev-2> <#dawg-bev-3> <#dawg-bev-4> <#dawg-bev-5> <#dawg-bev-6> ) . <#dawg-bev-1> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - true" ; rdfs:comment "Non-zero numerics, non-empty strings, and the true boolean have an EBV of true" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result . <#dawg-bev-2> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - false" ; rdfs:comment "Zero-valued numerics, the empty string, and the false boolean have an EBV of false" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result . <#dawg-bev-3> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - &&" ; rdfs:comment "The && operator takes the EBV of its operands" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result . <#dawg-bev-4> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - ||" ; rdfs:comment "The || operator takes the EBV of its operands" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result . <#dawg-bev-5> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - optional" ; rdfs:comment "The EBV of an unbound value or a literal with an unknown datatype is a type error, which eliminates the solution in question" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result . <#dawg-bev-6> a mf:QueryEvaluationTest ; mf:name "Test 'boolean effective value' - unknown types" ; rdfs:comment "Negating a type error is still a type error" ; dawgt:approvedBy ; dawgt:approval dawgt:Approved ; mf:action [ qt:query ; qt:data ] ; mf:result .