Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Modelo de BD Diccionario

Estas en el tema de Modelo de BD Diccionario en el foro de Bases de Datos General en Foros del Web. Hola, Necesito crear una web que funcione como un diccionario multilingüe. La idea es que cada palabra tenga sus sinónimos y sus traducciones respectivas, no ...
  #1 (permalink)  
Antiguo 26/05/2008, 15:57
Avatar de gabyweb  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 364
Antigüedad: 22 años, 3 meses
Puntos: 0
Información Modelo de BD Diccionario

Hola,

Necesito crear una web que funcione como un diccionario multilingüe.
La idea es que cada palabra tenga sus sinónimos y sus traducciones respectivas, no deben haber palabras repetidas.

Mi problema es no sé cómo diseñar la bd? alguien tiene alguna sugerencia para ésto?

Ojalá puedan ayudarme, gracias
__________________
Gaby :adios:
  #2 (permalink)  
Antiguo 27/05/2008, 00:15
 
Fecha de Ingreso: agosto-2004
Mensajes: 67
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: Modelo de BD Diccionario

Que tal, mira no soy un experto en el tema pero yo lo realizaria de la siguiente manera, tendria tablas de idiomas con todas sus respectivas palabras y tablas que vinculen cada palabra con sus sinonimos, seria algo asi:
(ej con 2 idiomas)

Tabla1: Castellano (ID, Palabra)
Tabla2: Sinonimos_Cast (ID_Palabra, ID_Sinonimo) (ambos ID apuntan a la 1)
Tabla3: Ingles (ID, Palabra)
Tabla4: Sinonimos_Ingles (ID_Palabra, ID_Sinonimo) (ambos ID apuntan a la 2)
Tabla5: Castellano_Ingles (ID_Castellano, ID_Ingles)

entonces asi eligiendo una palabra por ej en castellano de la tabla dos buscas todos los sinonimos y despues con la tabla 5 buscas la palabra en ingles y tambien sus sinonimos en ingles. Ahora el tema que tenes que tener cuidado que por ej Agarrar es sinonimo de tomar, pero tomar en castellano tambien significa beber eso tenes que ver como separar cuando se quiere un significado o el otro como pasa con muchas palabras en castellano.

No se si te sirve mi idea, si no te quedo claro algo pregunta y en cuanto pueda te contestare. Suerte.

Hasta luego.

El Duende
  #3 (permalink)  
Antiguo 27/05/2008, 06:52
Avatar de gabyweb  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 364
Antigüedad: 22 años, 3 meses
Puntos: 0
Pregunta Respuesta: Modelo de BD Diccionario

Hola Duende,

Gracias por tu sugerencia, qué pasaría si tengo "una palabra" con 9 o más traducciones?
__________________
Gaby :adios:
  #4 (permalink)  
Antiguo 28/05/2008, 01:49
 
Fecha de Ingreso: agosto-2004
Mensajes: 67
Antigüedad: 19 años, 8 meses
Puntos: 0
Respuesta: Modelo de BD Diccionario

No se bien a que te referis, si tiene 9 o mas traducciones de distintos idiomas las vas a sacar de las tabla que unifican de a dos idiomas en mi ejemplo al ser dos idiomas tenes la tabla castellano_ingles, pero tambien si pusieramos portugues tendrias la tabla castellano_ingles, castellano_portugues, y si no solo queres buscar palabras en castellano, como por ej buscar una palabra en ingles con su traduccion en portugues tendrias tambien ingles_portugues, osea siempre vas a tener la tabla que unifique dos idiomas, osea si tenes 9 idiomas tendras 8 tablas castellano_OTROIDIOMA, no se si se entiende a lo que voy.

Ahora no se si te referias a eso o que tenga 9 o mas sinonimos y eso tampoco es problema ya que en la tabla sinonimos_Cast te apareceria todos sean 2, 3 o 10.

Decime si te aclare la duda o no entendi bien cual era tu duda.

Hasta luego.

El Duende
  #5 (permalink)  
Antiguo 28/05/2008, 02:46
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 3 meses
Puntos: 13
Respuesta: Modelo de BD Diccionario

2 idiomas --> 5 tablas minimo
3 idiomas --> 9 tablas minimo
4 idiomas --> 14 tablas minimo
...

Prueba asi:
Tabla1: Palabras (ID, Palabra, idioma) -- Aqui van todas las palabras
Tabla2: Sinonimos (ID_Palabra_1, Id_palabra_2) -- Relaciona dos palabras para indicar que son sinonimos
Tabla3: Traduciones (ID_Palabra, ID_Palabra) -- Relaciona dos palabras para indicar el significado en otro idioma.

Dejando el modelo bien indexado y con un par de trigger para controlar que las palabra de sinonimos son del mismo idioma y que las palabras de la traduccion son de distinto idioma te puede valer para empezar. Esto es lo primero que se me ha venido a la cabeza, con la información que das.
De esta forma si tienes un idioma nuevo no tienes que añadir X tablas más.

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:51.