@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_01246#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_01246#construct-template-64>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-37>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-6>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-29>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-3>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-57>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-13>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-23>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-51>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-7>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-36>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-41>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-86>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-4>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-27>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-75>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-62>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-1>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-47>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-17>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-35>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-61>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-28>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-5>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-50>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-25>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-63>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-19>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-53>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-8>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-52>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-14>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-97>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-9>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-31>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-40>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-71>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-66>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-11>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-2>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-73>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-45>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-38>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-55>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-33>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-76>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-88>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-90>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-70>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-26>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-21>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-42>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-49>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-20>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-77>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-93>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-44>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-65>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-94>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-74>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-10>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-16>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-39>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-91>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-99>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-92>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-12>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-32>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-72>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-43>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-98>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-0>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-95>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-96>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-58>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-59>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-79>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-60>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-78>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-30>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-54>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-18>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-81>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-68>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-22>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-69>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-15>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-34>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-56>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-67>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-83>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-48>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-46>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-24>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-85>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-80>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-82>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-87>, <http://purl.uniprot.org/unirules/MF_01246#construct-template-84>,
    <http://purl.uniprot.org/unirules/MF_01246#construct-template-89>;
  <http://www.w3.org/ns/shacl#prefixes> <http://purl.uniprot.org/unirules/>;
  <http://spinrdf.org/sp#where> <http://purl.uniprot.org/unirules/MF_01246#construct-where-list-0>;
  <http://spinrdf.org/sp#templates> <http://purl.uniprot.org/unirules/MF_01246#construct-template-list-0>;
  <http://www.w3.org/ns/shacl#construct> """CONSTRUCT {
  _:438516 up:source unirule:MF_01246 .
  _:438517 up:source unirule:MF_01246 .
  _:438518 up:source unirule:MF_01246 .
  _:438519 up:source unirule:MF_01246 .
  _:438520 up:source unirule:MF_01246 .
  _:438521 up:source unirule:MF_01246 .
  _:438522 up:source unirule:MF_01246 .
  _:438523 up:source unirule:MF_01246 .
  _:438524 up:source unirule:MF_01246 .
  _:438525 up:source unirule:MF_01246 .
  _:438526 up:source unirule:MF_01246 .
  _:438527 up:source unirule:MF_01246 .
  _:438528 up:source unirule:MF_01246 .
  _:438529 up:source unirule:MF_01246 .
  _:438530 up:source unirule:MF_01246 .
  _:438531 up:source unirule:MF_01246 .
  _:438532 up:source unirule:MF_01246 .
  _:438533 up:source unirule:MF_01246 .
  _:438534 up:source unirule:MF_01246 .
  _:438535 up:source unirule:MF_01246 .
  _:438536 up:source unirule:MF_01246 .
  ?this up:classifiedWith GO:0016811 ,
      keyword:119 ,
      keyword:378 ,
      keyword:460 ,
      keyword:479 .
  ?case0 up:alternativeName ?name2 ,
      ?name3 ,
      ?name4 ,
      ?name5 ,
      ?name6 ;
    up:classifiedWith GO:0000272 ,
      GO:0005737 ,
      GO:0036311 ,
      GO:0052777 ,
      keyword:146 ,
      keyword:624 ,
      keyword:963 ;
    up:recommendedName ?name1 .
  ?name1 up:ecName '3.5.1.105' ;
    up:fullName 'Chitooligosaccharide deacetylase' ;
    up:shortName 'COD' ;
    rdf:type up:Structured_Name .
  ?name2 up:fullName 'Chitin disaccharide deacetylase' ;
    rdf:type up:Structured_Name .
  ?name3 up:fullName 'Chitobiose deacetylase' ;
    rdf:type up:Structured_Name .
  ?name4 up:fullName 'Chitobiose-6P deacetylase' ;
    rdf:type up:Structured_Name .
  ?name5 up:fullName 'Chitotriose deacetylase' ;
    rdf:type up:Structured_Name .
  ?name6 up:fullName 'Chitotriose-6P deacetylase' ;
    rdf:type up:Structured_Name .
  ?case7 up:recommendedName ?name8 .
  ?name8 up:ecName '3.5.1.-' ;
    up:fullName 'Carbohydrate deacetylase' ;
    rdf:type up:Structured_Name .
  ?pfs9 up:annotation ?annotation10 .
  ?annotation10 faldo:begin ?pfsb11 ;
    faldo:end ?pfse12 ;
    up:ligand ?ligand13 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb11 faldo:position ?thisPositionOn14 ;
    rdf:type faldo:ExactPosition .
  ?pfse12 faldo:position ?thisPositionOn15 ;
    rdf:type faldo:ExactPosition .
  ?ligand13 rdfs:subClassOf chebi:18420 .
  ?pfs16 up:annotation ?annotation17 .
  ?annotation17 faldo:begin ?pfsb18 ;
    faldo:end ?pfse19 ;
    up:ligand ?ligand20 ;
    rdf:type up:Binding_Site_Annotation .
  ?pfsb18 faldo:position ?thisPositionOn21 ;
    rdf:type faldo:ExactPosition .
  ?pfse19 faldo:position ?thisPositionOn22 ;
    rdf:type faldo:ExactPosition .
  ?ligand20 rdfs:subClassOf chebi:18420 .
  _:438537 a rdf:Statement ;
    up:attribution _:438516 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:119 .
  _:438538 a rdf:Statement ;
    up:attribution _:438517 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:378 .
  _:438539 a rdf:Statement ;
    up:attribution _:438518 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:460 .
  _:438540 a rdf:Statement ;
    up:attribution _:438519 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:479 .
  _:438541 a rdf:Statement ;
    up:attribution _:438520 ;
    rdf:subject ?this ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0016811 .
  _:438542 a rdf:Statement ;
    up:attribution _:438521 ;
    rdf:subject ?case0 ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name1 .
  _:438543 a rdf:Statement ;
    up:attribution _:438522 ;
    rdf:subject ?case0 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name2 .
  _:438544 a rdf:Statement ;
    up:attribution _:438523 ;
    rdf:subject ?case0 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name3 .
  _:438545 a rdf:Statement ;
    up:attribution _:438524 ;
    rdf:subject ?case0 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name4 .
  _:438546 a rdf:Statement ;
    up:attribution _:438525 ;
    rdf:subject ?case0 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name5 .
  _:438547 a rdf:Statement ;
    up:attribution _:438526 ;
    rdf:subject ?case0 ;
    rdf:predicate up:alternativeName ;
    rdf:object ?name6 .
  _:438548 a rdf:Statement ;
    up:attribution _:438527 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:146 .
  _:438549 a rdf:Statement ;
    up:attribution _:438528 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:963 .
  _:438550 a rdf:Statement ;
    up:attribution _:438529 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object keyword:624 .
  _:438551 a rdf:Statement ;
    up:attribution _:438530 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0036311 .
  _:438552 a rdf:Statement ;
    up:attribution _:438531 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0052777 .
  _:438553 a rdf:Statement ;
    up:attribution _:438532 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0005737 .
  _:438554 a rdf:Statement ;
    up:attribution _:438533 ;
    rdf:subject ?case0 ;
    rdf:predicate up:classifiedWith ;
    rdf:object GO:0000272 .
  _:438555 a rdf:Statement ;
    up:attribution _:438534 ;
    rdf:subject ?case7 ;
    rdf:predicate up:recommendedName ;
    rdf:object ?name8 .
  _:438556 a rdf:Statement ;
    up:source unirule:MF_01246 ;
    rdf:subject ?pfs9 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation10 .
  _:438557 a rdf:Statement ;
    up:attribution _:438535 ;
    rdf:subject ?pfs9 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation10 .
  _:438558 a rdf:Statement ;
    up:source unirule:MF_01246 ;
    rdf:subject ?pfs16 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation17 .
  _:438559 a rdf:Statement ;
    up:attribution _:438536 ;
    rdf:subject ?pfs16 ;
    rdf:predicate up:annotation ;
    rdf:object ?annotation17 .
}
WHERE {
  #baseURI: http://purl.uniprot.org/unirule/MF_01246
  #Rule MF_01246 Created by:? on:2005-02-28 Modified by:Edouard de Castro on:2024-09-03
  ?this up:organism ?thisOrganism ;
    rdfs:seeAlso signature:MF_01246 .
  ?thisOrganism rdfs:subClassOf+ taxon:2 .
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch27 faldo:location ?templateMotifSequenceMatchRegionP3779428 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP3779430 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP37794MF_0124623 .
    ?templateMotifSequenceMatchRegionP3779428 faldo:begin ?templateMotifSequenceMatchBeginP3779429 .
    ?templateMotifSequenceMatchBeginP3779429 faldo:position ?templateMotifSequenceMatchBeginPositionP3779424 ;
      faldo:reference isoform:P37794-1 .
    ?templateMotifSequenceProfileAlignmentOperationP3779430 edam:has_input signature:MF_01246 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch31 faldo:location ?targetMotifMatchRegionMatch32 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0124634 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP37794MF_0124625 .
    ?targetMotifMatchRegionMatch32 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0124633 .
    ?targetMotifMatchRegionMatchBeginMF_0124633 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0124626 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0124634 edam:has_input signature:MF_01246 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP37794MF_0124623, 1, (STRLEN(?templateMotifCigarP37794MF_0124623) - STRLEN(REPLACE(?templateMotifCigarP37794MF_0124623, CONCAT('^(?:-*[^-]){', STR(((61 - ?templateMotifSequenceMatchBeginPositionP3779424) + 1)), '}'), '')))), '[a-z]', '')) AS ?step135) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP37794MF_0124625, 1, (STRLEN(?targetMotifMatchCigarP37794MF_0124625) - STRLEN(REPLACE(?targetMotifMatchCigarP37794MF_0124625, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step135), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP37794MF_0124625, 1, (STRLEN(?targetMotifMatchCigarP37794MF_0124625) - STRLEN(REPLACE(?targetMotifMatchCigarP37794MF_0124625, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step135), '}'), '')))), '[^-]', ''))) AS ?step236) .
    BIND(((?step236 + ?targetMotifMatchRegionMatchBeginPositionMF_0124626) - 1) AS ?thisPositionOn14) .
    BIND(?thisPositionOn14 AS ?thisPositionOn15) .
    BIND(?this AS ?pfs1t37) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn14))) AS ?pfsb11) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn15))) AS ?pfse12) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn14, 1) = 'H')) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a10')) AS ?annotation10) .
    BIND(?this AS ?pfs9) .
  }
  OPTIONAL {
    ?this up:sequence ?thisSequence .
    ?thisSequence rdf:value ?thisSequenceValue .
    ?templateMotifMatch42 faldo:location ?templateMotifSequenceMatchRegionP3779443 ;
      edam:is_output_of ?templateMotifSequenceProfileAlignmentOperationP3779445 ;
      rdf:type edam:data_0869 ;
      rdf:value ?templateMotifCigarP37794MF_0124638 .
    ?templateMotifSequenceMatchRegionP3779443 faldo:begin ?templateMotifSequenceMatchBeginP3779444 .
    ?templateMotifSequenceMatchBeginP3779444 faldo:position ?templateMotifSequenceMatchBeginPositionP3779439 ;
      faldo:reference isoform:P37794-1 .
    ?templateMotifSequenceProfileAlignmentOperationP3779445 edam:has_input signature:MF_01246 ;
      rdf:type edam:operation_0300 .
    ?targetMotifMatch46 faldo:location ?targetMotifMatchRegionMatch47 ;
      edam:is_output_of ?targetMotifSequenceAlignmentOperationMF_0124649 ;
      rdf:type edam:data_0869 ;
      rdf:value ?targetMotifMatchCigarP37794MF_0124640 .
    ?targetMotifMatchRegionMatch47 faldo:begin ?targetMotifMatchRegionMatchBeginMF_0124648 .
    ?targetMotifMatchRegionMatchBeginMF_0124648 faldo:position ?targetMotifMatchRegionMatchBeginPositionMF_0124641 ;
      faldo:reference ?thisSequence .
    ?targetMotifSequenceAlignmentOperationMF_0124649 edam:has_input signature:MF_01246 ;
      rdf:type edam:operation_0300 .
    BIND(STRLEN(REPLACE(SUBSTR(?templateMotifCigarP37794MF_0124638, 1, (STRLEN(?templateMotifCigarP37794MF_0124638) - STRLEN(REPLACE(?templateMotifCigarP37794MF_0124638, CONCAT('^(?:-*[^-]){', STR(((125 - ?templateMotifSequenceMatchBeginPositionP3779439) + 1)), '}'), '')))), '[a-z]', '')) AS ?step150) .
    BIND((STRLEN(SUBSTR(?targetMotifMatchCigarP37794MF_0124640, 1, (STRLEN(?targetMotifMatchCigarP37794MF_0124640) - STRLEN(REPLACE(?targetMotifMatchCigarP37794MF_0124640, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step150), '}'), ''))))) - STRLEN(REPLACE(SUBSTR(?targetMotifMatchCigarP37794MF_0124640, 1, (STRLEN(?targetMotifMatchCigarP37794MF_0124640) - STRLEN(REPLACE(?targetMotifMatchCigarP37794MF_0124640, CONCAT('^(?:[a-z]*(?:[A-Z]|-)){', STR(?step150), '}'), '')))), '[^-]', ''))) AS ?step251) .
    BIND(((?step251 + ?targetMotifMatchRegionMatchBeginPositionMF_0124641) - 1) AS ?thisPositionOn21) .
    BIND(?thisPositionOn21 AS ?thisPositionOn22) .
    BIND(?this AS ?pfs1t52) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn21))) AS ?pfsb18) .
    BIND(URI(CONCAT(STR(?thisSequence), '#position', STR(?thisPositionOn22))) AS ?pfse19) .
    FILTER ((SUBSTR(?thisSequenceValue, ?thisPositionOn21, 1) = 'H')) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a17')) AS ?annotation17) .
    BIND(?this AS ?pfs16) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    ?thisOrganism rdfs:subClassOf+ taxon:91347 .
    BIND(?this AS ?case0) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a1')) AS ?name1) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a2')) AS ?name2) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a3')) AS ?name3) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a4')) AS ?name4) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a5')) AS ?name5) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a6')) AS ?name6) .
  }
  OPTIONAL {
    ?this a up:Protein .
    ?this up:organism ?thisOrganism .
    FILTER (! (EXISTS {
      ?thisOrganism rdfs:subClassOf+ taxon:91347 .
    })) .
    BIND(?this AS ?case7) .
    BIND(URI(CONCAT(STR(?this), '#MF_01246a8')) AS ?name8) .
  }
}
""" .

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