You can see the original FAQ (still useful) at Parse::RecDescent::FAQ::Original.
It is a document that I grew over about a decade,
but I no longer have time for editing and categorizing other people's posts to fit them into POD format and to collect answers.

Even if you read the Parse::RecDescent very closely,
you will not be sure of how to get the return data back from a top-level rule.
All the examples are $parser->startrule($text) or die without any attempts to extract the return value.