@prefix ex: <https://sparql.uniprot.org/.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 rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

ex:72_enzymes_mapping_to_PDB a sh:SPARQLExecutable,
        sh:SPARQLSelectExecutable ;
    rdfs:comment '''Select a mapping of UniProtKB enzymes to PDB entries using the UniProtKB cross-references to the <a href="https://www.uniprot.org/database/DB-0070">PDB</a> database.'''^^rdf:HTML ;
    sh:prefixes _:sparql_examples_prefixes ;
    sh:select """PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX up: <http://purl.uniprot.org/core/>

SELECT
  ?protein
  ?db
WHERE
{
  ?protein a up:Protein .
  ?protein rdfs:seeAlso ?db .
  ?db up:database <http://purl.uniprot.org/database/PDB> .
  {
    ?protein up:enzyme ?enzyme .
  } UNION {
    ?protein up:annotation/rdf:type up:Catalytic_Activity_Annotation .
  }
}""" ;
    schema:keywords "cross-reference" , "enzyme" , "PDB" , "mapping" ;
    schema:target <https://sparql.uniprot.org/sparql/> .

