|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
Speeding Shipping, Improving Compliance – Read the ScanCode Systems Case Study |
|
#1
|
|||
|
|||
|
Normalization for Dictionary
I want to know how can I do normalization on a dictionary. What I mean with dictionary here is bilingual dictionary, such as English-French or English-Indonesian dictionary.
I have tried before, but I have difficulties because each word has possibilities to have more than one word type/categories (noun/verb/adjective/etc) and each word has possibilities to have more than one meaning too. Thanks |
|
#2
|
|||
|
|||
|
just have more than 2 columns. Have-> english word, french word 1, french word 2, french word 3 etc....
|
|
#3
|
|||
|
|||
|
This is an example of an application that needs to move to 4th Normal Form (4NF), or Boyce-Codd Normal form (info).
Among other things, this lets you take advantage of the "many-to-many" relationship. For example, if you have two separate tables, and you want to relate them, you create a third table that simply matches primary keys from each table, in many rows. This allows for any combination of keys from one table relating to more than one key from the other table, and vice-versa. Here is a simple tutorial to explain these concepts a little further: http://phpbuilder.com/columns/barry20000731.php3
__________________
The real n-tier system: FreeBSD -> PostgreSQL -> [any_language] -> Apache -> Mozilla/XUL Amazon wishlist -- rycamor (at) gmail.com |
|
#4
|
|||
|
|||
|
You want to have one table for each language, and a third table that describes how they relate to each other.
English_Def: eng_ID word type definition French_Def: fren_ID word type definition Translate: eng_ID fren_ID Each row in the language tables would be unique and could stand alone if we removed the IDs. But using an independant key column is what makes joins possible. If you wanted to include alternate spellings or multiple pronunciations you would remove the word column from the language tables and do: English_Supp: eng_ID spelling pronounciation etc. If you were concerned about accuracy, you could add an ID to the definition tables and/or the tranlation table and create table(s) with the sources. |
|
#5
|
|||
|
|||
|
Hi JLavoie!
Thanks for your attention. I want to ask, with your table structure, how can you manage words with more than one type, such as 'fly'. 'fly' can be noun and verb. I don't talk about words with more than one meaning. I assume that each word has only one meaning. |
![]() |
| Viewing: Dev Shed Forums > Databases > Database Management > Normalization for Dictionary |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|
|