Como projetar uma linguagem
geral para marcação de
regras
“How to Design a General Rule Markup Language”
Gerd Wagner
Como são usadas as regras

Regras do negócio


Regras de integridade
Regras de “derivação”
Regras de Reação





Atribuição diatônica
Regras em UML/OCL
Regras em SQL
Regras em CLIPS/Jess e PROLOG
Componentes baseados em regras



Módulos baseados em regras em
aplicações Comuns
Regras em protótipos acadêmicos
Sistemas de regras de código aberto
Sintaxe Abstrata X Concreta
Casos de uso








Documentação de regras de negócios
Enriquecimento de ontologias na web
Formulários web
Preferências de privacidade
Intercambio de regras de controle de acesso
Intercambio de regras de e-mail
Intercambio de conhecimento
Especificação declarativa de agentes
Objetivos de projeto

Balanceamento de expressividade e
relevância prática
Integrar todos os padrões
relevantes relacionados
Ainda....




Suportar conjuntos de fatos muito grandes
Suportar informação distribuída
Suportar tanto informação completa como
informação incompleta
Suportar vários tipos de fatos e regras



Qualificada por tempo
Incerteza
Qualificada por confiabilidade
Requisitos




Regras e conjuntos de regras como
objetos diferentes
Incluir restrições de integridade, regras de
derivação e regras de reação
Proporcionar mapeamentos para OCL,
SQL e Prolog
Suportar referencia e interoperabilidade
com ontologias na web



Permitir que fatos sejam recuperados de
fontes de dados secundárias
Permitir que fatos sejam recuperados de
fontes de múltiplas e possivelmente
remotas
Suportar predicados completos, negação
por falha e negação forte
The Open RuleML Standard for
Semantic Web Rule
Interchange
Harold Boley
Harold Boley
NRC IIT e-Business
NRC IIT e-Business
MOST Workshop - Maritimes Open Source Technologies
MOST Workshop - Maritimes Open Source Technologies
Université de Moncton
Université de Moncton
Nov 10, 2004
Nov 10, 2004
Introduction

Rules are part of the Semantic Web

Rule interchange in an open format
is important for e-Business

RuleML is the de facto open
language standard for rule
interchange/markup

Collaborating with W3C, OMG,
and/other standards/gov'nt bodies
RuleML Enables ...
modelling
markup
translation
Rule
16
interchange in
execution
publication
archiving
UML
RDF
XML
ASCII
Business Rule: Positional
''The discount for a customer buying a product is 5 percent
if the customer is premium and the product is regular.''
Implies
head
body
Atom
And
Atom
discoun
t
Rel
customer
Var
product
Var
Atom
5.0
Ind
premium
Rel
customer
Var
regular
Rel
product
Var
<Implies>
<head>
<Atom>
<Rel>discount</Rel>
<Var>customer</Var>
<Var>product</Var>
<Ind>5.0</Ind>
</Atom>
</head>
<body>
<And>
<Atom>
<Rel>premium</Rel>
<Var>customer</Var>
</Atom>
<Atom>
<Rel>regular</Rel>
<Var>product</Var>
</Atom>
</And>
</body>
</Implies>
Implies
head
body
Atom
And
Atom
discount
Rel
customer
Var
product
Atom
5.0
Var
Ind
premium
Rel
customer
Var
regular
product
Rel
Var
<Implies>
<head>
<Atom>
<Rel>discount</Rel>
<Var>customer</Var>
<Var>product</Var>
<Ind>5.0</Ind>
</Atom>
</head>
<body>
<And>
<Atom>
<Rel>premium</Rel>
<Var>customer</Var>
</Atom>
<Atom>
<Rel>regular</Rel>
<Var>product</Var>
</Atom>
</And>
</body>
</Implies>
Download

Como projetar uma linguagem de marcação de regras