Parsing EDIFACT in Python with syntax trees

(github.com)

14 points | by alexprengere 2 days ago ago

1 comments

  • alexprengere 2 days ago

    Edison is a Python library for parsing EDIFACT messages. Instead of treating a message as a flat list of segments, it models messages as a syntax tree: segments can define groups of child segments, recursively.

    You define the syntax tree once, then parse, validate, or pretty-print messages against that structure. It works by converting the syntax tree to a state machine of possible transitions between segments.