@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_04162#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_04162#construct-template-94>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-95>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-24>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-23>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-47>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-74>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-107>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-29>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-22>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-61>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-46>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-31>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-32>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-72>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-59>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-21>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-45>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-69>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-65>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-35>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-63>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-20>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-44>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-48>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-78>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-68>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-38>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-12>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-17>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-83>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-100>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-71>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-28>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-102>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-57>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-4>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-36>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-26>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-52>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-15>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-87>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-27>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-25>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-101>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-51>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-54>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-7>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-40>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-11>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-5>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-2>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-41>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-49>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-98>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-105>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-19>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-86>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-62>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-56>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-85>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-84>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-37>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-10>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-81>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-9>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-60>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-3>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-43>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-67>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-42>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-66>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-6>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-50>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-34>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-14>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-0>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-89>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-30>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-80>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-64>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-88>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-73>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-13>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-96>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-75>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-77>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-82>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-1>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-70>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-39>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-93>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-104>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-53>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-8>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-33>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-76>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-91>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-106>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-55>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-18>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-103>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-79>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-58>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-97>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-90>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-16>, <http://purl.uniprot.org/unirules/MF_04162#construct-template-99>,
    <http://purl.uniprot.org/unirules/MF_04162#construct-template-92>;
  <http://www.w3.org/ns/shacl#prefixes> <http://purl.uniprot.org/unirules/>;
  <http://spinrdf.org/sp#where> <http://purl.uniprot.org/unirules/MF_04162#construct-where-list-0>;
  <http://spinrdf.org/sp#templates> <http://purl.uniprot.org/unirules/MF_04162#construct-template-list-0>;
  <http://www.w3.org/ns/shacl#construct> """CONSTRUCT {
  _:979886 up:source unirule:MF_04162 .
  _:979887 up:source unirule:MF_04162 .
  _:979888 up:source unirule:MF_04162 .
  _:979889 up:source unirule:MF_04162 .
  _:979890 up:source unirule:MF_04162 .
  _:979891 up:source unirule:MF_04162 .
  _:979892 up:source unirule:MF_04162 .
  _:979893 up:source unirule:MF_04162 .
  _:979894 up:source unirule:MF_04162 .
  _:979895 up:source unirule:MF_04162 .
  _:979896 up:source unirule:MF_04162 .
  _:979897 up:source unirule:MF_04162 .
  _:979898 up:source unirule:MF_04162 .
  _:979899 up:source unirule:MF_04162 .
  _:979900 up:source unirule:MF_04162 .
  _:979901 up:source unirule:MF_04162 .
  _:979902 up:source unirule:MF_04162 .
  _:979903 up:source unirule:MF_04162 .
  _:979904 up:source unirule:MF_04162 .
  ?this up:alternativeName ?name1 ;
    up:annotation ?annotation2 ,
      ?annotation3 ,
      ?annotation4 ;
    up:classifiedWith GO:0003677 ,
      GO:0003689 ,
      GO:0005524 ,
      GO:0016887 ,
      GO:0039693 ,
      keyword:1194 ,
      keyword:238 ,
      keyword:378 ,
      keyword:547 ,
      keyword:67 ;
    up:recommendedName ?name0 .
  ?name0 up:ecName '3.6.4.-' ;
    up:fullName 'Sliding-clamp-loader large subunit' ;
    rdf:type up:Structured_Name .
  ?name1 up:fullName 'Clamp loader gp44 subunit' ;
    rdf:type up:Structured_Name .
  ?annotation2 a up:Function_Annotation ;
    rdfs:comment 'Forms the sliding-clamp-loader together with the small subunit. Functions as an ATPase enzyme. The clamp loader holds the clamp in an open conformation and places it onto the DNA. 4 ATP molecules must bind to the sliding-clamp-loader before the latter can open the sliding clamp. ATP hydrolysis triggers the detachment of the sliding clamp from the sliding-clamp-loader, freeing the sliding clamp to track along DNA.' .
  ?annotation3 a up:Subunit_Annotation ;
    rdfs:comment 'The sliding-clamp-loader consists of 4 large subunits and 1 small subunit. Interacts with the sliding clamp; this interaction allows the sliding-clamp-loader to open the sliding clamp. Part of the replicase complex that includes the DNA polymerase, the polymerase clamp, the clamp loader complex, the single-stranded DNA binding protein, the primase, the helicase and the helicase assembly factor.' .
  ?annotation4 a up:Similarity_Annotation ;
    rdfs:comment 'Belongs to the Tevenvirinae sliding-clamp-loader large subunit family.' .
  ?pfs5 up:annotation ?annotation6 .
  ?annotation6 faldo:begin ?pfsb7 ;
    faldo:end ?pfse8 ;
    up:ligand ?ligand9 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb7 faldo:position ?thisPositionOn10 ;
    rdf:type faldo:ExactPosition .
  ?pfse8 faldo:position ?thisPositionOn11 ;
    rdf:type faldo:ExactPosition .
  ?ligand9 rdfs:subClassOf chebi:30616 .
  ?pfs12 up:annotation ?annotation13 .
  ?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:30616 .
  ?pfs19 up:annotation ?annotation20 .
  ?annotation20 faldo:begin ?pfsb21 ;
    faldo:end ?pfse22 ;
    up:ligand ?ligand23 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb21 faldo:position ?thisPositionOn24 ;
    rdf:type faldo:ExactPosition .
  ?pfse22 faldo:position ?thisPositionOn25 ;
    rdf:type faldo:ExactPosition .
  ?ligand23 rdfs:subClassOf chebi:30616 .
  ?pfs26 up:annotation ?annotation27 .
  ?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:30616 .
  _:979905 a rdf:Statement ;
    up:attribution _:979886 ;
    rdf:subject ?this ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name0 .
  _:979906 a rdf:Statement ;
    up:attribution _:979887 ;
    rdf:subject ?this ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name1 .
  _:979907 a rdf:Statement ;
    up:attribution _:979888 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation2 .
  _:979908 a rdf:Statement ;
    up:attribution _:979889 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation3 .
  _:979909 a rdf:Statement ;
    up:attribution _:979890 ;
    rdf:subject ?this ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation4 .
  _:979910 a rdf:Statement ;
    up:attribution _:979891 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:67 .
  _:979911 a rdf:Statement ;
    up:attribution _:979892 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:1194 .
  _:979912 a rdf:Statement ;
    up:attribution _:979893 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:238 .
  _:979913 a rdf:Statement ;
    up:attribution _:979894 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:378 .
  _:979914 a rdf:Statement ;
    up:attribution _:979895 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:547 .
  _:979915 a rdf:Statement ;
    up:attribution _:979896 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0005524 .
  _:979916 a rdf:Statement ;
    up:attribution _:979897 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0003677 .
  _:979917 a rdf:Statement ;
    up:attribution _:979898 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0039693 .
  _:979918 a rdf:Statement ;
    up:attribution _:979899 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0003689 .
  _:979919 a rdf:Statement ;
    up:attribution _:979900 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0016887 .
  _:979920 a rdf:Statement ;
    up:source unirule:MF_04162 ;
    rdf:subject ?pfs5 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation6 .
  _:979921 a rdf:Statement ;
    up:attribution _:979901 ;
    rdf:subject ?pfs5 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation6 .
  _:979922 a rdf:Statement ;
    up:source unirule:MF_04162 ;
    rdf:subject ?pfs12 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation13 .
  _:979923 a rdf:Statement ;
    up:attribution _:979902 ;
    rdf:subject ?pfs12 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation13 .
  _:979924 a rdf:Statement ;
    up:source unirule:MF_04162 ;
    rdf:subject ?pfs19 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation20 .
  _:979925 a rdf:Statement ;
    up:attribution _:979903 ;
    rdf:subject ?pfs19 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation20 .
  _:979926 a rdf:Statement ;
    up:source unirule:MF_04162 ;
    rdf:subject ?pfs26 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation27 .
  _:979927 a rdf:Statement ;
    up:attribution _:979904 ;
    rdf:subject ?pfs26 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation27 .
}
WHERE {
  #baseURI: http://purl.uniprot.org/unirule/MF_04162
  #Rule MF_04162 Created by:? on:2021-04-20 Modified by:Edouard de Castro on:2022-11-19
  ?this up:organism ?thisOrganism ;
    rdfs:seeAlso signature:MF_04162 .
  ?thisOrganism rdfs:subClassOf+ taxon:10239 .
  BIND(URI(CONCAT(STR(?this), '#MF_04162a0')) AS ?name0) .
  BIND(URI(CONCAT(STR(?this), '#MF_04162a1')) AS ?name1) .
  BIND(URI(CONCAT(STR(?this), '#MF_04162a2')) AS ?annotation2) .
  BIND(URI(CONCAT(STR(?this), '#MF_04162a3')) AS ?annotation3) .
  BIND(URI(CONCAT(STR(?this), '#MF_04162a4')) AS ?annotation4) .
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch37 faldo:location ?templateMotifSequenceMatchRegionP0452638 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP0452640 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP04526MF_0416233 .
    ?templateMotifSequenceMatchRegionP0452638 faldo:begin ?templateMotifSequenceMatchBeginP0452639 .
    ?templateMotifSequenceMatchBeginP0452639 faldo:position ?templateMotifSequenceMatchBeginPositionP0452634 ;
      faldo:reference isoform:P04526-1 .
    ?templateMotifSequenceProfileAlignmentOperationP0452640 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch41 faldo:location ?targetMotifMatchRegionMatch42 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0416244 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP04526MF_0416235 .
    ?targetMotifMatchRegionMatch42 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0416243 .
    ?targetMotifMatchRegionMatchBeginMF_0416243 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0416236 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0416244 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416233, 1, (STRLEN(?templateMotifCigarP04526MF_0416233) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416233, CONCAT('^(?:-*[^-]){', STR(((12 - ?templateMotifSequenceMatchBeginPositionP0452634) + 1)), '}'), '')))), '[a-z]', '')) AS ?step145) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416235, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416235) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416235, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step145), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416235, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416235) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416235, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step145), '}'), '')))), '[^-]', ''))) AS ?step246) .
    BIND(((?step246 + ?targetMotifMatchRegionMatchBeginPositionMF_0416236) - 1) AS ?thisPositionOn10) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416233, 1, (STRLEN(?templateMotifCigarP04526MF_0416233) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416233, CONCAT('^(?:-*[^-]){', STR(((15 - ?templateMotifSequenceMatchBeginPositionP0452634) + 1)), '}'), '')))), '[a-z]', '')) AS ?step147) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416235, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416235) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416235, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step147), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416235, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416235) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416235, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step147), '}'), '')))), '[^-]', ''))) AS ?step248) .
    BIND(((?step248 + ?targetMotifMatchRegionMatchBeginPositionMF_0416236) - 1) AS ?thisPositionOn11) .
    BIND(?this AS ?pfs1t49) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn10))) AS ?pfsb7) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn11))) AS ?pfse8) .
    FILTER (REGEX('[DEILSTV][EILMNQ][KR]Y', SUBSTR(?thisSequenceValue, ?thisPositionOn10, (?thisPositionOn11 - ?thisPositionOn10)))) .
    BIND(URI(CONCAT(STR(?this), '#MF_04162a6')) AS ?annotation6) .
    BIND(?this AS ?pfs5) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch54 faldo:location ?templateMotifSequenceMatchRegionP0452655 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP0452657 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP04526MF_0416250 .
    ?templateMotifSequenceMatchRegionP0452655 faldo:begin ?templateMotifSequenceMatchBeginP0452656 .
    ?templateMotifSequenceMatchBeginP0452656 faldo:position ?templateMotifSequenceMatchBeginPositionP0452651 ;
      faldo:reference isoform:P04526-1 .
    ?templateMotifSequenceProfileAlignmentOperationP0452657 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch58 faldo:location ?targetMotifMatchRegionMatch59 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0416261 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP04526MF_0416252 .
    ?targetMotifMatchRegionMatch59 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0416260 .
    ?targetMotifMatchRegionMatchBeginMF_0416260 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0416253 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0416261 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416250, 1, (STRLEN(?templateMotifCigarP04526MF_0416250) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416250, CONCAT('^(?:-*[^-]){', STR(((53 - ?templateMotifSequenceMatchBeginPositionP0452651) + 1)), '}'), '')))), '[a-z]', '')) AS ?step162) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416252, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416252) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416252, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step162), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416252, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416252) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416252, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step162), '}'), '')))), '[^-]', ''))) AS ?step263) .
    BIND(((?step263 + ?targetMotifMatchRegionMatchBeginPositionMF_0416253) - 1) AS ?thisPositionOn17) .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416250, 1, (STRLEN(?templateMotifCigarP04526MF_0416250) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416250, CONCAT('^(?:-*[^-]){', STR(((58 - ?templateMotifSequenceMatchBeginPositionP0452651) + 1)), '}'), '')))), '[a-z]', '')) AS ?step164) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416252, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416252) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416252, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step164), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416252, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416252) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416252, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step164), '}'), '')))), '[^-]', ''))) AS ?step265) .
    BIND(((?step265 + ?targetMotifMatchRegionMatchBeginPositionMF_0416253) - 1) AS ?thisPositionOn18) .
    BIND(?this AS ?pfs1t66) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn17))) AS ?pfsb14) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn18))) AS ?pfse15) .
    FILTER (REGEX('G[ARNDCQEGHILKMFPSTWYVBZJUOX]GK[ST][ST]', SUBSTR(?thisSequenceValue, ?thisPositionOn17, (?thisPositionOn18 - ?thisPositionOn17)))) .
    BIND(URI(CONCAT(STR(?this), '#MF_04162a13')) AS ?annotation13) .
    BIND(?this AS ?pfs12) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch71 faldo:location ?templateMotifSequenceMatchRegionP0452672 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP0452674 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP04526MF_0416267 .
    ?templateMotifSequenceMatchRegionP0452672 faldo:begin ?templateMotifSequenceMatchBeginP0452673 .
    ?templateMotifSequenceMatchBeginP0452673 faldo:position ?templateMotifSequenceMatchBeginPositionP0452668 ;
      faldo:reference isoform:P04526-1 .
    ?templateMotifSequenceProfileAlignmentOperationP0452674 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch75 faldo:location ?targetMotifMatchRegionMatch76 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0416278 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP04526MF_0416269 .
    ?targetMotifMatchRegionMatch76 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0416277 .
    ?targetMotifMatchRegionMatchBeginMF_0416277 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0416270 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0416278 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416267, 1, (STRLEN(?templateMotifCigarP04526MF_0416267) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416267, CONCAT('^(?:-*[^-]){', STR(((24 - ?templateMotifSequenceMatchBeginPositionP0452668) + 1)), '}'), '')))), '[a-z]', '')) AS ?step179) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416269, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416269) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416269, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step179), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416269, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416269) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416269, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step179), '}'), '')))), '[^-]', ''))) AS ?step280) .
    BIND(((?step280 + ?targetMotifMatchRegionMatchBeginPositionMF_0416270) - 1) AS ?thisPositionOn24) .
    BIND(?thisPositionOn24 AS ?thisPositionOn25) .
    BIND(?this AS ?pfs1t81) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn24))) AS ?pfsb21) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn25))) AS ?pfse22) .
    FILTER (REGEX('[ILV]', SUBSTR(?thisSequenceValue, ?thisPositionOn24, 1))) .
    BIND(URI(CONCAT(STR(?this), '#MF_04162a20')) AS ?annotation20) .
    BIND(?this AS ?pfs19) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch86 faldo:location ?templateMotifSequenceMatchRegionP0452687 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP0452689 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP04526MF_0416282 .
    ?templateMotifSequenceMatchRegionP0452687 faldo:begin ?templateMotifSequenceMatchBeginP0452688 .
    ?templateMotifSequenceMatchBeginP0452688 faldo:position ?templateMotifSequenceMatchBeginPositionP0452683 ;
      faldo:reference isoform:P04526-1 .
    ?templateMotifSequenceProfileAlignmentOperationP0452689 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch90 faldo:location ?targetMotifMatchRegionMatch91 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0416293 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP04526MF_0416284 .
    ?targetMotifMatchRegionMatch91 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0416292 .
    ?targetMotifMatchRegionMatchBeginMF_0416292 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0416285 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0416293 edam:has_input signature:MF_04162 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP04526MF_0416282, 1, (STRLEN(?templateMotifCigarP04526MF_0416282) - STRLEN(REPLACE(?templateMotifCigarP04526MF_0416282, CONCAT('^(?:-*[^-]){', STR(((205 - ?templateMotifSequenceMatchBeginPositionP0452683) + 1)), '}'), '')))), '[a-z]', '')) AS ?step194) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP04526MF_0416284, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416284) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416284, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step194), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP04526MF_0416284, 1, (STRLEN(?targetMotifMatchCigarP04526MF_0416284) - STRLEN(REPLACE(?targetMotifMatchCigarP04526MF_0416284, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step194), '}'), '')))), '[^-]', ''))) AS ?step295) .
    BIND(((?step295 + ?targetMotifMatchRegionMatchBeginPositionMF_0416285) - 1) AS ?thisPositionOn31) .
    BIND(?thisPositionOn31 AS ?thisPositionOn32) .
    BIND(?this AS ?pfs1t96) .
    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) = 'R')) .
    BIND(URI(CONCAT(STR(?this), '#MF_04162a27')) AS ?annotation27) .
    BIND(?this AS ?pfs26) .
  }
}
""" .

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