o Database
Database is the central technology used in "eal plan system" since the program is dealing with ingredients and recipes which are in form of data digitally stored in computer. As a data-driven application, database should be used to ensure the integrity and efficiency of the program. It is up to the development team to decide which DBMS (database management system) should be used for “meal plan system? however as it is a relatively small stand-alone program, DBMS like mySQL or postgresql might be suggested. If in a future time, recipe database is expected to be connected to an even larger external centralized database, more powerful DBMS such as SQL-Server or Oracle can be implemented.
o XML
XML is a very powerful way to handle data, it does not provide a standard, it provides a technology to create standards and with those handle data weather it is structured (like databases) or unstructured (like text). So "RecipeXML" is proposed: the format has to provide data in a structured and extensible way so applications can easily work with just a selection of the data.
>Translation of ingredients.
When searching the internet for recipes it is a good thing to know the translation of the ingredients used. We will have to provide a database with general ingredients and a number of translations accordingly. This database will also have to extensible since we will want to add more ingredients over time. It would be a good thing to use the same technique as with the units: define base ingredients and then translate them elsewhere (a language specific file) referring to the base ingredients. In this case every RecipeXML document's ingredients could be translated in an eyeblink into any language provided. Of course every document would have to be constructed in English or would need an additional field that describes the locales/language used.
>Translation of recipes.
This will be impossible without the use of translation software, so every recipe should have a language field which tells which language is used for the recipe. There should be a special part inside the RecipeXML document for describing the steps of the recipe for every language.
A typical RecipeXML structure could look like this:
----------------------------------------------------------------------------------------
<recipe>
<title>coffee and bisquits</title>
<link url="http://www.somesite.com/recipe1.html">www.somesite.com</link>
<pubDate>Tue, 22 Mar 2005 20:00:00 CET</pubDate>
<author>Group 12</author>
<language>en-us</language>
<time>1200</time>
<ingredients>
<ingr id="1" name="coffee" value="500" type="gr" />
<ingr id="2" name="milk" value="1" type="l" state="cold" />
<ingr id="3" name="sauce" value="3" type="pc" />
<ingr id="4" name="biscuit" value="10" type="pc" />
</ingredients>
<instructions>
<step name="1">
<img src="http://www.somesite.com/coffee.png" />
<desc>Make the coffee by using your coffee machine</desc>
</step>
<step name="2">
<img src="http://www.somesite.com/milk_sauce.png" />
<desc> Put in the milk and sauce.</desc>
</step>
<step name="3">
<img src="http://www.somesite.com/coffe_bisquits.png" />
<desc> Ask you friends to come along and serve the coffee in nice cups
with a plate full bisquits at the center of the table.</desc>
</step>
</instructions>
</recipe>
----------------------------------------------------------------------------------------
A typical RecipeXML can be published like this:
----------------------------------------------------------------------------------------
coffee and bisquits
source: www.somesite.com
publication date: Tue, 22 Mar 2005 20:00:00 CET
author: Group 12
language: en-us
total time: 1200 seconds
INGREDIENTS
- 500 gr coffee
- 1 l milk (cold)
- 3 pc sauce
- 10 pc biscuit
INSTRUCTIONS:
Step 1:
Make the coffee by using your coffee machine
Step 2:
Put in the milk and sauce.
Step 3:
Ask you friends to come along and serve the coffee in nice cups with a plate full bisquits at the center of the table.
----------------------------------------------------------------------------------------
To conclude, if XML technology is used in “meal plan system?for storing ingredients and recipes, advantages are:
- Provide data in a structured and extensible way.
- Provide functionality to localize data.
- Provide techniques to make data available.
The development team will need to come up a standard "Recipe DTD" to standardize the XML format for ingredients and recipe, and it is always feasible to have the published ingredients and recipes in a much more visual representation as sample screenshots will be given integrated within the “meal plan system?
back to top
|