oppskrift/doc/Models.md
2019-03-05 23:20:59 +01:00

3.8 KiB

Models specifications

Recipe

Entity properties

estimatedTime

Array of different estimated times : cookTime, prepTime, performTime, totalTime, waitTime

cookTime

prepTime

performTime

  • https://schema.org/Duration
  • The length of time it takes to perform instructions or a direction (not including time to prepare the supplies)

totalTime

waitTime

cookingMethod

→ Maybe just not use it, or analyse the text to excerpt it
The method of cooking, such as Frying, Steaming,...
Maybe have a checklist of methods ?

recipeCategory

String (255) The category of the recipe—for example, appetizer, entree, etc.

recipeCuisine

String (255)
The cuisine of the recipe (for example, French or Ethiopian).

recipeIngredient

String[]
List of ingredients in text format A single ingredient used in the recipe, e.g. sugar, flour or garlic.

recipeInstructions

String[]
A step in making the recipe, in the form of a single item (document, video, etc.) or an ordered list with HowToStep and/or HowToSection items.
The number of the step should never be the text.

recipeYield

String (50)
The quantity produced by the recipe (for example, number of people served, number of servings, etc).

suitableForDiet

Array of selected keywords (DiabeticDiet, GlutenFreeDiet, HalalDiet, HinduDiet, KosherDiet, LowCalorieDiet, LowFatDiet, LowLactoseDiet, LowSaltDiet, VeganDiet, VegetarianDiet)
Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc.
TODO : Decide the best way to store the list... maybe in the model


tool

String[]
A sub property of instrument. An object used (but not consumed) when performing instructions or a direction.

author

ManyToOne:User
The author, a user Microdata, JSON-LD : Person with name, url (profile) and image.

comment

OneToMany:Note
A list of Note received from the fediverse TODO : define a comment

commentCount

Integer
A property to be shown in microdata/json-ld but in the model

dateModified-

DateTime
The most recent modification date

datePublished

DateTime
The date the first time the recipe appeared online

licence

String
URL of the licence used for the recipe or a string such as "Public domain"

description

Text
The context of the recipe : history, source, ideas to serve it, personal notes, etc..

image

String (255)
URL of the image

name

String (255)
The name of the recipe

likesCount

Integer
Calculated from the likes in the database

difficulty

The degree of difficulty from a list to define

contributor

Maybe add this later. One of the future features is to let someone edit his own version of a recipe. The original author can know about it, accept the changes and add the contributor to the list. But maybe it's too much...

version

Unless there is a versioning system for the recipe there's no point to this

Properties limited the microdata usage

url

schema.org value for microdata & JSON-LD linking to the url of the recipe, given by the framework's router

thumbnailUrl

schema.org value for microdata & JSON-LD linking to the thumbnail image of the recipe

dicussionUrl

schema.org value for microdata & JSON-LD linking to the comments section of the recipe