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:2009:miw09_prolog_sbvr [2009/04/23 14:49]
jsi08
pl:miw:2009:miw09_prolog_sbvr [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
-====== ​Opis ====== +~~ODT~~ 
-Patryk Łuczyński ​, <​tapirat@gmail.com>​ \\  +====== ​MIW 2009 Prolog_SBVR ​====== 
-==== Prolog_SBVR ====+ 
 +**Zrealizował:​ [[tapirat@gmail.com|Patryk Łuczyński]] (4RI) 
   * Look at the [[http://​www.omg.org/​spec/​SBVR/​|SBVR]].   * Look at the [[http://​www.omg.org/​spec/​SBVR/​|SBVR]].
   * Prepare a concise desc/​present.   * Prepare a concise desc/​present.
Linia 8: Linia 10:
   * provide simple analysis of the SBVR knowledge base on top of the parser   * provide simple analysis of the SBVR knowledge base on top of the parser
  
-====== Spotkania ====== 
  
-Dodano rozdział "​Specyfikacja SBVR pod kątem parsowania reguł"​ oraz poprawiono problemy z dostępem do kodu z rozdziału "​Parser"​ 
  
-===== 20090416 ​==== +====== Spotkania ====== 
-  * rozczytac spec sbvr do poz. parsowania poj. przykładu+[[pl:​miw:​2009:​miw09_prolog_sbvr:​spotkania|Spotkania]]
  
-===== 200903126 ==== 
-  * rulexpress, opis + sshot 
  
-===== 20090312 ​==== +====== ​Sprawozdanie ​======
-  * czy ktos cos robil do SBVR w prologu? +
- +
-===== 20090225 ==== +
-  * nie pakujemy sie w modal logic +
- +
-====== Projekt ​======+
 ===== Opis SBVR ===== ===== Opis SBVR =====
 ==== SBVR w architekturze MDA (Model Driven Architecture) ==== ==== SBVR w architekturze MDA (Model Driven Architecture) ====
Linia 77: Linia 69:
  
 ====Reguły w SBVR==== ====Reguły w SBVR====
-Za pomocą ​termór ​oraz wyrazów które opisuje się za pomocą czcionki '​verb'​ jesteśmy w stanie skonstruować koncept czasownikowy (verb concept). Takie konstrukcje pozwalają na opisywanie zależności pomiędzy wcześniej zdefiniowanymi pojęciami. Następnie w celu zdefiniowania reguły należy taki koncept czasownikowy obłożyć jednym z czterech dostępnych operatorów modalnych:+Za pomocą ​termów ​oraz wyrazów które opisuje się za pomocą czcionki '​verb'​ jesteśmy w stanie skonstruować koncept czasownikowy (verb concept). Takie konstrukcje pozwalają na opisywanie zależności pomiędzy wcześniej zdefiniowanymi pojęciami. Następnie w celu zdefiniowania reguły należy taki koncept czasownikowy obłożyć jednym z czterech dostępnych operatorów modalnych:
  \\ \\   \\ \\ 
 Aletyczne (używane do tworzenia reguł strukturalnych):​ Aletyczne (używane do tworzenia reguł strukturalnych):​
Linia 121: Linia 113:
  
 \\  \\ 
-[[http://student.agh.edu.pl/​~tapir/MIW/parse.txt|KOD]]+[[https://ai.ia.agh.edu.pl/​wiki/_media/pl:​miw:​2009:​miw09_prolog_sbvr:​pliki:​parser.txt|KOD]]
 \\  \\ 
 Powyższy kod był testowany na implementacji SWI Prolog (Windows). Realizuje on (oczywiście w minimalnym zakresie) rozbiór logiczny reguł, który opisany jest w specyfikacji SBVR w rodziale 9 (zwłaszcza 9.2). "​Korzeniem"​ drzewa pokonywanego przy parsowaniu jest dla uproszczenia (zamiast "​rule"​) nieterminal "​Logical_formulation"​. Dla uproszczenia pominięty został rodział 8 "​Meaning and Representation Vocabulary",​ który wprowadza powiązania między termami i faktami. Powyższy kod był testowany na implementacji SWI Prolog (Windows). Realizuje on (oczywiście w minimalnym zakresie) rozbiór logiczny reguł, który opisany jest w specyfikacji SBVR w rodziale 9 (zwłaszcza 9.2). "​Korzeniem"​ drzewa pokonywanego przy parsowaniu jest dla uproszczenia (zamiast "​rule"​) nieterminal "​Logical_formulation"​. Dla uproszczenia pominięty został rodział 8 "​Meaning and Representation Vocabulary",​ który wprowadza powiązania między termami i faktami.
Linia 133: Linia 125:
  
 {{:​pl:​miw:​2009:​miw09_prolog_sbvr:​pliki:​SBVR_voc_constr.gif?​600|Metodyka definiowania nowych słowników i zestawów reguł w standardzie SBVR}} {{:​pl:​miw:​2009:​miw09_prolog_sbvr:​pliki:​SBVR_voc_constr.gif?​600|Metodyka definiowania nowych słowników i zestawów reguł w standardzie SBVR}}
-\\ Powyższy schemat przedstawia kolejne kroki definiowania nowego słownika i zestawu reguł. Sposób ten wynika bezpośrednio z zależności pomiędzy sześcioma słownikami zdefiniowanymi w oficjalnej specyfikacji SBVR. Pierwszym krokiem jest zdefiniowanie zbioru konceptów tzw. noun concepts([[http://​pl.wikipedia.org/​wiki/​Poj%C4%99cie|"​Pojęcie – abstrakcyjny,​ myślowy odpowiednik przedmiotu. Po zdefiniowaniu pojęcie staje się terminem."​ - Wikipedia]] za pomocą termów (reprezentacji -  w tym wypadku tekstowych),​ który to zbiór będzie fundamentem do definiowania bardziej złożonych struktur. Kolejnymi elementami jakie należy zdefinować to fakty tzw. verb concepts definiujące zależności pomiędzy znaczeniami poszczególnych konceptów. Należy tu zaznaczyć rozdzielenie pomiędzy reprezentacją konceptu (termem) a jego znaczeniem. W specyfikacji SBVR zależnościom pomiędzy znaczeniami konceptów poświęcony jest [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=31|podrozdział 8.1 Meaning (str 31)]]. ​+\\ Powyższy schemat przedstawia kolejne kroki definiowania nowego słownika i zestawu reguł. Sposób ten wynika bezpośrednio z zależności pomiędzy sześcioma słownikami zdefiniowanymi w oficjalnej specyfikacji SBVR. Pierwszym krokiem jest zdefiniowanie zbioru konceptów tzw. noun concepts([[http://​pl.wikipedia.org/​wiki/​Poj%C4%99cie|"​Pojęcie – abstrakcyjny,​ myślowy odpowiednik przedmiotu. Po zdefiniowaniu pojęcie staje się terminem."​ - Wikipedia]]za pomocą termów (reprezentacji -  w tym wypadku tekstowych),​ który to zbiór będzie fundamentem do definiowania bardziej złożonych struktur. Kolejnymi elementami jakie należy zdefinować to fakty tzw. verb concepts definiujące zależności pomiędzy znaczeniami poszczególnych konceptów. Należy tu zaznaczyć rozdzielenie pomiędzy reprezentacją konceptu (termem) a jego znaczeniem. W specyfikacji SBVR zależnościom pomiędzy znaczeniami konceptów poświęcony jest [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=31|podrozdział 8.1 Meaning (str 31)]]. ​
 \\ \\  \\ \\ 
 Przykład [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=295|EU-Rent Example (str 295)]]: Przykład [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=295|EU-Rent Example (str 295)]]:
Linia 165: Linia 157:
 Pewne namiastki gramatyki wprowadza [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=249|rozdział opisujący notację SBVR Structured English (str 249)]], a zwłaszcza fragment przedstawiający ​ [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=251|słowa kluczowe tej notacji (str 251)]].Znajdujemy tam wpisy typu "it is obligatory that p - obligation formulation"​. Niestety nie jest zdefiniowana "​dolna"​(dalsza od korzenia) część drzewa syntaktycznego w tym wypadku odzwierciedlona przez literę p, która ma reprezentować "​expressions of propositions"​ czyli wyrażenie stwierdzenia. Przeszukując całą specyfikacją SBVR nie natrafiłem na reguły gramatyczne tworzenia takich właśnie wyrażeń. \\ \\  Pewne namiastki gramatyki wprowadza [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=249|rozdział opisujący notację SBVR Structured English (str 249)]], a zwłaszcza fragment przedstawiający ​ [[http://​student.agh.edu.pl/​~tapir/​MIW/​08-01-02.pdf#​page=251|słowa kluczowe tej notacji (str 251)]].Znajdujemy tam wpisy typu "it is obligatory that p - obligation formulation"​. Niestety nie jest zdefiniowana "​dolna"​(dalsza od korzenia) część drzewa syntaktycznego w tym wypadku odzwierciedlona przez literę p, która ma reprezentować "​expressions of propositions"​ czyli wyrażenie stwierdzenia. Przeszukując całą specyfikacją SBVR nie natrafiłem na reguły gramatyczne tworzenia takich właśnie wyrażeń. \\ \\ 
  
-SBVR posiada dobrze zdefiniowane narzędzia do definiowania zależności semantycznych oraz zależności logicznych. Niestety brak tu gramatyki wymaganej do klasycznego parsowania ​reguł +SBVR posiada dobrze zdefiniowane narzędzia do definiowania zależności semantycznych oraz zależności logicznych. Niestety brak tu gramatyki wymaganej do klasycznego parsowania ​przy użyciu drzewa syntaktycznego
- +
- +
  
 +===Kolorowanie napisu na podstawie słownika (Prolog) ===
  
 +[[https://​ai.ia.agh.edu.pl/​wiki/​_media/​pl:​miw:​2009:​miw09_prolog_sbvr:​pliki:​koloruj.txt|KOD w Prologu]]
 \\ \\  \\ \\ 
 +Powyższy kod był tworzony i sprawdzany za pomocą SWI Prolog (Windows). W celu kolorowania napisu należy skompilować powyższy plik i wprowadzić cel typu:
 +\\ \\ 
 +go([it,​is,​obligatory,​that,​a,​rental,​has,​a,​rental,​period]).
 +\\ \\ 
 +Na wyjściu stworzony zostanie plik HTML z odpowiednio stylizowanym napisem wejściowym. UWAGA! Program wypisuje wyjście do pierwszego nierozpoznanego napisu lub przetworzenia całego napisu wejściowego. ​
 +\\ \\ 
 +[[http://​student.agh.edu.pl/​~tapir/​MIW/​output.html|Przykładowy plik wyjściowy]]
  
  
 +====== Prezentacja ======
 +[[pl:​miw:​2009:​miw09_prolog_sbvr:​prezentacja|Prezentacja projektu]]
  
- 
-====== Sprawozdanie ====== 
- 
- 
-====== Prezentacja ====== 
 ====== Materiały ====== ====== Materiały ======
 ====Linki==== ====Linki====
pl/miw/2009/miw09_prolog_sbvr.1240490994.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (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