Pregunta

Esto es lo que tenía que hacer como.

tuve como para poner "reglas" en una tabla de base de datos. Esto es algo así como el formato de tabla de decisión drools xls, excepto que todas las reglas serán filas de una tabla. De esta manera puedo modificar las reglas fácilmente. Tengo que poner esto en una mesa y no un xls porque mis reglas podrían ser cambia con frecuencia. ¿Es esto posible con drools? ¿Puedo construir una base de conocimiento con las reglas recuperados de una (un archivo xls en lugar de un DRL o) DB y cada cambio de las reglas de tiempo puedo reconstruir la base de conocimientos a partir de cero (o tal vez sólo partes de la base de conocimiento, esencialmente actualizar sólo aquellas reglas que ha cambiado ..)

¿Fue útil?

Solución

Depende de qué tipo de reglas que tiene en mente. Una base de datos respaldados enfoque tiene sentido si usted tiene un montón de reglas que tienen la misma estructura, y que sólo variará en función de ciertos parámetros ''. En este caso se puede escribir una sola regla genérica, y el uso de la base de datos para almacenar todas las combinaciones que se aplican. Por ejemplo, suponga que tiene unas reglas para el cálculo de las tasas de envío por país, para un pedido, por ejemplo.

rule "Shipping rates to France"
when
    $order : Order(country == 'fr')
then
    $order.setShippingRate(10.0);
    update(order);
end

// Similar rules for other countries…

Se podría reemplazar estos datos de reglas de su base de datos, donde cada CountryShippingRate especifica la velocidad de un país. A continuación, se inserta todas las filas CountryShippingRate como hechos objetos de la sesión de reglas, y una sola regla, como:

rule "Shipping rates"
when
    $order : Order($country : country)
    CountryShippingRate($rate : rate, country == $country)
then
    $order.setShippingRate($rate);
    update(order);
end

En la práctica, resulta que un montón de reglas de tipo de tabla de decisiones se pueden reescribir esta manera.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top