y,{$1}&gt;},
    log_parser = rule &lt;catch_sq_bracket_rule&gt; &lt;id_list_rule&gt; {op(timestamp:$1,message:$2){
        {timestamp: timestamp, message: message, level: &quot;INFO&quot;};
    }},

    /* Config parsing rule */
    config_parser = rule $ID &#39;=&#39; $ID {op(key:$1,value:$3){
        {key: key, value: value};
    }}
};

/* Execute with custom rule set */
csv_result = etl_rules.parse(&quot;John,25,NY&quot;, etl_rules.csv_parser);
log_result = etl_rules.parse(&quot;[2024-01-15 10:30:00] Us