The stream of tokens from the lexing stage is split up into phrases. Each phrase is parsed which means it is checked against the rules of the language. If the phrase is not valid, an error will be recorded. E.g. <number><operator><identifier> may not be valid and would be picked up by syntax analysis