Atributos calculados

Los atributos calculados se listan directamente en la clase de regla.

Consejo: En una clase de regla, no hay ningún significado asociado al orden en que se especifican los atributos calculados. Puede volver a ordenar los atributos calculados en una clase de regla sin que ello afecte al comportamiento de la clase de regla.
<?xml version="1.0" encoding="UTF-8"?>
<RuleSet name="Example_RuleClass"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation=
"http://www.curamsoftware.com/CreoleRulesSchema.xsd">
  <Class name="Person">

    <Initialization>
      <!-- Cada atributo inicializado contiene un tipo
           pero ninguna derivación.

           NO debe volver a ordenar de forma arbitraria
           los atributos inicializados. -->
      <Attribute name="firstName">
        <type>
          <javaclass name="String"/>
        </type>
      </Attribute>
      <Attribute name="age">
        <type>
          <javaclass name="Number"/>
        </type>
      </Attribute>
    </Initialization>

    <!-- Cada atributo calculado especifica
         un tipo y una derivación.

         Puede volver a ordenar arbitrariamente
         los atributos calculados. -->
    <Attribute name="isAdult">
      <type>
        <javaclass name="Boolean"/>
      </type>
      <derivation>
        <compare comparison=">=">
          <reference attribute="age"/>
          <Number value="18"/>
        </compare>
      </derivation>
    </Attribute>

    <Attribute name="isSeniorCitizen">
      <type>
        <javaclass name="Boolean"/>
      </type>
      <derivation>
        <compare comparison=">=">
          <reference attribute="age"/>
          <Number value="65"/>
        </compare>
      </derivation>
    </Attribute>

  </Class>

</RuleSet>