Parser

A parser is a software component that takes input data (often in the form of text) and builds a data structure—often some kind of parse tree, abstract syntax tree, or other hierarchical structure—giving a structural representation of the input while checking for correct syntax according to a set of rules or grammar.