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.
just have more than 2 columns. Have-> english word, french word 1, french word 2, french word 3 etc....
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
July 11th, 2002, 05:08 PM
You want to have one table for each language, and a third table that describes how they relate to each other.
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:
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.
July 12th, 2002, 09:01 PM
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.