@prefix ex:<https://purl.expasy.org/sparql-examples/neXtProt/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
ex:NXQ_09287 a sh:SPARQLExecutable, sh:SPARQLSelectExecutable ;
  sh:prefixes _:sparql_examples_prefixes ;
  rdfs:comment '''Check there are no entries with GO molecular function annotations from neXtProt for which the evidence code is NOT experimental evidence (ECO:0000006) or sequence similarity evidence used in manual assertion (ECO:0000250)'''@en ;
  schema:keywords "QC", "evidence", "ECO", "function" ;
  schema:target <https://sparql.nextprot.org/sparql> ;
  sh:select '''PREFIX : <http://nextprot.org/rdf/>
PREFIX cv: <http://nextprot.org/rdf/terminology/>
PREFIX source: <http://nextprot.org/rdf/source/>

select distinct ?entry where {
  ?entry :isoform /:goMolecularFunction /:evidence ?ev1.
  ?ev1 :assignedBy source:NextProt.
  ?ev1 :evidenceCode ?eco.
  filter (?eco not in (cv:ECO_0000006,cv:ECO_0000250))
}''' .
