@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_02233#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_02233#construct-template-101>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-125>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-19>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-100>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-124>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-13>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-103>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-127>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-9>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-4>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-102>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-126>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-105>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-39>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-15>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-104>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-16>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-107>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-17>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-7>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-106>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-5>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-18>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-109>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-11>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-80>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-108>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-81>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-82>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-6>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-75>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-51>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-99>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-14>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-52>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-76>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-53>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-77>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-30>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-8>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-78>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-3>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-54>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-95>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-71>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-96>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-72>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-1>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-97>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-73>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-2>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-12>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-74>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-50>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-98>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-59>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-35>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-0>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-36>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-37>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-38>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-31>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-79>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-55>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-56>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-32>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-111>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-57>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-33>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-110>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-58>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-34>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-10>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-113>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-112>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-115>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-114>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-117>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-27>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-116>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-28>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-119>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-29>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-118>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-91>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-92>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-93>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-94>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-70>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-90>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-63>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-87>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-64>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-40>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-88>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-41>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-89>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-65>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-42>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-66>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-83>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-84>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-60>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-85>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-61>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-86>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-62>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-47>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-23>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-48>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-24>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-49>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-25>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-26>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-67>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-43>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-120>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-20>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-68>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-44>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-123>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-69>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-45>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-21>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-122>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-46>, <http://purl.uniprot.org/unirules/MF_02233#construct-template-22>,
    <http://purl.uniprot.org/unirules/MF_02233#construct-template-121>;
  <http://www.w3.org/ns/shacl#prefixes> <http://purl.uniprot.org/unirules/>;
  <http://spinrdf.org/sp#where> <http://purl.uniprot.org/unirules/MF_02233#construct-where-list-0>;
  <http://spinrdf.org/sp#templates> <http://purl.uniprot.org/unirules/MF_02233#construct-template-list-0>;
  <http://www.w3.org/ns/shacl#construct> """CONSTRUCT {
  _:771604 up:source unirule:MF_02233 .
  _:771605 up:source unirule:MF_02233 .
  _:771606 up:source unirule:MF_02233 .
  _:771607 up:source unirule:MF_02233 .
  _:771608 up:source unirule:MF_02233 .
  _:771609 up:source unirule:MF_02233 .
  _:771610 up:source unirule:MF_02233 .
  _:771611 up:source unirule:MF_02233 .
  _:771612 up:source unirule:MF_02233 .
  _:771613 up:source unirule:MF_02233 .
  _:771614 up:source unirule:MF_02233 .
  _:771615 up:source unirule:MF_02233 .
  _:771616 up:source unirule:MF_02233 .
  _:771617 up:source unirule:MF_02233 .
  _:771618 up:source unirule:MF_02233 .
  _:771619 up:source unirule:MF_02233 .
  _:771620 up:source unirule:MF_02233 .
  _:771621 up:source unirule:MF_02233 .
  _:771622 up:source unirule:MF_02233 .
  _:771623 up:source unirule:MF_02233 .
  _:771624 up:source unirule:MF_02233 .
  ?this up:alternativeName ?name1 ;
    up:annotation ?annotation3 ,
      ?annotation4 ,
      ?annotation6 ,
      ?annotation8 ,
      ?annotation10 ,
      ?annotation11 ,
      ?annotation12 ;
    up:classifiedWith GO:0006744 ,
      keyword:831 ;
    up:recommendedName ?name0 .
  ?name0 up:ecName '1.97.1.15' ;
    up:fullName 'Ubiquinone biosynthesis hydroxylase UbiV' ;
    rdf:type up:Structured_Name .
  ?name1 up:fullName '2-(all-trans-polyprenyl)phenol 6-hydroxylase subunit UbiV' ;
    rdf:type up:Structured_Name .
  ?gene2 skos:prefLabel 'ubiV' .
  ?annotation3 a up:Function_Annotation ;
    rdfs:comment 'Component of the UbiUV hydroxylase, which is involved in the oxygen-independent ubiquinone (coenzyme Q) biosynthesis. It catalyzes the three hydroxylation steps, using prephenate as the oxygen donor.' .
  ?annotation4 up:activity ?activity5 ;
    rdf:type up:Catalytic_Activity_Annotation .
  ?activity5 up:catalyticActivity <http://rdf.rhea-db.org/81671>;
    up:enzymeClass <http://purl.uniprot.org/enzyme/1.97.1.15>.
  ?annotation6 up:activity ?activity7 ;
    rdf:type up:Catalytic_Activity_Annotation .
  ?activity7 up:catalyticActivity <http://rdf.rhea-db.org/81679>;
    up:enzymeClass <http://purl.uniprot.org/enzyme/1.97.1.15>.
  ?annotation8 up:activity ?activity9 ;
    rdf:type up:Catalytic_Activity_Annotation .
  ?activity9 up:catalyticActivity <http://rdf.rhea-db.org/81687>;
    up:enzymeClass <http://purl.uniprot.org/enzyme/1.97.1.15>.
  ?annotation10 a up:Pathway_Annotation ;
    rdfs:comment 'Cofactor biosynthesis; ubiquinone biosynthesis.' .
  ?annotation11 a up:Subunit_Annotation ;
    rdfs:comment 'Forms a heterodimer with UbiU.' .
  ?annotation12 a up:Similarity_Annotation ;
    rdfs:comment 'Belongs to the peptidase U32 family. UbiV subfamily.' .
  ?case13 up:classifiedWith GO:0051539 ,
      keyword:408 ,
      keyword:411 ,
      keyword:479 ,
      keyword:4 .
  ?pfs14 up:annotation ?annotation15 ,
      ?annotation21 ,
      ?annotation27 ,
      ?annotation33 .
  ?annotation15 faldo:begin ?pfsb16 ;
    faldo:end ?pfse17 ;
    up:ligand ?ligand18 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb16 faldo:position ?thisPositionOn19 ;
    rdf:type faldo:ExactPosition .
  ?pfse17 faldo:position ?thisPositionOn20 ;
    rdf:type faldo:ExactPosition .
  ?ligand18 rdfs:subClassOf chebi:49883 .
  ?annotation21 faldo:begin ?pfsb22 ;
    faldo:end ?pfse23 ;
    up:ligand ?ligand24 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb22 faldo:position ?thisPositionOn25 ;
    rdf:type faldo:ExactPosition .
  ?pfse23 faldo:position ?thisPositionOn26 ;
    rdf:type faldo:ExactPosition .
  ?ligand24 rdfs:subClassOf chebi:49883 .
  ?annotation27 faldo:begin ?pfsb28 ;
    faldo:end ?pfse29 ;
    up:ligand ?ligand30 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb28 faldo:position ?thisPositionOn31 ;
    rdf:type faldo:ExactPosition .
  ?pfse29 faldo:position ?thisPositionOn32 ;
    rdf:type faldo:ExactPosition .
  ?ligand30 rdfs:subClassOf chebi:49883 .
  ?annotation33 faldo:begin ?pfsb34 ;
    faldo:end ?pfse35 ;
    up:ligand ?ligand36 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb34 faldo:position ?thisPositionOn37 ;
    rdf:type faldo:ExactPosition .
  ?pfse35 faldo:position ?thisPositionOn38 ;
    rdf:type faldo:ExactPosition .
  ?ligand36 rdfs:subClassOf chebi:49883 .
  _:771625 a rdf:Statement ;
    up:attribution _:771604 ;
    rdf:subject ?this ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name0 .
  _:771626 a rdf:Statement ;
    up:attribution _:771605 ;
    rdf:subject ?this ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name1 .
  _:771627 a rdf:Statement ;
    up:attribution _:771606 ;
    rdf:subject ?gene2 ;
    rdf:predicate up:encodedBy ;
    rdf:object ?gene2 .
  _:771628 a rdf:Statement ;
    up:attribution _:771607 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation3 .
  _:771629 a rdf:Statement ;
    up:attribution _:771608 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation4 .
  _:771630 a rdf:Statement ;
    up:attribution _:771609 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation6 .
  _:771631 a rdf:Statement ;
    up:attribution _:771610 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation8 .
  _:771632 a rdf:Statement ;
    up:attribution _:771611 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation10 .
  _:771633 a rdf:Statement ;
    up:attribution _:771612 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation11 .
  _:771634 a rdf:Statement ;
    up:attribution _:771613 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation12 .
  _:771635 a rdf:Statement ;
    up:attribution _:771614 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:831 .
  _:771636 a rdf:Statement ;
    up:attribution _:771615 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0006744 .
  _:771637 a rdf:Statement ;
    up:attribution _:771616 ;
    rdf:subject ?case13 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:4 .
  _:771638 a rdf:Statement ;
    up:attribution _:771617 ;
    rdf:subject ?case13 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:408 .
  _:771639 a rdf:Statement ;
    up:attribution _:771618 ;
    rdf:subject ?case13 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:411 .
  _:771640 a rdf:Statement ;
    up:attribution _:771619 ;
    rdf:subject ?case13 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:479 .
  _:771641 a rdf:Statement ;
    up:attribution _:771620 ;
    rdf:subject ?case13 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0051539 .
  _:771642 a rdf:Statement ;
    up:source unirule:MF_02233 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation15 .
  _:771643 a rdf:Statement ;
    up:attribution _:771621 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation15 .
  _:771644 a rdf:Statement ;
    up:source unirule:MF_02233 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation21 .
  _:771645 a rdf:Statement ;
    up:attribution _:771622 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation21 .
  _:771646 a rdf:Statement ;
    up:source unirule:MF_02233 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation27 .
  _:771647 a rdf:Statement ;
    up:attribution _:771623 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation27 .
  _:771648 a rdf:Statement ;
    up:source unirule:MF_02233 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation33 .
  _:771649 a rdf:Statement ;
    up:attribution _:771624 ;
    rdf:subject ?pfs14 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation33 .
}
WHERE {
  #baseURI: http://purl.uniprot.org/unirule/MF_02233
  #Rule MF_02233 Created by:? on:2019-10-01 Modified by:Catherine Rivoire on:2025-04-08
  ?this up:organism ?thisOrganism ;
    rdfs:seeAlso signature:MF_02233 .
  ?thisOrganism rdfs:subClassOf+ taxon:1224 .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a0')) AS ?name0) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a1')) AS ?name1) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a3')) AS ?annotation3) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a4')) AS ?annotation4) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a6')) AS ?annotation6) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a8')) AS ?annotation8) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a10')) AS ?annotation10) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a11')) AS ?annotation11) .
  BIND(URI(CONCAT(STR(?this), '#MF_02233a12')) AS ?annotation12) .
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch43 faldo:location ?templateMotifSequenceMatchRegionP4547544 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP4547546 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP45475MF_0223339 .
    ?templateMotifSequenceMatchRegionP4547544 faldo:begin ?templateMotifSequenceMatchBeginP4547545 .
    ?templateMotifSequenceMatchBeginP4547545 faldo:position ?templateMotifSequenceMatchBeginPositionP4547540 ;
      faldo:reference isoform:P45475-1 .
    ?templateMotifSequenceProfileAlignmentOperationP4547546 edam:has_input signature:MF_02233 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch47 faldo:location ?targetMotifMatchRegionMatch48 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0223350 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP45475MF_0223341 .
    ?targetMotifMatchRegionMatch48 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0223349 .
    ?targetMotifMatchRegionMatchBeginMF_0223349 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0223342 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0223350 edam:has_input signature:MF_02233 ;
      rdf:type edam:operation_0300 .
    BIND(?this AS ?tagFTGRP_1) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP45475MF_0223339, 1, (STRLEN(?templateMotifCigarP45475MF_0223339) - STRLEN(REPLACE(?templateMotifCigarP45475MF_0223339, CONCAT('^(?:-*[^-]){', STR(((39 - ?templateMotifSequenceMatchBeginPositionP4547540) + 1)), '}'), '')))), '[a-z]', '')) AS ?step151) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step151), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step151), '}'), '')))), '[^-]', ''))) AS ?step252) .
    BIND(((?step252 + ?targetMotifMatchRegionMatchBeginPositionMF_0223342) - 1) AS ?thisPositionOn19) .
    BIND(?thisPositionOn19 AS ?thisPositionOn20) .
    BIND(?this AS ?pfs1t53) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn19))) AS ?pfsb16) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn20))) AS ?pfse17) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn19, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP45475MF_0223339, 1, (STRLEN(?templateMotifCigarP45475MF_0223339) - STRLEN(REPLACE(?templateMotifCigarP45475MF_0223339, CONCAT('^(?:-*[^-]){', STR(((180 - ?templateMotifSequenceMatchBeginPositionP4547540) + 1)), '}'), '')))), '[a-z]', '')) AS ?step154) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step154), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step154), '}'), '')))), '[^-]', ''))) AS ?step255) .
    BIND(((?step255 + ?targetMotifMatchRegionMatchBeginPositionMF_0223342) - 1) AS ?thisPositionOn25) .
    BIND(?thisPositionOn25 AS ?thisPositionOn26) .
    BIND(?this AS ?pfs1t56) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn25))) AS ?pfsb22) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn26))) AS ?pfse23) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn25, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP45475MF_0223339, 1, (STRLEN(?templateMotifCigarP45475MF_0223339) - STRLEN(REPLACE(?templateMotifCigarP45475MF_0223339, CONCAT('^(?:-*[^-]){', STR(((193 - ?templateMotifSequenceMatchBeginPositionP4547540) + 1)), '}'), '')))), '[a-z]', '')) AS ?step157) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step157), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step157), '}'), '')))), '[^-]', ''))) AS ?step258) .
    BIND(((?step258 + ?targetMotifMatchRegionMatchBeginPositionMF_0223342) - 1) AS ?thisPositionOn31) .
    BIND(?thisPositionOn31 AS ?thisPositionOn32) .
    BIND(?this AS ?pfs1t59) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn31))) AS ?pfsb28) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn32))) AS ?pfse29) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn31, 1) = 'C')) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP45475MF_0223339, 1, (STRLEN(?templateMotifCigarP45475MF_0223339) - STRLEN(REPLACE(?templateMotifCigarP45475MF_0223339, CONCAT('^(?:-*[^-]){', STR(((197 - ?templateMotifSequenceMatchBeginPositionP4547540) + 1)), '}'), '')))), '[a-z]', '')) AS ?step160) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step160), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP45475MF_0223341, 1, (STRLEN(?targetMotifMatchCigarP45475MF_0223341) - STRLEN(REPLACE(?targetMotifMatchCigarP45475MF_0223341, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step160), '}'), '')))), '[^-]', ''))) AS ?step261) .
    BIND(((?step261 + ?targetMotifMatchRegionMatchBeginPositionMF_0223342) - 1) AS ?thisPositionOn37) .
    BIND(?thisPositionOn37 AS ?thisPositionOn38) .
    BIND(?this AS ?pfs1t62) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn37))) AS ?pfsb34) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn38))) AS ?pfse35) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn37, 1) = 'C')) .
    BIND(?this AS ?pfs14) .
  }
  OPTIONAL {
    ?this a up:Protein .
    BIND(?this AS ?caseWithTag63) .
  }
  BIND(IF(BOUND(?tagFTGRP_1), ?caseWithTag63, ?UNBOUND_VARIABLE) AS ?case13) .
}
""" .

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