To jest stara wersja strony!
RIF(Rule Interchange Format) jest stworzonym przez W3C (Word Wide Web Consorcium) formatem reguł pozwalających na ich wymianę dla różnych języków reguł w sieciach semantycznych (RDF, OWL). Format RIF jest ciągle w fazie rozwoju, jedyne dostępne dokumenty są to szkice specyfikacji poszczególnych modułów (Working Draft).
Aby można było użyć RIF'a do przedstawiania reguł potrzebna jest wiedza jak zapisywać typowe dla nich elementy.
Przykładowo:
<Var> B </Var>
<arg><Const type="rds:long"> 300 </Const></arg>
<Uniterm>
<op><Const type="rif:iri"> op:numeric-add </Const></op>
<arg><Const type=""> 1 </Const></arg>
<arg><Var> n </Var></arg>
</Uniterm>
<Uniterm>
<op><Const type="rif:iri"> op:numeric-subtract </Const></op>
<arg><Const type=""> 1 </Const></arg>
<arg><Var> n </Var></arg>
</Uniterm>
<Equal>
<arg> wyr_1 </arg>
<arg> wartosc </arg>
</Equal>
<Uniterm>
<op><Const type="rif:iri"> op:numeric-greater-than </Const></op>
<arg><Var> n </Var></arg>
<arg><Const type="xsd:decimal"> 0 </Const></arg>
</Uniterm>
<Uniterm>
<op><Const type="rif:iri"> op:numeric-less-or-equal-than </Const></op>
<arg><Var> n </Var></arg>
<arg><Const type="xsd:decimal"> 0 </Const></arg>
</Uniterm>
<And>
<formula>
(wyr_1)
</formula>
<formula>
(wyr_2)
</formula>
</And>
<Implies>
<if>
(conditions)
</if>
<then>
(conclusion)
</then>
</Implies>
Teraz możemy spróbować zapisać nasz przykład (Jeżeli dzień=poniedziałek wtedy temp=20st) za pomocą RIF:
<?xml version="1.0" encoding="UTF-8"?>
<Ruleset>
<rule>
<declare><Var> day </Var></declare>
<formula>
<Implies>
<if>
<formula>
<Equal>
<arg><Var> day </Var></arg>
<arg><Const type="xsd:string">Monday</Const></arg>
</Equal>
</formula>
</if>
<then>
<Uniterm>
<op><Const type="rif:local">temp</Const></op>
<arg><Const type="rds:positiveInteger">20</Const></arg>
</Uniterm>
</then>
</Implies>
</formula>
</rule>
</Ruleset>
Powrót