@prefix ex: <https://sparql.orthodb.org/.well-known/sparql-examples/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .

ex:7 a sh:SPARQLExecutable,
        sh:SPARQLSelectExecutable ;
    rdfs:comment "Find A.thaliana genes with their properties by a list of their gene symbols/names"@en ;
    sh:prefixes _:sparql_examples_prefixes ;
    sh:select """PREFIX up: <http://purl.uniprot.org/core/>
PREFIX : <http://purl.orthodb.org/>

SELECT *
WHERE {
    ?gene a :Gene;
        up:organism [up:scientificName ?sciname] .
    FILTER(strstarts (?sciname, "Arabidopsis thaliana" ))
    ?gene :name ?gene_name; :description ?description; :geneTranslatedLength ?aa_seq_length.
    OPTIONAL {?gene :geneNbExons ?geneNbExons}.
    ?gene :aaSequence ?sequence
    FILTER(?gene_name in(
        "CHX10"
        ,"GPX1"
        ,"MAG"
        ,"MSRB6"
        ,"MYH"
        ,"POLH"
        ,"RPA3A"
        ,"UVR3"
        ,"XRCC1"
    ))
} ORDER BY ?aa_seq_length""" ;
    schema:target <https://sparql.orthodb.org/sparql/> .

