By Scott Abel, The Content Wrangler
Structured content gurus frequently cite the creation of cookbooks as an example of the power of XML. They use recipes because—we assume—nearly everyone is familiar with the recipe as a document type and such examples may make it easier for those new to XML to understand the power of consistently structured content. Sometimes the gurus even invoke the Darwin Information Architecture (DITA), as did Bob DuCharme in his recent post Customized Cookbooks.
DuCharme wrote:
“My favorite example of content that is a good fit is cookbooks: of the three basic topic types in the DITA architecture, ‘task’ has a structure that fits around the {title, description, ingredient list, assembly step list, conclusion} structure of a typical recipe with just a few renames. Once you automate the conversion of RecipeML files into DITA-compliant recipes, the DITA Open Toolkit can turn them into HTML, PDF, RTF, troff, and several other formats.”
Bob does a good job of explaining how the DITA architecture could be leveraged to create cookbooks—after all, recipes are procedural documents and therefore a nice fit with DITA. But, Bob fails to explore the real promise of DITA and recipes: Helping cooks make meals.
Sure, cookbooks are nice. But there’s no shortage of cookbooks nor recipe websites. What is missing is obvious to almost any cook: integrated instructions for making a meal.
Suppose you want to make a Thanksgiving meal for your friends and family. You want to prepare the following:
- Salad
- Turkey and Gravy
- Sage Dressing
- Green Beans
- Yams
- Cranberry Sauce
- Dinner Rolls
- Pumpkin Pie
- Iced Tea
- Coffee
If you’ve ever cooked a meal, you already know that you don’t make each of the menu items one after another. Instead, you start the turkey, then clean the salad greens, make the iced tea, etc. You juggle these disparate recipes and try to figure out the most efficient process for integrating all of the recipes into one meal preparation plan. Often through trial-and-error, you discover the proper order for preparing all of the items, without completely messing up the meal.
Cookbooks don’t help much with meal preparation tasks. And, yet, meals are what cooks make.
The promise of XML (and by extension, DITA) is to help us deliver the right information, to the right people, at the right time, in the right language and format. If this is true, then the real value of XML is not in delivering customized cookbooks. It’s to help cooks accomplish the tasks involved in preparing a meal.
What’s needed is customized meal planning services. Cooks could visit a web portal, enter in the items they’d like to prepare, and the system will blend all of the recipes together into a new set of instructions designed to guide the cook through the entire meal making process. (Video cooking school Rouxbe addressed this issue with their Holiday Meal Made Easy class which provided cooks with instructions on the “execution of multiple dishes at the same time”.)
And if you really want to get cooks excited, allow them to switch the individual recipes and compare how meal preparation would be impacted if they make macaroni and cheese instead of baked potatoes? Add to the mix a service like Pronto that can look up individual items and tell the cook how much he or she should expect to pay for the ingredients at a local store. This is particularly useful to anyone concerned about the overall cost of a meal. What happens if I substitute walnuts for Macadamia nuts? How much will the cost per meal (or per person) be impacted?
When trying to educate beginners about XML, recipes are a good place to start. But, when trying to show the true power of XML, it’s important that we move past examples that are publishing or book-based. These examples seem like good ideas but they’re not. They don’t challenge us to think outside the old school paradigm. The real promise of XML is not customized cookbooks. Instead, the real power of XML is in the delivery of value-added information as a service. Meal preparation is a good place to start.
Anyone ready to tackle that challenge?