@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix rdf4j: <http://rdf4j.org/schema/rdf4j#> .
@prefix sesame: <http://www.openrdf.org/schema/sesame#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix fn: <http://www.w3.org/2005/xpath-functions#> .

<http://purl.uniprot.org/unirules/MF_03111#construct> a <http://www.w3.org/ns/shacl#SPARQLRule>,
    <http://spinrdf.org/sp#Construct>;
  <https://hamap.expasy.org/rdf/vocab#addsTriple> <http://purl.uniprot.org/unirules/MF_03111#construct-template-22>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-2>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-116>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-97>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-136>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-78>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-57>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-103>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-42>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-56>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-117>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-99>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-27>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-72>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-10>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-63>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-125>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-96>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-138>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-28>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-13>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-114>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-11>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-66>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-61>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-68>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-115>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-6>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-52>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-71>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-67>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-1>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-88>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-105>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-26>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-79>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-49>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-85>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-89>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-41>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-60>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-36>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-29>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-14>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-112>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-38>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-25>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-50>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-4>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-47>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-24>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-118>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-91>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-70>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-44>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-101>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-18>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-119>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-19>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-33>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-15>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-55>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-39>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-58>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-93>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-131>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-8>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-108>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-31>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-21>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-16>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-45>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-133>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-54>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-132>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-98>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-20>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-62>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-37>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-65>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-0>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-127>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-76>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-34>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-73>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-130>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-12>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-80>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-75>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-87>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-46>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-77>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-137>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-113>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-102>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-83>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-17>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-86>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-134>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-23>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-135>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-111>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-110>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-106>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-53>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-43>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-3>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-7>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-32>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-90>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-81>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-107>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-121>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-64>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-9>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-69>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-48>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-109>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-128>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-40>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-30>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-51>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-82>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-35>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-95>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-84>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-92>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-123>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-100>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-5>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-74>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-104>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-129>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-126>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-124>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-59>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-120>,
    <http://purl.uniprot.org/unirules/MF_03111#construct-template-122>, <http://purl.uniprot.org/unirules/MF_03111#construct-template-94>;
  <http://www.w3.org/ns/shacl#prefixes> <http://purl.uniprot.org/unirules/>;
  <http://spinrdf.org/sp#where> <http://purl.uniprot.org/unirules/MF_03111#construct-where-list-0>;
  <http://spinrdf.org/sp#templates> <http://purl.uniprot.org/unirules/MF_03111#construct-template-list-0>;
  <http://www.w3.org/ns/shacl#construct> """CONSTRUCT {
  _:819318 up:source unirule:MF_03111 .
  _:819319 up:source unirule:MF_03111 .
  _:819320 up:source unirule:MF_03111 .
  _:819321 up:source unirule:MF_03111 .
  _:819322 up:source unirule:MF_03111 .
  _:819323 up:source unirule:MF_03111 .
  _:819324 up:source unirule:MF_03111 .
  _:819325 up:source unirule:MF_03111 .
  _:819326 up:source unirule:MF_03111 .
  _:819327 up:source unirule:MF_03111 .
  _:819328 up:source unirule:MF_03111 .
  _:819329 up:source unirule:MF_03111 .
  _:819330 up:source unirule:MF_03111 .
  _:819331 up:source unirule:MF_03111 .
  _:819332 up:source unirule:MF_03111 .
  _:819333 up:source unirule:MF_03111 .
  _:819334 up:source unirule:MF_03111 .
  _:819335 up:source unirule:MF_03111 .
  _:819336 up:source unirule:MF_03111 .
  _:819337 up:source unirule:MF_03111 .
  _:819338 up:source unirule:MF_03111 .
  _:819339 up:source unirule:MF_03111 .
  _:819340 up:source unirule:MF_03111 .
  _:819341 up:source unirule:MF_03111 .
  _:819342 up:source unirule:MF_03111 .
  ?this up:annotation ?annotation0 ,
      ?annotation1 ,
      ?annotation2 ,
      ?annotation4 ;
    up:classifiedWith GO:0006744 ,
      GO:0008270 ,
      GO:0016831 ,
      GO:0031314 ,
      keyword:456 ,
      keyword:472 ,
      keyword:479 ,
      keyword:496 ,
      keyword:831 ,
      keyword:862 ,
      keyword:999 .
  ?annotation0 up:cofactor chebi:29105 ;
    rdf:type up:Cofactor_Annotation .
  ?annotation1 a up:Pathway_Annotation ;
    rdfs:comment 'Cofactor biosynthesis; ubiquinone biosynthesis.' .
  ?annotation2 a up:Subcellular_Location_Annotation .
  ?annotation2li3 up:cellularComponent <http://purl.uniprot.org/locations/null>;
    up:orientation <http://purl.uniprot.org/locations/null>;
    up:topology <http://purl.uniprot.org/locations/null>.
  ?annotation4 a up:Similarity_Annotation ;
    rdfs:comment 'Belongs to the COQ4 family.' .
  ?case7 up:alternativeName ?name10 ,
      ?name11 ;
    up:recommendedName ?name8 .
  ?name8 up:fullName ?nameValue9 ;
    rdf:type up:Structured_Name .
  ?name10 up:fullName 'Coenzyme Q biosynthesis protein 4' ;
    rdf:type up:Structured_Name .
  ?name11 up:ecName '4.1.1.130' ;
    up:fullName '4-hydroxy-3-methoxy-5-polyprenylbenzoate decarboxylase' ;
    rdf:type up:Structured_Name .
  ?case14 up:alternativeName ?name16 ,
      ?name17 ;
    up:recommendedName ?name15 .
  ?name15 up:fullName 'Ubiquinone biosynthesis protein COQ4 homolog, mitochondrial' ;
    rdf:type up:Structured_Name .
  ?name16 up:fullName 'Coenzyme Q biosynthesis protein 4 homolog' ;
    rdf:type up:Structured_Name .
  ?name17 up:ecName '4.1.1.130' ;
    up:fullName '4-hydroxy-3-methoxy-5-polyprenylbenzoate decarboxylase' ;
    rdf:type up:Structured_Name .
  ?pfs21 up:annotation ?annotation22 .
  ?annotation22 faldo:begin ?pfsb23 ;
    faldo:end ?pfse24 ;
    up:ligand ?ligand25 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb23 faldo:position ?thisPositionOn26 ;
    rdf:type faldo:ExactPosition .
  ?pfse24 faldo:position ?thisPositionOn27 ;
    rdf:type faldo:ExactPosition .
  ?ligand25 rdfs:subClassOf chebi:29105 .
  ?pfs28 up:annotation ?annotation29 .
  ?annotation29 faldo:begin ?pfsb30 ;
    faldo:end ?pfse31 ;
    up:ligand ?ligand32 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb30 faldo:position ?thisPositionOn33 ;
    rdf:type faldo:ExactPosition .
  ?pfse31 faldo:position ?thisPositionOn34 ;
    rdf:type faldo:ExactPosition .
  ?ligand32 rdfs:subClassOf chebi:29105 .
  ?pfs35 up:annotation ?annotation36 .
  ?annotation36 faldo:begin ?pfsb37 ;
    faldo:end ?pfse38 ;
    up:ligand ?ligand39 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb37 faldo:position ?thisPositionOn40 ;
    rdf:type faldo:ExactPosition .
  ?pfse38 faldo:position ?thisPositionOn41 ;
    rdf:type faldo:ExactPosition .
  ?ligand39 rdfs:subClassOf chebi:29105 .
  ?pfs42 up:annotation ?annotation43 .
  ?annotation43 faldo:begin ?pfsb44 ;
    faldo:end ?pfse45 ;
    up:ligand ?ligand46 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb44 faldo:position ?thisPositionOn47 ;
    rdf:type faldo:ExactPosition .
  ?pfse45 faldo:position ?thisPositionOn48 ;
    rdf:type faldo:ExactPosition .
  ?ligand46 rdfs:subClassOf chebi:29105 .
  _:819343 a rdf:Statement ;
    up:attribution _:819318 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation0 .
  _:819344 a rdf:Statement ;
    up:attribution _:819319 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation1 .
  _:819345 a rdf:Statement ;
    up:attribution _:819320 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation2 .
  _:819346 a rdf:Statement ;
    up:attribution _:819321 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation4 .
  _:819347 a rdf:Statement ;
    up:attribution _:819322 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:456 .
  _:819348 a rdf:Statement ;
    up:attribution _:819323 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:479 .
  _:819349 a rdf:Statement ;
    up:attribution _:819324 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:472 .
  _:819350 a rdf:Statement ;
    up:attribution _:819325 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:496 .
  _:819351 a rdf:Statement ;
    up:attribution _:819326 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:999 .
  _:819352 a rdf:Statement ;
    up:attribution _:819327 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:831 .
  _:819353 a rdf:Statement ;
    up:attribution _:819328 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:862 .
  _:819354 a rdf:Statement ;
    up:attribution _:819329 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0016831 .
  _:819355 a rdf:Statement ;
    up:attribution _:819330 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0008270 .
  _:819356 a rdf:Statement ;
    up:attribution _:819331 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0031314 .
  _:819357 a rdf:Statement ;
    up:attribution _:819332 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0006744 .
  _:819358 a rdf:Statement ;
    up:attribution _:819333 ;
    rdf:subject ?case7 ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name8 .
  _:819359 a rdf:Statement ;
    up:attribution _:819334 ;
    rdf:subject ?case7 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name10 .
  _:819360 a rdf:Statement ;
    up:attribution _:819335 ;
    rdf:subject ?case7 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name11 .
  _:819361 a rdf:Statement ;
    up:attribution _:819336 ;
    rdf:subject ?case14 ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name15 .
  _:819362 a rdf:Statement ;
    up:attribution _:819337 ;
    rdf:subject ?case14 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name16 .
  _:819363 a rdf:Statement ;
    up:attribution _:819338 ;
    rdf:subject ?case14 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name17 .
  _:819364 a rdf:Statement ;
    up:source unirule:MF_03111 ;
    rdf:subject ?pfs21 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation22 .
  _:819365 a rdf:Statement ;
    up:attribution _:819339 ;
    rdf:subject ?pfs21 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation22 .
  _:819366 a rdf:Statement ;
    up:source unirule:MF_03111 ;
    rdf:subject ?pfs28 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation29 .
  _:819367 a rdf:Statement ;
    up:attribution _:819340 ;
    rdf:subject ?pfs28 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation29 .
  _:819368 a rdf:Statement ;
    up:source unirule:MF_03111 ;
    rdf:subject ?pfs35 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation36 .
  _:819369 a rdf:Statement ;
    up:attribution _:819341 ;
    rdf:subject ?pfs35 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation36 .
  _:819370 a rdf:Statement ;
    up:source unirule:MF_03111 ;
    rdf:subject ?pfs42 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation43 .
  _:819371 a rdf:Statement ;
    up:attribution _:819342 ;
    rdf:subject ?pfs42 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation43 .
}
WHERE {
  #baseURI: http://purl.uniprot.org/unirule/MF_03111
  #Rule MF_03111 Created by:? on:2012-10-26 Modified by:Catherine Rivoire on:2025-04-01
  ?this up:organism ?thisOrganism ;
    rdfs:seeAlso signature:MF_03111 .
  ?thisOrganism rdfs:subClassOf+ taxon:2759 .
  BIND(URI(CONCAT(STR(?this), '#MF_03111a0')) AS ?annotation0) .
  BIND(URI(CONCAT(STR(?this), '#MF_03111a1')) AS ?annotation1) .
  BIND(URI(CONCAT(STR(?this), '#MF_03111a2')) AS ?annotation2) .
  BIND(URI(CONCAT(STR(?this), '#MF_03111a4')) AS ?annotation4) .
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch53 faldo:location ?templateMotifSequenceMatchRegionQ9Y3A054 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationQ9Y3A056 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarQ9Y3A0MF_0311149 .
    ?templateMotifSequenceMatchRegionQ9Y3A054 faldo:begin ?templateMotifSequenceMatchBeginQ9Y3A055 .
    ?templateMotifSequenceMatchBeginQ9Y3A055 faldo:position ?templateMotifSequenceMatchBeginPositionQ9Y3A050 ;
      faldo:reference isoform:Q9Y3A0-1 .
    ?templateMotifSequenceProfileAlignmentOperationQ9Y3A056 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch57 faldo:location ?targetMotifMatchRegionMatch58 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0311160 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarQ9Y3A0MF_0311151 .
    ?targetMotifMatchRegionMatch58 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0311159 .
    ?targetMotifMatchRegionMatchBeginMF_0311159 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0311152 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0311160 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarQ9Y3A0MF_0311149, 1, (STRLEN(?templateMotifCigarQ9Y3A0MF_0311149) - STRLEN(REPLACE(?templateMotifCigarQ9Y3A0MF_0311149, CONCAT('^(?:-*[^-]){', STR(((163 - ?templateMotifSequenceMatchBeginPositionQ9Y3A050) + 1)), '}'), '')))), '[a-z]', '')) AS ?step161) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311151, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311151) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311151, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step161), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311151, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311151) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311151, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step161), '}'), '')))), '[^-]', ''))) AS ?step262) .
    BIND(((?step262 + ?targetMotifMatchRegionMatchBeginPositionMF_0311152) - 1) AS ?thisPositionOn26) .
    BIND(?thisPositionOn26 AS ?thisPositionOn27) .
    BIND(?this AS ?pfs1t63) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn26))) AS ?pfsb23) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn27))) AS ?pfse24) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn26, 1) = 'H')) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a22')) AS ?annotation22) .
    BIND(?this AS ?pfs21) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch68 faldo:location ?templateMotifSequenceMatchRegionQ9Y3A069 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationQ9Y3A071 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarQ9Y3A0MF_0311164 .
    ?templateMotifSequenceMatchRegionQ9Y3A069 faldo:begin ?templateMotifSequenceMatchBeginQ9Y3A070 .
    ?templateMotifSequenceMatchBeginQ9Y3A070 faldo:position ?templateMotifSequenceMatchBeginPositionQ9Y3A065 ;
      faldo:reference isoform:Q9Y3A0-1 .
    ?templateMotifSequenceProfileAlignmentOperationQ9Y3A071 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch72 faldo:location ?targetMotifMatchRegionMatch73 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0311175 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarQ9Y3A0MF_0311166 .
    ?targetMotifMatchRegionMatch73 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0311174 .
    ?targetMotifMatchRegionMatchBeginMF_0311174 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0311167 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0311175 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarQ9Y3A0MF_0311164, 1, (STRLEN(?templateMotifCigarQ9Y3A0MF_0311164) - STRLEN(REPLACE(?templateMotifCigarQ9Y3A0MF_0311164, CONCAT('^(?:-*[^-]){', STR(((164 - ?templateMotifSequenceMatchBeginPositionQ9Y3A065) + 1)), '}'), '')))), '[a-z]', '')) AS ?step176) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311166, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311166) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311166, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step176), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311166, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311166) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311166, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step176), '}'), '')))), '[^-]', ''))) AS ?step277) .
    BIND(((?step277 + ?targetMotifMatchRegionMatchBeginPositionMF_0311167) - 1) AS ?thisPositionOn33) .
    BIND(?thisPositionOn33 AS ?thisPositionOn34) .
    BIND(?this AS ?pfs1t78) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn33))) AS ?pfsb30) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn34))) AS ?pfse31) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn33, 1) = 'D')) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a29')) AS ?annotation29) .
    BIND(?this AS ?pfs28) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch83 faldo:location ?templateMotifSequenceMatchRegionQ9Y3A084 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationQ9Y3A086 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarQ9Y3A0MF_0311179 .
    ?templateMotifSequenceMatchRegionQ9Y3A084 faldo:begin ?templateMotifSequenceMatchBeginQ9Y3A085 .
    ?templateMotifSequenceMatchBeginQ9Y3A085 faldo:position ?templateMotifSequenceMatchBeginPositionQ9Y3A080 ;
      faldo:reference isoform:Q9Y3A0-1 .
    ?templateMotifSequenceProfileAlignmentOperationQ9Y3A086 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch87 faldo:location ?targetMotifMatchRegionMatch88 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0311190 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarQ9Y3A0MF_0311181 .
    ?targetMotifMatchRegionMatch88 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0311189 .
    ?targetMotifMatchRegionMatchBeginMF_0311189 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0311182 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0311190 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarQ9Y3A0MF_0311179, 1, (STRLEN(?templateMotifCigarQ9Y3A0MF_0311179) - STRLEN(REPLACE(?templateMotifCigarQ9Y3A0MF_0311179, CONCAT('^(?:-*[^-]){', STR(((167 - ?templateMotifSequenceMatchBeginPositionQ9Y3A080) + 1)), '}'), '')))), '[a-z]', '')) AS ?step191) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311181, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311181) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311181, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step191), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311181, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311181) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311181, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step191), '}'), '')))), '[^-]', ''))) AS ?step292) .
    BIND(((?step292 + ?targetMotifMatchRegionMatchBeginPositionMF_0311182) - 1) AS ?thisPositionOn40) .
    BIND(?thisPositionOn40 AS ?thisPositionOn41) .
    BIND(?this AS ?pfs1t93) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn40))) AS ?pfsb37) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn41))) AS ?pfse38) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn40, 1) = 'H')) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a36')) AS ?annotation36) .
    BIND(?this AS ?pfs35) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch98 faldo:location ?templateMotifSequenceMatchRegionQ9Y3A099 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationQ9Y3A0101 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarQ9Y3A0MF_0311194 .
    ?templateMotifSequenceMatchRegionQ9Y3A099 faldo:begin ?templateMotifSequenceMatchBeginQ9Y3A0100 .
    ?templateMotifSequenceMatchBeginQ9Y3A0100 faldo:position ?templateMotifSequenceMatchBeginPositionQ9Y3A095 ;
      faldo:reference isoform:Q9Y3A0-1 .
    ?templateMotifSequenceProfileAlignmentOperationQ9Y3A0101 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch102 faldo:location ?targetMotifMatchRegionMatch103 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_03111105 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarQ9Y3A0MF_0311196 .
    ?targetMotifMatchRegionMatch103 faldo:begin ?targetMotifMatchRegionMatchBeginMF_03111104 .
    ?targetMotifMatchRegionMatchBeginMF_03111104 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0311197 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_03111105 edam:has_input signature:MF_03111 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarQ9Y3A0MF_0311194, 1, (STRLEN(?templateMotifCigarQ9Y3A0MF_0311194) - STRLEN(REPLACE(?templateMotifCigarQ9Y3A0MF_0311194, CONCAT('^(?:-*[^-]){', STR(((179 - ?templateMotifSequenceMatchBeginPositionQ9Y3A095) + 1)), '}'), '')))), '[a-z]', '')) AS ?step1106) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311196, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311196) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311196, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step1106), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarQ9Y3A0MF_0311196, 1, (STRLEN(?targetMotifMatchCigarQ9Y3A0MF_0311196) - STRLEN(REPLACE(?targetMotifMatchCigarQ9Y3A0MF_0311196, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step1106), '}'), '')))), '[^-]', ''))) AS ?step2107) .
    BIND(((?step2107 + ?targetMotifMatchRegionMatchBeginPositionMF_0311197) - 1) AS ?thisPositionOn47) .
    BIND(?thisPositionOn47 AS ?thisPositionOn48) .
    BIND(?this AS ?pfs1t108) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn47))) AS ?pfsb44) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn48))) AS ?pfse45) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn47, 1) = 'E')) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a43')) AS ?annotation43) .
    BIND(?this AS ?pfs42) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ taxon:4930 .
    BIND(?this AS ?case5) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ taxon:6237 .
    BIND(?this AS ?case6) .
  }
  OPTIONAL {
    ?this a up:Protein .
    VALUES ?supertaxon109 {taxon:4751 taxon:6237}
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ ?supertaxon109 .
    BIND(?this AS ?case7) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a8')) AS ?name8) .
    OPTIONAL {
      ?this up:encodedBy ?gene113 .
      ?gene113 up:locusName ?geneLocus111 .
    }
    OPTIONAL {
      ?this up:encodedBy ?gene113 .
      ?gene113 up:orfName ?geneOrf112 .
    }
    BIND(IF(BOUND(?geneLocus111), ?geneLocus111, ?geneOrf112) AS ?part110) .
    BIND(CONCAT('Ubiquinone biosynthesis protein ', ?part110, ', mitochondrial') AS ?nameValue9) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a10')) AS ?name10) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a11')) AS ?name11) .
  }
  OPTIONAL {
    ?this a up:Protein .
    VALUES ?supertaxon114 {taxon:40674 taxon:4895}
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ ?supertaxon114 .
    BIND(?this AS ?case12) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    FILTER (! (EXISTS {
      VALUES ?supertaxon115 {taxon:7742 taxon:4751}
      ?thisOrganism rdfs:subClassOf+ ?supertaxon115 .
    })) .
    BIND(?this AS ?case13) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    FILTER (! (EXISTS {
      VALUES ?supertaxon116 {taxon:4751 taxon:6237}
      ?thisOrganism rdfs:subClassOf+ ?supertaxon116 .
    })) .
    BIND(?this AS ?case14) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a15')) AS ?name15) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a16')) AS ?name16) .
    BIND(URI(CONCAT(STR(?this), '#MF_03111a17')) AS ?name17) .
  }
  OPTIONAL {
    ?this a up:Protein .
    VALUES ?supertaxon117 {taxon:7742 taxon:4751 taxon:5782}
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ ?supertaxon117 .
    BIND(?this AS ?case18) .
  }
  OPTIONAL {
    ?this a up:Protein .
    {
      ?this up:organism ?thisOrganism .
      ?thisOrganism rdfs:subClassOf+ taxon:4751 .
      FILTER (! (EXISTS {
        ?thisOrganism rdfs:subClassOf+ taxon:4930 .
      })) .
    } UNION {
      ?this up:organism ?thisOrganism .
      ?thisOrganism rdfs:subClassOf+ taxon:7742 .
    }
    BIND(?this AS ?case19) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    FILTER (! (EXISTS {
      VALUES ?supertaxon118 {taxon:4930 taxon:40674 taxon:4895}
      ?thisOrganism rdfs:subClassOf+ ?supertaxon118 .
    })) .
    BIND(?this AS ?case20) .
  }
}
""" .

<http://purl.uniprot.org/unirules/MF_03111> <http://www.w3.org/ns/shacl#rule> <http://purl.uniprot.org/unirules/MF_03111#construct> .
