Przykład 4

<Ruleset>
 <rule>
  <Forall>
    <declare><Var>item</Var></declare>
    <declare><Var>deliverydate</Var></declare>
    <declare><Var>scheduledate</Var></declare>
    <declare><Var>diffduration</Var></declare>
    <declare><Var>diffdays</Var></declare>
    <formula>
      <Implies>
        <if>
          <And>
            <formula>
              <Uniterm>
                <op><Const type="rif:local">perishable</Const></op>
                <arg><Var>item</Var></arg>
              </Uniterm>
            </formula>
            <formula>
              <Uniterm>
                <op><Const type="rif:local">delivered</Const></op>
                <arg><Var>item</Var></arg>
                <arg><Var>deliverydate</Var></arg>
                <arg><Const type="rif:iri">ppl:John</Const></arg>
              </Uniterm>
            </formula>
            <formula>
              <Uniterm>
                <op><Const type="rif:local">scheduled</Const></op>
                <arg><Var>item</Var></arg>
                <arg><Var>scheduledate</Var></arg>
              </Uniterm>
            </formula>
            <formula>
              <Uniterm>
                <op><Const type="rif:local">fn:subtract-dateTimes-yielding-dayTimeDuration</Const></op>
                <arg><Var>deliverydate</Var></arg>
                <arg><Var>scheduledate</Var></arg>
                <arg><Var>diffduration</Var></arg>
              </Uniterm>
            </formula>
            <formula>
              <Uniterm>
                <op><Const type="rif:local">fn:get-days-from-dayTimeDuration</Const></op>
                <arg><Var>diffduration</Var></arg>
                <arg><Var>diffdays</Var></arg>
              </Uniterm>
            </formula>
            <formula>
              <Uniterm>
                <op><Const type="rif:iri">op:numeric-greater-than</Const></op>
                <arg><Var>diffdays</Var></arg>
                <arg><Const type="xsd:long">10</Const></arg>
              </Uniterm>
            </formula>
          </And>
        </if>
        <then>
          <Uniterm>
            <op><Const type="xsd:long">reject</Const></op>
            <arg><Const type="rif:iri">ppl:John</Const></arg>
            <arg><Var>item</Var></arg>
          </Uniterm>
        </then>
      </Implies>
    </formula>
  </Forall>
 </rule>
 <rule>
  <Forall>
    <declare><Var>item</Var></declare>
    <formula>
      <Implies>
        <if>
          <Uniterm>
            <op><Const type="rif:local">unsolicited</Const></op>
            <arg><Var>item</Var></arg>
          </Uniterm>
        </if>
        <then>
          <Uniterm>
            <op><Const type="rif:local">reject</Const></op>
            <arg><Const type="rif:iri">ppl:Fred</Const></arg>
            <arg><Var>item</Var></arg>
          </Uniterm>
        </then>
      </Implies>
    </formula>
  </Forall>
 </rule>
</Ruleset>

Powrót do dokumentu

pl/miw/miw08_xtt_rif/przyklad4.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0