existencetimeline

Dieser Ausdruck erstellt aus einem Paar von inklusivem Startdatum und inklusivem Endatum (beide optional) eine Zeitlinie eines angegebenen Typs.

Weitere Informationen finden Sie im Abschnitt Zeitlinien erstellen.

<?xml version="1.0" encoding="UTF-8"?>
<RuleSet name="Example_existencetimeline"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation=
"http://www.curamsoftware.com/CreoleRulesSchema.xsd">

  <Class name="Person">

    <Attribute name="dateOfBirth">
      <type>
        <javaclass name="curam.util.type.Date"/>
      </type>
      <derivation>
        <specified/>
      </derivation>
    </Attribute>


    <!-- will be null if the person is still alive -->
    <Attribute name="dateOfDeath">
      <type>
        <javaclass name="curam.util.type.Date"/>
      </type>
      <derivation>
        <specified/>
      </derivation>
    </Attribute>

    <!-- Creates a timeline which is false before the Person is
         born, true while the Person is alive, and false after the
         Person dies.   If the Person has no date-of-death recorded,
         there will be no trailing "false" interval. -->
    <Attribute name="isAliveTimeline">
      <type>
        <javaclass name="curam.creole.value.Timeline">
          <javaclass name="Boolean"/>
        </javaclass>
      </type>
      <derivation>
        <existencetimeline>
          <intervaltype>
            <javaclass name="Boolean"/>
          </intervaltype>
          <intervalfromdate>
            <reference attribute="dateOfBirth"/>
          </intervalfromdate>
          <intervaltodate>
            <reference attribute="dateOfDeath"/>
          </intervaltodate>
          <preExistenceValue>
            <false/>
          </preExistenceValue>
          <existenceValue>
            <true/>
          </existenceValue>
          <postExistenceValue>
            <false/>
          </postExistenceValue>
        </existencetimeline>

      </derivation>
    </Attribute>

   <!-- Creates a timeline which is "Before Birth" before the Person
        is born, "During Lifetime" while the Person is alive, and
        "After Death" after the Person dies.   If the Person has no
        date-of-death recorded, there will be no trailing "After
        Death" interval. -->
    <Attribute name="lifeStatus">
      <type>
        <javaclass name="curam.creole.value.Timeline">
          <javaclass name="String"/>
        </javaclass>
      </type>
      <derivation>
        <existencetimeline>
          <intervaltype>
            <javaclass name="String"/>
          </intervaltype>
          <intervalfromdate>
            <reference attribute="dateOfBirth"/>
          </intervalfromdate>
          <intervaltodate>
            <reference attribute="dateOfDeath"/>
          </intervaltodate>
          <preExistenceValue>
            <String value="Before Birth"/>
          </preExistenceValue>
          <existenceValue>
            <String value="During Lifetime"/>
          </existenceValue>
          <postExistenceValue>
            <String value="After Death"/>
          </postExistenceValue>
        </existencetimeline>

      </derivation>
    </Attribute>




  </Class>
</RuleSet>