recipe-brainstorming-archive
This page contains former formats-in-progress from the recipe-brainstorming page.
format-in-progress - september 2007
This format-in-progress follows the restarting of Recipe development by Frances Berriman on 25th September 2007. Note that this Format-In-Progress section is intended to be edited to reflect the discussion that occurs on the microformats-new list, rather than being a free-form playground for schema. This documentation was produced by Ben Ward and Frances Berriman.
- Editor
- Frances Berriman (BBC)
Introduction
Recipe is based on examples and fields in existing formats.
The recipe microformat is designed for the mark-up of instructions for creating meals, drinks or food-based items.
Root Class Name
To be decided. Likely ‘hrecipe’.
Property List
Class names author
and published
are taken from hAtom, photo
used from hCard and item
from measure.
- Title.
recipe-title
. required. text. - Summary.
recipe-summary
. optional. text. - Author.
author
. optional. hcard. - Date published.
published
. optional. datetime-design-pattern. - Photo(s).
photo
. optional. img or url. - Ingredient(s).
ingredient
. 1 or more required.- Quantity.
quantity
. optional. text, optionally measure. - Item.
item
. required. text. - Note.
note
. optional. text. - Optionality.
optional
. optional. text. Its absence should imply that the ingredient is required.
- Quantity.
- Method.
method
. required. text with optional valid HTML markup. - Yield.
yield
. optional. text. - Preparation time.
preparation-time
. optional. (see ISO-31-1 duration brainstorming) - Tags. optional. rel-tag.
- License. optional. rel-license.
Field Details
Title: The title of the recipe.
- The element is identified by class name
recipe-title
. - A Recipe MUST have a
recipe-title
Summary: The summary provides a short introduction or an accompanying statement about the recipe.
- The element is identified by class name
recipe-summary
. - A Recipe MAY have a
recipe-summary
.
Author: Author the person who authored the recipe.
- The element is identified by class name
author
. - A Recipe MAY include an
author
. - The contents of the element MUST include a valid hCard.
Date published: The date the recipe was published.
- The element is identified by the class name
published
. - A Recipe MAY include a
published
date. - SHOULD (?) use the datetime-design-pattern to encode the published datetime.
Photo: Accompanying image.
- The element is identified by the class name
photo
. - A Recipe MAY include one or more photo elements.
- The element SHOULD use an
<img>
element. - The element MAY use any other element that contains a URL, such as
<a>
or<object>
, but it is not recommended.
Ingredient: Describes an ingredient used in the recipe.
- The element is identified by the class name
ingredient
. - A Recipe MUST have one or more
ingredient
s. - The element MUST include the field item.
- The element MAY include
quantity
,note
and/oroptionality
.
Quantity: The quantity of an ingredient needed for the recipe.
- The element is identified by the class name
quantity
. - An ingredient MAY specify the
quantity
.
Item: Specifies the name of the ingredient.
- The element is identified by the class name
item
. - An ingredient MUST specify the
item
.
Note: A note concerning one of the ingredients.
- The element is identified by the class name
note
. - An ingredient MAY include a
note
.
Optionality: States that an ingredient is optional to the recipe.
- The element is identified by the class name
optionality
. - The
optionality
of aningredient
MAY be specified. - The absence of the element implies that the ingredient is required.
Method: The method of the recipe.
- The element is identified by the class name
method
. - A Recipe MUST include a
method
. - The field MAY include valid HTML markup (e.g. paragraphs).
Yield: Specifies the quantity produced by the recipe.
- The element is identified by the class name
yield
. - A Recipe MAY include a
yield
.
format-in-progress - #2 - october 2008
Introduction
Recipe is based on examples and fields in existing formats. The recipe microformat is designed for the mark-up of instructions for creating meals, drinks or food-based items.
Please note that Format-In-Progress sections are intended to be edited to reflect the discussion that occurs on the microformats-new list, rather than being a free-form playground for schema. This Format-In-Progress was produced by ThomasLoertsch 15:29, 15. Oct 2008 (CET)
Changelog
This second Format-In-Progress reflects the discussions following the first one from september 2007 (see recipe-brainstorming-archive). It is not an entirely new format-in-progress proposal but rather an evolution from the september07-version and about 90% the same. A short overview of changes:
- made
author
andpublished
plural - added
ingredients
element - made
ingredient
an optional subelement ofingredients
- modified quantity (and removed the element
quantity
) to improve compatability with measure - deleted ingredient-
optionality
method
changed to optionalpreparation-time
changed to optionally multiple instances- added
note
topreparation-time
and made bothnote
s hCard elements preparation-time
- added
nutrition
- removed
rel-license
element, because it can't be scoped to one of several receipes on one page (see recipe-issues)
Root Class Name
To be decided. Likely ‘hRecipe’.
Property List
Class names author
, photo
and note
are taken from hCard, published
used from hAtom and item
from measure.
- Title.
recipe-title
. required. text. - Summary.
recipe-summary
. optional. text. - Author.
author
. optional. 1 or more. hcard. - Date published.
published
. optional. 1 or more. datetime-design-pattern. - Photo(s).
photo
. optional. 1 or more. img or url. [[hcard]. - Ingredients.
ingredients
. required. text with optional valid HTML markup or 1 or moreingredient
elements.- Ingredient.
ingredient
. optional. 1 or more.- Quantity.
num
,unit
anditem
. optional. measure. - Note.
note
. optional. text. [[hcard].
- Quantity.
- Ingredient.
- Method.
method
. optional. text with optional valid HTML markup. - Yield.
yield
. optional. text. - Preparation time.
preparation-time
. 1 or more, optional. (see ISO-31-1 duration brainstorming)- Note.
note
. optional. text. [[hcard].
- Note.
- Tags.
tag
. optional. 1 or more. rel-tag. - Nutrition.
nutrition
. optional. 1 or more.- Quantity.
num
,unit
anditem
. optional. measure.
- Quantity.
Field Details
Title: The title of the recipe.
- The element is identified by class name
recipe-title
. - A Recipe MUST have a
recipe-title
Summary: The summary provides a short introduction or an accompanying statement about the recipe.
- The element is identified by class name
recipe-summary
. - A Recipe MAY have a
recipe-summary
.
Author: Author the person who authored the recipe.
- The element is identified by class name
author
. - A Recipe MAY include an
author
. - The contents of the element MUST include a valid hCard.
Date published: The date the recipe was published.
- The element is identified by the class name
published
. - A Recipe MAY include a
published
date. - SHOULD (?) use the datetime-design-pattern to encode the published datetime.
Photo: Accompanying image.
- The element is identified by the class name
photo
. - A Recipe MAY include one or more photo elements.
- The element SHOULD use an
<img>
element. - The element MAY use any other element that contains a URL, such as
<a>
or<object>
, but it is not recommended. - The contents of the element MUST follow the conventions outlined in hCard.
Ingredients: Describes the ingredients used in the recipe.
- The element is identified by the class name
ingredients
. - A Recipe MUST include one
ingredients
element. - The field MAY include valid HTML markup (e.g. paragraphs).
- The element MAY include 1 or more
ingredient
elements.
Ingredient: Describes one ingredient used in the recipe.
- The element is identified by the class name
ingredient
. - It MUST only occur within an
ingredients
element. - A Recipe MAY have one or more
ingredient
s. - The element MAY include the fields
num
,unit
anditem
following measure. - The element MAY include a
note
.
Note: A note concerning an Ingredient or a Preparation Time element (for element Preparation Time see below).
- The element is identified by the class name
note
. - Ingredients and Preparation Time elements MAY include a
note
. - The contents of the element MUST follow the conventions outlined in hCard.
Method: The method of the recipe.
- The element is identified by the class name
method
. - A Recipe MAY include a
method
. - The field MAY include valid HTML markup (e.g. paragraphs).
Yield: Specifies the quantity produced by the recipe.
- The element is identified by the class name
yield
. - A Recipe MAY include a
yield
.
Preparation Time: The time it takes to prepare the meal described by the recipe.
- The element is identified by the class name
preparation-time
. - A Recipe MAY include one or more
preparation-time
s. - Each Preparation Time element MAY include a
note
, to specify their respective purpose.
Nutrition:
- The element is identified by class name
nutrition
. - A Recipe MAY include one or more
nutrition
elements. - The element MAY include the fields
num
,unit
anditem
following measure.
Example
<div class="hrecipe"> <p class="recipe-title">Pommes Frites</p> <p class="recipe-summary"> Pommes frites originate in outer space. They are served hot.<br /> This recipe is only an example. Don't try this at home! </p> <p class="vcard fn">Thomas Loertsch</p> <p>Published <abbr class="published" title="2008-10-14T10:05:37-01:00">14. Oct 2008</abbr></p> <img src="/img/pommes.png" class="photo" width="100" height="100" alt="Pommes Frites"/> <p class="ingredient hmeasure"> <span class="num">500</span> <span class="unit">gramme</span> <span class="item">potatoes</span>, <span class="note">hard cooking</span>. </p> <ul class="method"> <li>First wash the potatoes.</li> <li>Then slice and dice them and put them in boiling fat.</li> <li>After a few minutes take them out again.</li> </ul> <p>Enough for <span class="yield">12</span> children.</p> <p class="preparation-time hmeasure">Preparation time is approximately <span class="num">90</span> <abbr class="unit" title="minutes">min</abbr>. </p> <p class="preparation-time hmeasure">Add <span class="num">5</span> <abbr class="unit" title="minutes" >min</abbr> for <span class="note">preparing the Ketchup</span>. </p> <p>This recipe is <a href="http://www.eut.de/tags/difficulty/easy" rel="tag">easy</a> and <a href="http://www.eut.de/tags/tastyness/delicious" rel="tag">delicious</a>.</p> <p class="nutrition hmeasure"> Pommes Frites have more than <span class="num">1000</span> <span class="unit">Joule</span> <span class="type">Energy</span>. </p> </div>