.symbol_type Ref .symbol_type Uri .symbol_type Value .decl part(uri:Uri, supplier:Uri) .input part .decl fact(part:Uri, key:Uri, value:Value) .input fact .decl warning(part:Uri, msg:symbol) .output warning .decl part_status(part:Uri, status:Value) .decl active(part:Uri) part_status(part, status) :- fact(part, "http://purl.org/ee/digikey-fact-key#1989", status). active(part) :- part_status(part, "Active"). warning(part, cat("Not active from ", supplier)) :- part(part, supplier), !active(part). /* active(part) :- fact(part, "http://purl.org/ee/digikey-fact-key#1989", "Active"). warning(part, "Not active") :- fact(part, "http://purl.org/ee/digikey-fact-key#1989", status), status != "Active". */