existencetimeline

Crea una línea de tiempo de un tipo especificado a partir de un par de fechas de inicio y finalización inclusive, cada una de las cuales es opcional.

Consulte Construcción de líneas de tiempo.

<?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>


    <!-- será nulo si el persona aún está activa -->
    <Attribute name="dateOfDeath">
      <type>
        <javaclass name="curam.util.type.Date"/>
      </type>
      <derivation>
        <specified/>
      </derivation>
    </Attribute>

    <!-- Crea una línea de tiempo que es falsa antes de que nazca
         la persona, verdadera mientras la persona está viva y falsa después de que
         muera la persona. Si la persona no tiene ninguna fecha de defunción registrada,
         no habrá ningún intervalo falso ("false") final.-->
    <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>

   <!-- Crea una línea de tiempo que es antes del nacimiento ("Before Birth") antes de que
        nazca la persona, durante el tiempo de vida ("During Lifetime") mientras la persona está viva y
        después de la muerte ("After Death") después de que muera la persona. Si la persona no tiene
        ninguna fecha de defunción registrada, no habrá ningún intervalo de después de la muerte ("After
        Death") final. -->
    <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>