![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Classification des demandes basées sur des règles
Dans toute technologie basée sur des règles, le traitement des règles implique trois grands champs d'action comprenant le vocabulaire qui forme le langage, la grammaire mettant en oeuvre le vocabulaire dans des expressions et le moteur de traitement des règles.
Vocabulaire
Le vocabulaire se compose des opérateurs, des mots-clés de variable utilisés comme opérandes et des instructions de flux de contrôle. Le langage est Java™ Message Service (JMS 1.1) et la syntaxe du sélecteur de message. Le sélecteur de message est une chaîne dont la syntaxe est basée sur un sous-ensemble de l'expression conditionnelle SQL92. La syntaxe d'expression générale est la suivante :
opérande opérateur expressionLittérale [| opérateurComposé expression] .
Dans l'exemple suivant,
serverhost like '%ibm.com' or clienthost = 'myhost.raleigh.ibm.com'
serverhost et clienthost sont des opérandes, like et = sont des opérateurs, or est l'opérateur composé, '%ibm.com' et 'myhost.raleigh.ibm.com' sont l'expression littérale. Les crochets [] indiquent que l'expression contenue est facultative, et la barre verticale | indique qu'après l'opérateur, une expression littérale ou un opérateur composé peut être suivi d'autres expressions.
- Routage
- Maintenance
- permit
- reject
- permitsticky
- redirect
Une instruction complète consiste en une expression de règle et l'action à entreprendre est représentée différemment selon la source de l'entrée. Dans la console d'administration, les actions sont divisées en formulaires et en zones faciles à sélectionner. Si vous utilisez l'option de script, l'instruction complète s'apparente à ce qui suit :
expression<delimeter>action
Par exemple, clienthost='localhost' and serverhost like '%.ibm.com'?permit?DefaultApplication.ear
Du point de vue de l'implémentation, les classes de travail, qui sont des documents XML, permettent de capturer des expressions de règles ainsi que d'autres artefacts d'implémentation. C'est pourquoi une classe de travail est un document XML contenant zéro ou plusieurs éléments matchRules et un ou plusieurs éléments workClassModules.
Opérateurs
La fonction Gestion intelligente prend en charge les opérateurs dans les expressions de règles. En général, le véritable type de données d'un opérande n'est pas connu. Si vous utilisez HTTP, chaque opérande est traité comme une chaîne de type de données et l'opérateur est utilisé comme indicateur du type de données réel de l'opérande en vue de la validation des données. Exemple d'opérateur permettant de tester un opérande dont la valeur est null : IS NULL.
Opérandes
- HTTP
JMS
SOAP sur HTTP, appelé simplement SOAP
Protocole IIOP (Internet Inter-ORB Protocol)
Exemple d'opérande pour les demandes HTTP : MIMEType.