@prefix ex: <https://www.bgee.org/sparql/.well-known/sparql-examples/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <https://schema.org/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix spex:<https://purl.expasy.org/sparql-examples/ontology#> .

ex:027-biosodafrontend a sh:SPARQLExecutable, sh:SPARQLSelectExecutable ;
    rdfs:comment "Genes expressed in the human pancreas and their annotations in UniProt."@en ;
    sh:prefixes _:sparql_examples_prefixes ;
    sh:select """PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX up: <http://purl.uniprot.org/core/>
PREFIX obo: <http://purl.obolibrary.org/obo/>
PREFIX genex: <http://purl.org/genex#>
PREFIX lscr: <http://purl.org/lscr#>
PREFIX orth: <http://purl.org/net/orth#>
SELECT DISTINCT ?geneEns ?uniprot ?annotation_text {
	{
		SELECT ?geneEns {
			?geneB a orth:Gene .
			?geneB genex:isExpressedIn ?cond .
			?cond genex:hasAnatomicalEntity ?anat .
				?geneB lscr:xrefEnsemblGene ?geneEns .
			?anat rdfs:label 'pancreas' .
			?geneB orth:organism ?o .
			?o obo:RO_0002162 ?taxon2 .
			?taxon2 up:commonName 'human' .
		} LIMIT 100
	}
	SERVICE <https://sparql.uniprot.org/sparql> {
		?uniprot rdfs:seeAlso / up:transcribedFrom ?geneEns .
		?uniprot up:annotation ?annotation .
		?annotation rdfs:comment ?annotation_text .
	}
}""" ;
    schema:target <https://www.bgee.org/sparql/> ;
    spex:federatesWith <https://sparql.uniprot.org/sparql> .
