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
pl:miw:miw08_hml_rules:ruleml [2008/05/19 18:30]
miw
pl:miw:miw08_hml_rules:ruleml [2008/05/19 19:00]
miw
Linia 1: Linia 1:
-**RuleML - Rule Markup Language** jest językiem powstałym w ramach inicjatywy [[http://​www.w3.org/​2001/​sw/​|Semantic Web]], służącym do zapisywania reguł logicznych na bazie składni języka XML. W istocie, język RuleML rozszerza język OWL o dynamiczne aspekty modelowania wiedzy. RuleML obejmuje m.in. 
- 
-  *Mathematical Markup Language (MathML) 
-  *DARPA Agent Markup Language (DAML) 
-  *Predictive Model Markup Language (PMML) 
-  *Gramatyke atrybutów w XML (AG-znaczników): ​ 
-  *Transformacje XSL (XSLT) 
- 
-Aby można było użyć RuleML do przedstawiania reguł potrzebna jest wiedza jak zapisywać typowe dla nich elementy. ​ 
- 
-Przykłady składni (RuleML ver. 0.91): 
- 
-  * wartosc logiczna: B 
- 
-<code xml> 
-<Var> B </​Var>​ 
-</​code>​ 
- 
-  * stałe argumenty: 20 
- 
-<code xml> 
-<Data xsi:type = "​xs:​integer">​ 20 </​Data>​ 
-</​code>​ 
- 
-  * suma: n+1 
- 
-<code xml> 
-<​Expr>​ 
-<Fun in="​yes">​ add </​Fun>​ 
-    <Var> n </​Var>​ 
-    <Ind> 1 </​Ind>​ 
-</​Expr>​ 
-</​code>​ 
- 
-  * różnica: n-1 
- 
-<code xml> 
-<​Expr>​ 
-<Fun in="​yes">​ subtract </​Fun>​ 
-   <​Var>​ n </​Var>​ 
-   <​Ind>​ 1 </​Ind>​ 
-</​Expr>​ 
-</​code>​ 
- 
-  * równość: (wyr_1) = (wartosc) 
- 
-<code xml> 
-<Equal oriented="​yes">​ 
-  <lhs> 
-     ​(wyr_1) 
-  </​lhs>​ 
-  <rhs> 
-     ​(wartosc) 
-  </​rhs>​ 
-</​Equal>​ 
-</​code>​ 
- 
-Atrybut ‘oriented’ przyjmuje wartość ‘yes’ (directed equation) lub ‘no’ (undirected equation, default) 
-(<​lhs>​ (left hand side) i <rhs> (right hand side) moga być pominiete, pomagaja w okresleniu orientacji) 
- 
-  * nierówność: ​ n > 0 
- 
-<code xml> 
-<Rel> greaterThan </​Rel>​ 
-    <​Var>​n</​Var>​ 
-    <​Ind>​0</​Ind>​ 
-</​code>​ 
- 
-  * nierówność: ​ n <= 1 
- 
-<code xml> 
-<Rel> lessThanorEqual </​Rel>​ 
-    <​Var>​n</​Var>​ 
-    <​Ind>​0</​Ind>​ 
-</​code>​ 
- 
-  * suma logiczna : (wyr_1) and (wyr_2) 
- 
-<code xml> 
-<And> 
-  <​Atom>​ 
-       ​(wyr_1) 
-  </​Atom>​ 
-  <​Atom>​ 
-       ​(wyr_2) 
-  </​Atom>​ 
-</​And>​ 
-</​code>​ 
- 
-  * warunek if : (conclusion) if (conditions) 
- 
-<code xml> 
-<​Implies>​ 
-  <​head>​ 
-    (conclusion) 
-  </​head>​ 
-  <​body>​ 
-    (conditions) 
-  </​body>​  
-</​Implies>​ 
-</​code>​ 
- 
-  * funkcje: fun_name(B) 
- 
-<code xml> 
-<Fun in="​…"​ val="​…">​ fun_name </​Fun>​ 
-   <​Var>​ B </​Var>​ 
-</​code>​ 
- 
-Atrybut ‘in’ przyjmuje wartości “yes”(uninterpreted functions – nie uzywaja definicji funkcji) lub “no”(interpreted functions –  uzywaja definicji funkcji), in=”semi” to wartość domyślna (neutralna). Atrybut ‘val’ określa czy funkcja jest determistyczna czy nie determistyczna;​ dopuszczalne wartości „1”- dokładnie jeden , „0…” – zero lub wiecej, „2”, „0…3” itp. 
- 
- 
-Teraz możemy spróbować zapisać nasz przykład (Jeżeli dzień=poniedziałek wtedy temp=20st) za pomocą RuleML. Przedstawmy go w postaci: 
- 
- temp = 20    if    day = monday 
- 
-wówczas w RuleML zapis bedzie wyglądał następująco:​ 
- 
-<code xml> 
-<?xml version="​1.0"​ encoding="​UTF-8"?>​ 
- 
-<​RuleML ​ xmlns=http://​www.ruleml.org/​0.91/​xsd 
-xmlns:​xsi="​http://​www.w3.org/​2001/​XMLSchema-instance"​ 
-xsi:​schemaLocation="​http://​www.ruleml.org/​0.91/​xsd http://​www.ruleml.org/​0.91/​xsd/​hornlogeq.xsd">​ 
-<​Implies>​ 
-    <​head>​ 
-      <Equal oriented="​yes">​ 
-      <lhs> 
-          <Var> day </​Var>​ 
-      </​lhs>​ 
-      <rhs> 
-          <Data xsi:​type="​xs:​dateTime">​monday</​Data>​ 
-      </​rhs>​ 
-      </​Equal>  ​ 
-    </​head>​ 
-    <​body>​ 
-      <​Atom>​ 
-          <Rel> temp </​Rel>​ 
-          <Data xsi:type = "​xs:​float">​ 20 </​Data>​ 
-      </​Atom>​ 
-    </​body>​  
-</​Implies>​ 
-</​RuleML>​ 
-</​code>​ 
- 
- 
-[[https://​ai.ia.agh.edu.pl/​wiki/​pl:​miw:​miw08_hml_rules|Powrót]] 
- 
-====== Materiały ====== 
- 
-** Więcej na stronie domowej** (http://​www.ruleml.org/​0.91/​) 
- 
-** Szczególnie przydatne** http://​www.ruleml.org/​0.91/​glossary/​ 
- 
-** Więcej przykładów** http://​www.ruleml.org/​0.91/​exa/​ 
- 
  
pl/miw/miw08_hml_rules/ruleml.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