@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_00226 a sh:SPARQLExecutable,
        sh:SPARQLSelectExecutable ;
    rdfs:comment "Proteins with at least 2 validating peptides >=9aa found in blood plasma, urine or cerebrospinal fluid (criteria for biomarker)]."@en ;
    sh:prefixes _:sparql_examples_prefixes ;
    sh:select """PREFIX : <http://nextprot.org/rdf/>
PREFIX source: <http://nextprot.org/rdf/source/>

SELECT DISTINCT ?entry WHERE {
values ?pepsources {
 source:PeptideAtlas_human_Cerebrospinal_Fluid
 source:PeptideAtlas_human_Blood_Plasma
 source:PeptideAtlas_human_Urine
 source:MassIVE_human_Cerebrospinal_Fluid
 source:MassIVE_human_Blood_Plasma
 source:MassIVE_human_Urine
 }
 ?entry :isoform ?iso.
 ?iso :peptideMapping ?pm .
 ?pm :peptideName ?pepid .
 ?pm :evidence / :assignedBy ?pepsources .
 ?pm :proteotypic true .
 ?pm :start ?p1 ; :end ?p2 .
 filter(?p2-?p1 >= 8) # peptide length >= 9
}
group by ?entry having(count (distinct ?pepid) > 1) # at least two such peptides""" ;
    schema:keywords "dataset",
        "peptide",
        "proteomics",
        "tutorial" ;
    schema:target <https://sparql.nextprot.org/sparql> .

