Используя пускает слюни эксперт с динамическими таблицами решений

Вот то, что я имел, любят делать.

Я имел, любят помещать "правила" в таблицу базы данных. Это - вид подобных пускание слюни xls формат таблицы решений за исключением того, что все правила будут строками в таблице. Таким образом, я могу изменить правила легко. Я должен поместить это в таблицу и не xls, потому что мои правила могли часто изменяться. Действительно ли это возможно с, пускает слюни? Я могу создать базу знаний с правилами, полученными от DB (вместо DRL или xls файла) и каждый раз изменение правил, я могу восстановить базу знаний с нуля (или возможно просто части базы знаний, по существу обновить только те правила, это изменяется..)

7
задан Gnark 7 July 2012 в 15:27
поделиться

1 ответ

Это зависит от того, какие правила вы имеете в виду. Подход, основанный на базе данных, имеет смысл, если у вас есть множество правил, имеющих одинаковую структуру и различающихся только в зависимости от определенных «параметров». В этом случае вы можете написать одно общее правило и использовать базу данных для хранения всех применяемых комбинаций. Например, предположим, что у вас есть правила для расчета стоимости доставки для каждой страны для заказа, например

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

// Similar rules for other countries…

Вы можете заменить эти правила данными из своей базы данных, где каждый CountryShippingRate указывает тариф для одной страны. Затем вы вставляете все строки CountryShippingRate как объекты фактов в сеанс правила и одно правило, например:

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

На практике оказывается, что таким образом можно переписать множество правил типа таблицы решений. .

7
ответ дан 7 December 2019 в 07:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: