Les attributs calculés sont répertoriés directement dans la classe de règles.
<?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>
<!-- Les attributs initialisés possèdent tous un type,
mais pas de dérivation.
Vous ne devez PAS réorganiser de façon arbitraire
les attributs initialisés. -->
<Attribute name="firstName">
<type>
<javaclass name="String"/>
</type>
</Attribute>
<Attribute name="age">
<type>
<javaclass name="Number"/>
</type>
</Attribute>
</Initialization>
<!-- Chaque attribut calculé indique
un type et une dérivation.
Vous êtes libre de réorganiser arbitrairement
les attributs calculés. -->
<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>