Hechos y Reglas Implementadas - rubsalas/CallCenterLog GitHub Wiki
Hechos:
Bases de Datos para BNFs
determinantes( lista ).
Un determinante es la palabra que acompaña al sustantivo para señalar al objeto al que se refiere y concuerda con él en género y número. Utilizado para la verificación del input del usuario con BNF´s y para la construcción de oraciones. Este hecho posee una lista extensa de todos los posibles determinantes.
sujetos( lista ).
Un sustantivo es una palabra que se usa para nombrar a los objetos, a las personas, a los países, etc. Utilizado para la verificación del input del usuario con BNF´s y para la construcción de oraciones. Este hecho posee una lista extensa de todos los sustantivos que forman las posibles interacciones entre el usuario y CallCenterLog para que la verificación de BNF´s sea lo más fluida posible.
verbo(lista)
El verbo es la parte de la oración o categoría léxica que expresa acción, movimiento, existencia, consecución, condición o estado del sujeto. Utilizado para la verificación del input del usuario con BNF´s y para la construcción de oraciones. Este hecho posee una lista extensa de todos los verbos que forman las posibles interacciones entre el usuario y CallCenterLog para que la verificación de BNF´s sea lo más fluida posible. Estos ayudarán al programa a verificar las entradas del usuario y llegar más rápido a sus conclusiones.
adjetivos(lista).
Un adjetivo dice como está el sujeto, lo describe. Se utilizará para describir el problema, y hasta refe.
afirmaciones(lista).
Las afirmaciones serán utilizadas por el usuario para responder a preguntas que CallCenterLog le haga.
negaciones(lista).
Las negaciones serán utilizadas por el usuario para responder a preguntas que CallCenterLog le haga.
inicios(lista_).
Las palabras de inicio son saludos o oraciones de conversación.
finales(lista)
Una palabra final iniciará a CallCenterLog que sus funcionalidades han terminado.
interrogativos(lista)
Un interrogativo es un determinantes utilizado para determinar si la oración será una pregunta o no
referencia(lista).
Las referencias son palabras clave que llevarán a retornar las referencias existentes del problema al usuario
producto(lista).
Al ser un hecho input, se utilizará como comparación para revisar las entradas del usuario. Las palabras clave de los productos son sustantivos con el nombre propio de los productos que CallCenterLog podrá dar soporte de sus propios problemas, causas, soluciones y referencias, mientras el usuario los mencione.
Bases de Datos para Entradas y Respuestas
input([ [pregunta,interrogativo] , lista ]).
Al ser un hecho imput, se utilizará como comparación para revisar las entradas del usuario. Las palabras clave de interrogación son determinantes que van al inicio de una oración para hacer una pregunta. CallCenterLog se dará cuenta así que el usuario está haciendo una consulta.
input([ [problema, producto ] , lista ]).
Al ser un hecho input, se utilizará como comparación para revisar las entradas del usuario. Los problemas están divididos en hechos por producto, por lo tanto, existe un hecho de problemas por producto. Cada hecho contiene un lista de diferentes problemas que CallCenterLog podrá recibir del usuario el deseo de recibir soporte acerca de estos. En base a estos problemas se generaran causas de que estos hayan ocurrido, soluciones y referencias para extender el conocimiento acerca de ellos.
output([ [referencia, producto ] , lista-de-listas ]).
- Las referencias serán un output que solo podrán mostrarse cuando el usuario lo pida explicitamente.
Reglas
read_atomics(Input):
- descripción: Recibe el conjunto de caracteres ingresados por el usuario y pasa por tres funciones/reglas auxiliares:
- read_lc_string(String): Recibe el conjunto de caracteres del usuario.
- clean_string(String,Cleanstring): Elimina caracteres especiales y pasa todo a minúsculas.
- extract_atomics(Cleanstring,ListOfAtomics): Genera una lista con cada palabra/determinante.
oración(Input,[]):
- descripción: BNF implementada mediante listas diferenciadas utilizada para validar una oración que sigue la siguiente estructura:
[Sintagma nominal] + [sintagma verbal]