Saltar a: navegación, buscar

Usar Drools 5

Drools 5 introduce el concepto de palabras clave fijas y flexibles.

Palabras clave fijas

Las palabras clave fijas están reservadas: no puede usar ninguna palabra clave fija al nombrar objetos de dominio, propiedades, métodos, funciones y otros elementos que se usan en el texto de la regla. La siguiente lista de palabras clave fijas se deben evitar como identificadores al escribir reglas:

  • true
  • false
  • null

Palabras clave flexibles

Las palabras clave flexibles se reconocen en su contexto, lo que le permite utilizar estas palabras en cualquier otro lugar si lo desea, aunque Genesys recomienda evitarlas si es posible para evitar confusiones. La lista de palabras clave flexibles es:

  • lock-on-active
  • date-effective
  • date-expires
  • no-loop
  • auto-focus
  • activation-group
  • agenda-group
  • ruleflow-group
  • entry-point
  • duration
  • package
  • import
  • dialect
  • salience
  • enabled
  • attributes
  • rule
  • extend
  • when
  • then
  • template
  • query
  • declare
  • function
  • global
  • eval
  • not
  • in
  • or
  • and
  • exists
  • forall
  • accumulate
  • collect
  • from
  • action
  • reverse
  • result
  • end
  • over
  • init

Puede usar estas palabras (fijas y flexibles) como parte del nombre de un método en notación camello, por ejemplo notSomething() o accumulateSomething()sin ningún problema.

Eludir palabras clave fijas

Aunque es poco probable que utilice las tres palabras clave anteriores en sus modelos de dominio existentes, si es absolutamente necesario usarlas como identificadores en lugar de palabras clave, el lenguaje DRL tiene la capacidad de eludir de palabras clave fijas que encuentra en el texto de la regla. Para eludir una palabra, simplemente enciérrala entre acentos graves, así:

Holiday( `true` == "yes" ) // 

Tenga en cuenta que Drools resolverá esa referencia al método:

Holiday.isTrue()
Se editó esta página por última vez el 22 nov 2019 a las 09:29.
Comments or questions about this documentation? Contact us for support!