Line 14: |
Line 14: |
| == Generalities == | | == Generalities == |
| | | |
| + | === Languages === |
| Each language has a 2-letter prefix. e.g. "en" for English and "fr" for French. | | Each language has a 2-letter prefix. e.g. "en" for English and "fr" for French. |
| | | |
| Whenever possible, the canonical language for each field value should be English. e.g. en:soups is the canonical value for the Soups category. | | Whenever possible, the canonical language for each field value should be English. e.g. en:soups is the canonical value for the Soups category. |
− | A value can be defined in another language (which becomes the canonical language), e.g. fr:soupes-a-l-oignon could be the canonical value for "Onion Soups" if we don't have an English tranlsation yet. Before December 2013, the taxonomies were defined for each language, with most definitions for French, but English translations will be added progressively. | + | A value can be defined in another language (which becomes the canonical language), e.g. fr:soupes-a-l-oignon could be the canonical value for "Onion Soups" if we don't have an English translation yet. Before December 2013, the taxonomies were defined for each language, with most definitions for French, but English translations will be added progressively. |
| | | |
| New values (e.g. categories that do not exist yet) should have an English canonical value. | | New values (e.g. categories that do not exist yet) should have an English canonical value. |
Line 25: |
Line 26: |
| When a field value needs to be translated to a target language, if the translation does not exist yet, English is shown (or the canonical language if the English translation does not exist either). | | When a field value needs to be translated to a target language, if the translation does not exist yet, English is shown (or the canonical language if the English translation does not exist either). |
| | | |
| + | === Synonyms === |
| In each language, each value can have a number of synonyms. | | In each language, each value can have a number of synonyms. |
| | | |
Line 31: |
Line 33: |
| Synonyms are recursive: if en:yoghurt is a synonym of en:yogurt, then en:banana_yoghurt will automatically be added as a synonym of en:banana_yogurt | | Synonyms are recursive: if en:yoghurt is a synonym of en:yogurt, then en:banana_yoghurt will automatically be added as a synonym of en:banana_yogurt |
| | | |
| + | === Stopwords === |
| Stopwords can be used to further extend synonyms. e.g. if "à" and "la" are stopwords for French, then "Yaourts fraise" will automatically be mapped to "Yaourts à la fraise". | | Stopwords can be used to further extend synonyms. e.g. if "à" and "la" are stopwords for French, then "Yaourts fraise" will automatically be mapped to "Yaourts à la fraise". |
| | | |
| + | === Taxonomy architecture === |
| The taxonomy is not a strict hierarchy: values can have multiple parents. But cycles are not allowed. | | The taxonomy is not a strict hierarchy: values can have multiple parents. But cycles are not allowed. |
| | | |