@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_00649#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_00649#construct-template-64>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-32>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-47>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-41>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-65>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-67>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-42>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-66>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-44>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-0>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-13>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-68>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-8>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-17>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-43>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-30>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-35>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-28>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-45>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-69>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-20>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-16>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-10>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-40>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-61>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-85>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-15>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-2>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-54>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-18>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-56>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-4>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-62>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-86>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-12>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-21>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-1>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-63>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-33>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-51>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-19>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-29>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-39>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-81>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-53>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-82>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-36>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-83>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-26>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-60>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-6>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-84>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-22>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-48>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-3>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-25>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-7>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-24>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-80>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-59>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-27>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-11>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-9>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-37>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-58>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-52>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-38>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-5>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-55>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-31>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-57>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-49>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-50>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-23>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-46>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-78>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-77>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-79>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-73>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-74>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-75>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-76>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-70>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-71>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-72>,
    <http://purl.uniprot.org/unirules/MF_00649#construct-template-14>, <http://purl.uniprot.org/unirules/MF_00649#construct-template-34>;
  <http://www.w3.org/ns/shacl#prefixes> <http://purl.uniprot.org/unirules/>;
  <http://spinrdf.org/sp#where> <http://purl.uniprot.org/unirules/MF_00649#construct-where-list-0>;
  <http://spinrdf.org/sp#templates> <http://purl.uniprot.org/unirules/MF_00649#construct-template-list-0>;
  <http://www.w3.org/ns/shacl#construct> """CONSTRUCT {
  _:248422 up:source unirule:MF_00649 .
  _:248423 up:source unirule:MF_00649 .
  _:248424 up:source unirule:MF_00649 .
  _:248425 up:source unirule:MF_00649 .
  _:248426 up:source unirule:MF_00649 .
  _:248427 up:source unirule:MF_00649 .
  _:248428 up:source unirule:MF_00649 .
  _:248429 up:source unirule:MF_00649 .
  _:248430 up:source unirule:MF_00649 .
  _:248431 up:source unirule:MF_00649 .
  _:248432 up:source unirule:MF_00649 .
  _:248433 up:source unirule:MF_00649 .
  _:248434 up:source unirule:MF_00649 .
  ?this up:annotation ?annotation2 ,
      ?annotation3 ,
      ?annotation4 ;
    up:classifiedWith GO:0008657 ;
    up:recommendedName ?name0 .
  ?name0 up:fullName 'DNA gyrase inhibitor YacG' ;
    rdf:type up:Structured_Name .
  ?gene1 skos:prefLabel 'yacG' .
  ?annotation2 a up:Function_Annotation ;
    rdfs:comment 'Inhibits all the catalytic activities of DNA gyrase by preventing its interaction with DNA. Acts by binding directly to the C-terminal domain of GyrB, which probably disrupts DNA binding by the gyrase.' .
  ?annotation3 a up:Subunit_Annotation ;
    rdfs:comment 'Interacts with GyrB.' .
  ?annotation4 a up:Similarity_Annotation ;
    rdfs:comment 'Belongs to the DNA gyrase inhibitor YacG family.' .
  ?case5 up:classifiedWith GO:0008270 ,
      keyword:479 ,
      keyword:862 .
  ?pfs6 up:annotation ?annotation7 ,
      ?annotation13 ,
      ?annotation19 ,
      ?annotation25 .
  ?annotation7 faldo:begin ?pfsb8 ;
    faldo:end ?pfse9 ;
    up:ligand ?ligand10 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb8 faldo:position ?thisPositionOn11 ;
    rdf:type faldo:ExactPosition .
  ?pfse9 faldo:position ?thisPositionOn12 ;
    rdf:type faldo:ExactPosition .
  ?ligand10 rdfs:subClassOf chebi:29105 .
  ?annotation13 faldo:begin ?pfsb14 ;
    faldo:end ?pfse15 ;
    up:ligand ?ligand16 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb14 faldo:position ?thisPositionOn17 ;
    rdf:type faldo:ExactPosition .
  ?pfse15 faldo:position ?thisPositionOn18 ;
    rdf:type faldo:ExactPosition .
  ?ligand16 rdfs:subClassOf chebi:29105 .
  ?annotation19 faldo:begin ?pfsb20 ;
    faldo:end ?pfse21 ;
    up:ligand ?ligand22 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb20 faldo:position ?thisPositionOn23 ;
    rdf:type faldo:ExactPosition .
  ?pfse21 faldo:position ?thisPositionOn24 ;
    rdf:type faldo:ExactPosition .
  ?ligand22 rdfs:subClassOf chebi:29105 .
  ?annotation25 faldo:begin ?pfsb26 ;
    faldo:end ?pfse27 ;
    up:ligand ?ligand28 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb26 faldo:position ?thisPositionOn29 ;
    rdf:type faldo:ExactPosition .
  ?pfse27 faldo:position ?thisPositionOn30 ;
    rdf:type faldo:ExactPosition .
  ?ligand28 rdfs:subClassOf chebi:29105 .
  _:248435 a rdf:Statement ;
    up:attribution _:248422 ;
    rdf:subject ?this ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name0 .
  _:248436 a rdf:Statement ;
    up:attribution _:248423 ;
    rdf:subject ?gene1 ;
    rdf:predicate up:encodedBy ;
    rdf:object ?gene1 .
  _:248437 a rdf:Statement ;
    up:attribution _:248424 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation2 .
  _:248438 a rdf:Statement ;
    up:attribution _:248425 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation3 .
  _:248439 a rdf:Statement ;
    up:attribution _:248426 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation4 .
  _:248440 a rdf:Statement ;
    up:attribution _:248427 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0008657 .
  _:248441 a rdf:Statement ;
    up:attribution _:248428 ;
    rdf:subject ?case5 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:862 .
  _:248442 a rdf:Statement ;
    up:attribution _:248429 ;
    rdf:subject ?case5 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:479 .
  _:248443 a rdf:Statement ;
    up:attribution _:248430 ;
    rdf:subject ?case5 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0008270 .
  _:248444 a rdf:Statement ;
    up:source unirule:MF_00649 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation7 .
  _:248445 a rdf:Statement ;
    up:attribution _:248431 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation7 .
  _:248446 a rdf:Statement ;
    up:source unirule:MF_00649 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation13 .
  _:248447 a rdf:Statement ;
    up:attribution _:248432 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation13 .
  _:248448 a rdf:Statement ;
    up:source unirule:MF_00649 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation19 .
  _:248449 a rdf:Statement ;
    up:attribution _:248433 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation19 .
  _:248450 a rdf:Statement ;
    up:source unirule:MF_00649 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation25 .
  _:248451 a rdf:Statement ;
    up:attribution _:248434 ;
    rdf:subject ?pfs6 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation25 .
}
WHERE {
  #baseURI: http://purl.uniprot.org/unirule/MF_00649
  #Rule MF_00649 Created by:? on:2005-02-28 Modified by:Edouard de Castro on:2023-01-26
  VALUES ?supertaxon31 {taxon:1224 taxon:203682}
  ?this up:organism ?thisOrganism ;
    rdfs:seeAlso signature:MF_00649 .
  ?thisOrganism rdfs:subClassOf+ ?supertaxon31 .
  BIND(URI(CONCAT(STR(?this), '#MF_00649a0')) AS ?name0) .
  BIND(URI(CONCAT(STR(?this), '#MF_00649a2')) AS ?annotation2) .
  BIND(URI(CONCAT(STR(?this), '#MF_00649a3')) AS ?annotation3) .
  BIND(URI(CONCAT(STR(?this), '#MF_00649a4')) AS ?annotation4) .
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch36 faldo:location ?templateMotifSequenceMatchRegionP0A8H837 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP0A8H839 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP0A8H8MF_0064932 .
    ?templateMotifSequenceMatchRegionP0A8H837 faldo:begin ?templateMotifSequenceMatchBeginP0A8H838 .
    ?templateMotifSequenceMatchBeginP0A8H838 faldo:position ?templateMotifSequenceMatchBeginPositionP0A8H833 ;
      faldo:reference isoform:P0A8H8-1 .
    ?templateMotifSequenceProfileAlignmentOperationP0A8H839 edam:has_input signature:MF_00649 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch40 faldo:location ?targetMotifMatchRegionMatch41 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0064943 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP0A8H8MF_0064934 .
    ?targetMotifMatchRegionMatch41 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0064942 .
    ?targetMotifMatchRegionMatchBeginMF_0064942 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0064935 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0064943 edam:has_input signature:MF_00649 ;
      rdf:type edam:operation_0300 .
    BIND(?this AS ?tagFTGRP_1) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP0A8H8MF_0064932, 1, (STRLEN(?templateMotifCigarP0A8H8MF_0064932) - STRLEN(REPLACE(?templateMotifCigarP0A8H8MF_0064932, CONCAT('^(?:-*[^-]){', STR(((9 - ?templateMotifSequenceMatchBeginPositionP0A8H833) + 1)), '}'), '')))), '[a-z]', '')) AS ?step144) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step144), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step144), '}'), '')))), '[^-]', ''))) AS ?step245) .
    BIND(((?step245 + ?targetMotifMatchRegionMatchBeginPositionMF_0064935) - 1) AS ?thisPositionOn11) .
    BIND(?thisPositionOn11 AS ?thisPositionOn12) .
    BIND(?this AS ?pfs1t46) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn11))) AS ?pfsb8) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn12))) AS ?pfse9) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn11, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP0A8H8MF_0064932, 1, (STRLEN(?templateMotifCigarP0A8H8MF_0064932) - STRLEN(REPLACE(?templateMotifCigarP0A8H8MF_0064932, CONCAT('^(?:-*[^-]){', STR(((12 - ?templateMotifSequenceMatchBeginPositionP0A8H833) + 1)), '}'), '')))), '[a-z]', '')) AS ?step147) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step147), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step147), '}'), '')))), '[^-]', ''))) AS ?step248) .
    BIND(((?step248 + ?targetMotifMatchRegionMatchBeginPositionMF_0064935) - 1) AS ?thisPositionOn17) .
    BIND(?thisPositionOn17 AS ?thisPositionOn18) .
    BIND(?this AS ?pfs1t49) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn17))) AS ?pfsb14) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn18))) AS ?pfse15) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn17, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP0A8H8MF_0064932, 1, (STRLEN(?templateMotifCigarP0A8H8MF_0064932) - STRLEN(REPLACE(?templateMotifCigarP0A8H8MF_0064932, CONCAT('^(?:-*[^-]){', STR(((28 - ?templateMotifSequenceMatchBeginPositionP0A8H833) + 1)), '}'), '')))), '[a-z]', '')) AS ?step150) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step150), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step150), '}'), '')))), '[^-]', ''))) AS ?step251) .
    BIND(((?step251 + ?targetMotifMatchRegionMatchBeginPositionMF_0064935) - 1) AS ?thisPositionOn23) .
    BIND(?thisPositionOn23 AS ?thisPositionOn24) .
    BIND(?this AS ?pfs1t52) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn23))) AS ?pfsb20) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn24))) AS ?pfse21) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn23, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP0A8H8MF_0064932, 1, (STRLEN(?templateMotifCigarP0A8H8MF_0064932) - STRLEN(REPLACE(?templateMotifCigarP0A8H8MF_0064932, CONCAT('^(?:-*[^-]){', STR(((32 - ?templateMotifSequenceMatchBeginPositionP0A8H833) + 1)), '}'), '')))), '[a-z]', '')) AS ?step153) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step153), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP0A8H8MF_0064934, 1, (STRLEN(?targetMotifMatchCigarP0A8H8MF_0064934) - STRLEN(REPLACE(?targetMotifMatchCigarP0A8H8MF_0064934, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step153), '}'), '')))), '[^-]', ''))) AS ?step254) .
    BIND(((?step254 + ?targetMotifMatchRegionMatchBeginPositionMF_0064935) - 1) AS ?thisPositionOn29) .
    BIND(?thisPositionOn29 AS ?thisPositionOn30) .
    BIND(?this AS ?pfs1t55) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn29))) AS ?pfsb26) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn30))) AS ?pfse27) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn29, 1) = 'C')) .
    BIND(?this AS ?pfs6) .
  }
  OPTIONAL {
    ?this a up:Protein .
    BIND(?this AS ?caseWithTag56) .
  }
  BIND(IF(BOUND(?tagFTGRP_1), ?caseWithTag56, ?UNBOUND_VARIABLE) AS ?case5) .
}
""" .

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