Extend the `recipes` example with a solution for dealing with a mixed data representation using both data objects and Prolog facts