code: def create_BIP122_uri(
      chain_id: str, resource_type: str, resource_identifier: str
  ) -> URI:
      
      if resource_type != BLOCK:
          raise ValueError("Invalid resource_type.  Must be one of 'block'")
      elif not is_block_or_transaction_hash(resource_identifier):
          raise ValueError(
              "Invalid resource_identifier.  Must be a hex encoded 32 byte value"
          )
      elif not is_block_or_transaction_hash(chain_id):
          raise ValueError("Invalid chain_id.  Must be a hex encoded 32 byte value")
  
      return URI(
          parse.urlunsplit(
              [
                  "blockchain",
                  remove_0x_prefix(chain_id),
                  f"{resource_type}/{remove_0x_prefix(resource_identifier)}",
                  "",
                  "",
              ]
          )
      )
docs: See: https://github.com/bitcoin/bips/blob/master/bip-0122.mediawiki