Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
Nowa wersja Both sides next revision
pl:miw:miw08_xtt_rif:obsolate [2008/04/13 16:23]
miw
pl:miw:miw08_xtt_rif:obsolate [2008/05/16 20:33]
miw
Linia 21: Linia 21:
   * rif:iri (dla **internationalized resource identifiers** czyli **IRI**s)   * rif:iri (dla **internationalized resource identifiers** czyli **IRI**s)
   * rif:local (dla stałych symboli, nie widocznych poza poszczególymi zestawami formuł RIF)   * rif:local (dla stałych symboli, nie widocznych poza poszczególymi zestawami formuł RIF)
-  ​+==== Wspierane formuły ==== 
 +  * warunek RIF-BLD 
 +  * reguła RIF-BLD
  
 +
 +==== Serializacja XML dla przenoszalności RIF ====
 +Serializacja XML dla składni prezentacji RIF-BLD zaprezentowana w tej sekcji jest z nią przemienna. Naśladując Javę i RDF, używamy nazw pisanych dużymi literami dla elementów klas oraz nazw które zaczynają się od małej litery dla elementów ról.\\
 +Wszystkie klasy zapisywane dużymi literami w składni prezentacji,​ jak CONDITION, stają się tagami (?) XMLa. Zachowują się jak makra i nie są widoczne w instance markup.
 +
 +Zacznijmy od serializacji **Języka Warunkowego** w XMLu:
 +<​code>​Klasy,​ role i ich zamierzone znaczenie
 +
 +- And       ​(conjunction)
 +- Or        (disjunction)
 +- Exists ​   (quantified formula for '​Exists',​ containing declare and formula roles)
 +- declare ​  ​(declare role, containing a Var)
 +- formula ​  ​(formula role, containing a CONDITION formula)
 +- Uniterm ​  (term or atomic formula, positional or with named arguments)
 +- Member ​   (member formula)
 +- Subclass ​ (subclass formula)
 +- Frame     ​(Frame formula)
 +- object ​   (Member/​Frame role containing a TERM or an object description)
 +- op        (Uniterm role for predicates/​functions as operations)
 +- arg       ​(argument role)
 +- upper     ​(Member/​Subclass upper class role)
 +- lower     ​(Member/​Subclass lower instance/​class role)
 +- slot      (Uniterm/​Frame slot role, prefix version of slot infix ' -> ')
 +- Equal     ​(prefix version of term equation '​='​)
 +- side      (Equal left-hand side and right-hand side role)
 +- Const     ​(slot,​ individual, function, or predicate symbol, with optional '​type'​ attribute)
 +- Var       ​(logic variable)</​code>​
 +Składnia XML dla przestrzeni symboli wykorzystuje atrybut type związany z elementami term, jak Const. Na przykład literał w xsd:​dateTime data type może być przedstawiony jako <Const type="​xsd:​dateTime">​2007-11-23T03:​55:​44-02:​30</​Const>​.
 +
 +**//​[[pl:​miw:​miw08_xtt_rif:​przyklad3|Przykład 3]]//**\\
 +Przykład ten obrazuje serializację XML dla warunkór RIFa.
 +
 +**Serializacja języka reguł**\\
 +Jest to rozszerzenie Języka Warunkowego poprzez serializację reguł RIF-BLD. Element Forall zawira role elements declare and formula, które były wcześniej wykorzystywane w elemencie Exists. Element Implies zawiera role elementów if oraz then rozróżniające te dwie części reguły.
 +<​code>​Klasy,​ role i ich zamierzone znaczenie
 +
 +- Ruleset (rule collection, containing rule roles)
 +- Forall ​ (quantified formula for '​Forall',​ containing declare and formula roles)
 +- Implies (implication,​ containing if and then roles)
 +- if      (antecedent role, containing CONDITION)
 +- then    (consequent role, containing a Uniterm, Equal, or Frame)</​code>​
 +
 +**//​[[pl:​miw:​miw08_xtt_rif:​przyklad4|Przykład 4]]//**\\
 +Przykład przedstawia warunek z //​przykładu 2a// zapisany za pomocą XML'a:
 +
 +===== Przemyślenia dotyczące reguł zawierających przypisanie =====
 +Przeglądając dokumentacje RIF'a nie znalazłem wzmianki o operacji przypisania. Jedną z metod, byłoby zaproponowanie zaimplementowanie predykatu fn:​assign(A,​B) przypisującego elementowi A wartość elementu B. Wydaje mi się, że ze względu na trwające ciągle prace nad formatem kwestia ta pozostaje otwarta i można przyjąć, że taki warunek jest formułowalny w RIF'​ie.\\
 +Proponowany przeze mnie zapis wyglądał by tak:
 +<code xml>
 +<​Ruleset>​
 + <​rule>​
 +  <​declare><​Var>​A</​Var></​declare>​
 +  <​declare><​Var>​B</​Var></​declare>​
 +  <​declare><​Var>​C</​Var></​declare> ​
 +  <​formula>​
 +   <​Implies>​
 +    <if>
 +       <​formula>​
 +        <​Uniterm>​
 +         <​op><​Const type="​rif:​iri">​op:​numeric-lesser-than</​Const></​op>​
 +         <​arg><​Var>​A</​Var></​arg>​
 +         <​arg>​
 +          <​Uniterm>​
 +           <​op><​Const type="​rif:​iri">​op:​numeric-add</​Const></​op>​
 +           <​arg><​Const type="">​3</​Const></​arg>​
 +           <​arg><​Var>​B</​Var></​arg>​
 +          </​Uniterm>​
 +         </​arg>​
 +        </​Uniterm>​
 +       </​formula>​
 +    </if>
 +    <​then>​
 +      <​Uniterm>​
 +       <​op><​Const type="​rif:​iri">​fn:​assign</​Const></​op>​
 +       <​arg><​Var>​C</​Var></​arg>​
 +       <​arg><​Var>​B</​Var></​arg>​
 +      </​Uniterm>​
 +    </​then>​
 +   </​Implies>​
 +  </​formula>​
 + </​rule>​
 +</​Ruleset>​
 +</​code>​
 +
 +Poniższe propozycje zapisu XTT za pomocą RIFa są oparte na proponowanym XTTMLu i są z nim zestawione. Jest to wstępna wersja, która zostanie dopracowana.
 +^XTTML ^RIF ^
 +|<code xml><​xtt_table id="​xtt_1">​
 + ...
 +</​xtt_table></​code>​|<​code xml><​Group id="​xtt_1">​
 + ...
 +</​Group></​code>​|
 +|<code xml><​rule id="​rul_1">​
 + ...
 +</​rule></​code>​|<​code xml><​sentence id="​rul_1">​
 + ...
 +</​sentence></​code>​|
 +|<code xml><​schema>​
 + <​independent>​
 +  <attref ref="​att_0"/>​   ​
 + </​independent>​
 + <​dependent>​
 +  <attref ref="​att_1"/>​
 + </​dependent>​
 +</​schema>​
 +...</​code>​|<​code xml><​Forall>​
 + <​declare><​Var>​att_0</​Var></​declare>​
 + <​declare><​Var>​att_1</​Var></​declare>​
 + ...
 +</​Forall></​code>​|
 +|<code xml><​condition>​
 + ...
 +</​condition></​code>​|<​code xml><​formula>​
 + <​Implies>​
 +  <if>
 +   ...
 +  </if>
 +  ...
 + </​Implies></​code>​|
 +|<code xml><​decision>​
 + ...
 +</​decision>​
 +<link xtt="​xtt_1"/></​code>​|<​code xml><​then>​
 + <​Atom>​
 +  <​op><​Const type="​rif:​iri">​run</​Const></​op>​
 +  <arg>
 +   <​Atom>​
 +    <​op><​Const type="​rif:​iri">​xtt_link</​Const></​op>​
 +    <​arg><​Const type="​xsd:​string">​xtt_1</​Const></​arg>​
 +   </​Atom>​
 +  </​arg>​
 +  ...
 + </​Atom>​
 +</​then></​code>​|
pl/miw/miw08_xtt_rif/obsolate.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