SYSTEM DO GENEROWANIA ONTOLOGII NA PODSTAWIE DIAGRAMÓW UML SYSTEM TO ONTOLOGY GENERATION FROM UML DIAGRAMS

Podobne dokumenty
Internet Semantyczny. Schematy RDF i wnioskowanie

Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

Internet Semantyczny. Wstęp do OWL 2

Semantic Web. Grzegorz Olędzki. prezentacja w ramach seminarium Protokoły komunikacyjne. luty 2005

3 grudnia Sieć Semantyczna

Semantic Web. dr inż. Aleksander Smywiński-Pohl. Elektroniczne Przetwarzanie Informacji Konsultacje: czw , pokój 3.211

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

Modelowanie diagramów klas w języku UML. Łukasz Gorzel @stud.umk.pl 7 marca 2014

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe.

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

RDF Schema (schematy RDF)

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 2 Ćwiczenia w narzędziu CASE diagram klas. Materiały dla nauczyciela

ZARZĄDZANIU. Wykład VI. dr Jan Kazimirski

Narzędzia Informatyki w biznesie

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Web 3.0 Sieć Pełna Znaczeń (Semantic Web) Perspektywy dla branży motoryzacyjnej i finansowej. Przyjęcie branżowe EurotaxGlass s Polska 10 luty 2012

Analiza i projektowanie aplikacji Java

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla nauczyciela

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

Sprawozdanie z laboratorium 2: Modeling knowledge with Resource Description Framework (RDF)

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Projektowanie baz danych za pomocą narzędzi CASE

Instrukcja importu deklaracji pacjentów. do dreryka

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Autor: Joanna Karwowska

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

UML w Visual Studio. Michał Ciećwierz

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

3.1. Na dobry początek

Automatyzacja procesu tworzenia i zarządzania Wirtualnymi Organizacjami w oparciu o wiedzę w zastosowaniu do architektur zorientowanych na usługi

Koncepcja wirtualnego uniwersytetu z wykorzystaniem technologii semantycznej. Ilona Pawełoszek Tomasz Turek Politechnika Częstochowska

OfficeObjects e-forms

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

WOJSKOWA AKADEMIA TECHNICZNA

Semantic Web Internet Semantyczny

Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/

Internet Semantyczny. Idea

Diagramy klas. dr Jarosław Skaruz

Podstawy projektowania systemów komputerowych

Instrukcja użytkownika

PRZEWODNIK PO PRZEDMIOCIE

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

The Binder Consulting

GML w praktyce geodezyjnej

KARTA MODUŁU KSZTAŁCENIA

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

Świat rzeczywisty i jego model

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

Przetwarzanie języka naturalnego (NLP)

Wykład 1 Inżynieria Oprogramowania

Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski

Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Instrukcja przygotowania pliku do deponowania

Platforma e-learningowa

Instrukcja przygotowania pliku do deponowania

Rysunek 1: Przykłady graficznej prezentacji klas.

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela

To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski, okna, menu) i

PRZEWODNIK PO PRZEDMIOCIE WYKŁAD ĆWICZENIA LABORATORIUM PROJEKT SEMINARIUM

Internet Semantyczny. Linked Open Data

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

SysML Tworzenie diagramu kontekstowego i bloków wewnętrznych SysML003

PROJEKT INTERFEJSU UśYTKOWNIKA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

Marcin Skulimowski - RDF

Projektowanie logiki aplikacji

Dokumentacja Użytkownika Systemu

PRZEWODNIK PO PRZEDMIOCIE. Projektowanie procesów. Logistyka (inżynierska) niestacjonarne. I stopnia. dr Aleksandra Grabińska.

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP

Krzysztof Kutt Sprawozdanie 2: Modeling knowledge with Resource Description Framework (RDF)

Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych

System imed24 Instrukcja Moduł Analizy i raporty

Internet Semantyczny i Logika II

Repozytorium Zasobów Wiedzy FTP

Jak udostępnić dane PZGiK w sieci? Artur Kapuściński

Podstawy inżynierii oprogramowania

Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Rok akademicki: 2013/2014 Kod: ZZIP IN-s Punkty ECTS: 2. Kierunek: Zarządzanie i Inżynieria Produkcji Specjalność: Informatyka w zarządzaniu

Procesowa specyfikacja systemów IT

1 Moduł Inteligentnego Głośnika

Dlaczego GML? Gdańsk r. Karol Stachura

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

1 Moduł Inteligentnego Głośnika 3

Linked Open Data z wykorzystaniem wolnego oprogramowania w gospodarce przestrzennej

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski

WOJSKOWA AKADEMIA TECHNICZNA

Podstawy programowania III WYKŁAD 4

Transkrypt:

GRZEGORZ KOLARZ SYSTEM DO GENEROWANIA ONTOLOGII NA PODSTAWIE DIAGRAMÓW UML SYSTEM TO ONTOLOGY GENERATION FROM UML DIAGRAMS S t r e s z c z e n i e A b s t r a c t Zastosowanie sieci semantycznych daje możliwość precyzyjnego przetwarzania danych. Jednak ciągle obserwujemy niedostatek ontologii związanych z przetwarzanymi zagadnieniami. Z drugiej strony wiele projektów ma specyfikacje stworzone w notacji UML. W artykule przeanalizowano technologie wykorzystywane do definiowania ontologii, notację UML oraz zaprezentowano program do tworzenia ontologii na podstawie diagramów UML. Słowa kluczowe: sieci semantyczne, rdf, owl, uml Application of semantic web enables computers to more efficient and more precise data processing. However, we are still facing lack of ontologies that covers some particular domain. On the other hand there are projects containing UML specification. The paper characterized technologies used to ontology creation. Program to ontology generation from UML diagrams was presented. Keywords: semantic web, rdf, owl, uml Mgr inż. Grzegorz Kolarz, Instytut Informatyki Stosowanej, Wydział Mechaniczny, Politech- nika Krakowska.

228 1. Wstęp Dzięki rozwojowi Internetu mamy dostęp do ogromnej ilości informacji. Treści te są łatwe do odczytania dla człowieka, natomiast często stosunkowo trudne do zinterpretowania przez maszynę. Przyczyną takiego stanu rzeczy jest sposób zapisu dokumentów internetowych. Jego istotą jest graficzna reprezentacja tekstu. Metoda wygodna dla człowieka bywa bardzo kłopotliwa do przetwarzania przez komputery. Na przykład w formatowaniu pliku html oznacza się, że dany tekst ma być wyświetlony kursywą, ale podczas przetwarzania maszynowego trudno jest zrozumieć cel i znaczenie takiego formatowania. Wyszukiwarki internetowe stosują skomplikowane algorytmy w celu określenia istotności i trafności informacji przeszukiwanych stron [1]. Algorytmów oceny treści jest wiele, nie sposób je tutaj wymienić. Ich wspólną cechą jest syntaktyczna ocena wyników wyszukiwania. Powoduje to pojawienie się wyników, których użytkownik nie chciał wyszukiwać. Na przykład po wpisaniu w wyszukiwarkę internetową frazy uml, pojawiają się wyniki wyszukiwania kierujące równocześnie do stron związanych z językiem UML, jak i strony Urzędu Miasta Łodzi. Błędne wyciąganie wniosków to nie tylko domena wyszukiwarek internetowych. Internet jest potężnym zasobem informacji, dlatego też problem ten jest tam szczególnie widoczny, jednak zjawisko to pojawia się również w systemach podejmowania decyzji, tzn. wszędzie tam, gdzie używane są heurystyczne metody drążenia danych. Dzieje się tak ze względu na brak dostarczenia kompletnego kontekstu dla poszukiwanej informacji oraz braku możliwości zdefiniowania w systemie eksperckim pełnej możliwej bazy wiedzy (w taki sposób, aby każdy z jego elementów oraz elementów pochodzących był w pełni zdefiniowany). Sposobem rozwiązania tego typu problemów są sieci semantyczne. W przeciwieństwie do systemów omawianych powyżej opierają się na semantycznej analizie danych. Do danych, poza istotnymi informacjami dla użytkownika, dołączone są również metadane. Metadane opisują znaczenie semantyczne poruszanych zagadnień oraz mapują dane z danymi położonymi w innym miejscu (mającymi związek z inną dziedziną wiedzy) [2]. Dzięki takiemu podejściu sieci semantyczne są w stanie bardziej precyzyjnie ocenić znaczenie przetwarzanej informacji, odfiltrować nieistotne dane i udzielić użytkownikowi lepszej jakościowo odpowiedzi. Jednak, żeby to było możliwe, analizowane dokumenty muszą zawierać kompletny zbiór metadanych prezentowanej treści oraz w sieci musi istnieć wiele definicji (ontologii) w celu ustalenia wzajemnych relacji pomiędzy przetwarzanymi danymi. Niestety tworzenie ontologii od początku nie jest rzeczą trywialną, ale wymaga dużo wysiłku. Mając na uwadze powyższe, można stwierdzić, że szersze wykorzystanie sieci semantycznych poprawi jakość przetwarzanych danych. Jakość polepszy się proporcjonalnie do ilości modeli dostępnych w sieci. W związku z tym istnieje potrzeba dostarczenia narzędzi umożliwiających szybsze i proste definiowanie nowych definicji (ontologii). Z drugiej strony należy zauważyć, że powszechnym językiem modelowania rzeczywistości jest język UML Pozwala on na modelowanie systemów nie tylko związanych z informatyką. Stworzono wiele modeli za pomocą diagramów UML, w związku z tym możliwość przekształcenia ich w ontologie może przynieść duże efekty w tej dziedzinie.

2. Analiza koncepcji zastosowanych w sieciach semantycznych 229 Podstawowym elementem opisującym sieć semantyczną jest ontologia. Ontologia to formalna definicja koncepcji pewnego obszaru wiedzy czy obiektów rzeczywistości. Składa się z klas obiektów, relacji między nimi i norm, które mają zastosowanie w danej dziedzinie wiedzy[2]. Do definiowania ontologii używa się języka OWL (ang. Ontology Web Language), który używa formatu opisu zasobów RDF (ang. Resource Definition Format). 2.1. Format opisu dokumentu RDF Język RDF (ang. Resource Description Framework) pozwala na opisywanie zasobów w sieci Web. Celem RDF jest opis wiedzy zawartej w tych zasobach w postaci łatwo przetwarzanej przez programy komputerowe, dlatego też zdecydowano, że RDF jest językiem opartym o język XML [3]. Dzięki jego wykorzystaniu i dostępności parserów na praktycznie każdej platformie komputerowej może być łatwo przetwarzany przez różne systemy komputerowe. Formalnie rzecz ujmując, wiedzę w RDF formalnie zapisuje się jako trójkę: obiekt (musi być zdefiniowany w sposób jednoznaczny, a jego definicja powinna zapewniać dostęp do obiektu z każdego miejsca; najczęsciej stosowany jest tutaj adres URI), właściwość i wartość [4]. Schematyczny zapis trójki został zaprezentowany na rysunku 1. Rys. 1. Schematyczny zapis trójki RDF Fig. 1. Schematic notation of the RDF triple Przykładowy opis ksiązki Weawing the Web [1] z użyciem RDF został zaprezentowany na listingu 1. Natomiast rysunek 2 prezentuje jego schematyczną reprezentację. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:si="http://www.w3schools.com/rdf/"> <rdf:description rdf:about="http://www.amazon.com/weaving- Web"> <si:title>weaving the Web</si:title> <si:author>tim Berners-lee</si:author> <si:isbn>978-0062515865</si:isbn> </rdf:description> </rdf:rdf> Rys. 2. Opis przykładowej książki z wykorzystaniem RDF Fig. 2. Example book description using RDF

230 W linii 1 została zawarta deklaracja dokumentu zgodnie ze specyfikacją XML. Linie 2,3,4 to utworzenie elementu RDF oraz deklaracja przestrzeni nazw dokumentów RDF. Jest to informacja dla prasera, że zawartość tego elementu jest zgodna ze schematem rdf zdefiniowanym w schematach rdf oraz si. W liniach 5,6 został utworzony element Description z przestrzeni nazw zadeklarowanej jako rdf, wraz z atrybutem about. Wartość tej deklaracji precyzyjnie definiuje element będący przedmiotem opisu. Linie 7, 8, 9 definiują kolejne dane związane z przetwarzanym elementem: tytuł autor, numer ISBN. Linie 10 i 11 zamykają deklarację elementów Description oraz RDF. 2.1. Język OWL Użycie języka RDF pozwala jedynie na zdefiniowanie opisu pojedynczych elementów. Do stworzenia gramatyki danej dziedziny konieczne jest zdefiniowanie relacji pomiędzy wieloma elementami RDF [4]. Zatem ontologie to zestawy stwierdzeń zapisanych w RDF definiujące relacje pomiędzy pojęciami będącymi przedmiotem ontologii oraz opisujące reguły wnioskowania [5]. Najciekawszymi elementami do definiowania języka Owl są: Annotacje: rdfs:label (etykieta), rdfs:comments (komentarz), rdfs:seealso (zobacz również), rdfs:isdefinedby (jest zdefiniowany przez), owl:deprecated (przestarzały), owl:priorversion (poprzednia wersja), owl:incompatiblewith (niezgodny z), Element klasy: rdf:type (typ), owl:sameas (taki jak), owl:differentfrom (różny od), Klasy: rdfs:subclassof (podklasa, dziedziczenie), owl:equivalentclass (klasa analogiczna), owl:thing (rzecz, najwyższy element w definicji owl), owl:intersectionof (relacja przecięcia), owl:unionof (relacja złączenia), owl:complementof (relacja dopełnienia), owl:disjointwith (relacja rozłączności). 3. Analiza języka UML pod kątem przydatności do tworzenia OWL UML to zunifikowany język modelowania służący do modelowania otaczającej nas rzeczywistości, tzw. dziedziny problemu, z wykorzystaniem pojęć obiektowych [6]. Do modelowania wykorzystuje się 13 rodzajów diagramów. Najciekawszym diagramem z punktu widzenia transformacji do formatu OWL jest diagram klas. W diagramie klas możemy wyróżnić klasy oraz relacje zachodzące pomiędzy nimi: dziedziczenie, kompozycja, a także liczebność elementów. Te elementy umożliwiają tworzenie statycznych modeli dużej części systemów informatycznych. Elementami odpowiadającymi im z języka OWL są kolejno: rdfs:class, rdfs:subclassof, owl:objectproperty, owl:cardinality. Dodatkowo wszystkie właściwości mogą zostać wyeksportowane, tak jak są zdefiniowane, gdyż będzie to poprawne z punktu widzenia poprawności schematu RDF. 4. Opis sposobu tworzenia ontologii na podstawie diagramów UML Do generowania ontologii na podstawie diagramów UML wybrano program StarUML. O wyborze tego oprogramowania zadecydowało kilka faktów: oprogramowanie jest całkowicie darmowe, dostarcza programistom system tworzenia własnych rozszerzeń (kluczowa cecha),

231 jest to oprogramowanie typu open source, co jest ważne przy tworzeniu niestandardowych rozszerzeń, umożliwia import formatu plików Rational Rose. Wiele programów do modelowania UML umożliwia zapis w tym formacie plików, w związku z tym istnieje możliwość otwarcia takiego diagramu w programie StarUML, a następnie utworzenie na jego podstawie ontologii. Sam proces generowania ontologii nie jest procesem skomplikowanym. Po kliknięciu prawym przyciskiem na diagramie klas pojawia się dodatkowa opcja Export as ontology umożliwiająca wyeksportowanie wybranego diagramu klas jako ontologii. Konwerter wybiera z diagramu klas tylko te elementy, które można wykorzystać w tworzonej ontologii. Wszystkie pozostałe informacje zawarte w diagramie klas (np. nazwy funkcji) są ignorowane. 5. Wnioski Stworzone rozszerzenie znacznie przyspiesza proces generowania ontologii. Należy jednak pamiętać o tym, że wygenerowane pliki nie zawierają pełnej ontologii posiadającej wszystkie elementy. Wynika to z faktu, że OWL oferuje wieksze możliwości definiowania struktur niż UML. Znając tylko diagram klas, nie posiadamy wszystkich niezbędnych informacji do zdefiniowania ontologii. Wygenerowane dane należy zatem traktować, jako zdefiniowane encje w sensie RDF (z małymi dodatkami pochodzącymi z OWL). Dlatego też po wygenerowaniu szkieletu należy uzupełnić brakujące informacje, edytując wyeksportowane pliki. Należy dodać brakujące elementy ontologii oraz zmapować wygenerowane obiekty na obiekty innych ontologii (np. FoF Friend of Friend[4]). Można do tego celu użyć jednego z wielu narzędzi przeznaczonych do tworzenia i edycji ontologii, np. Protégé OWL. L i t e r a t u r a [1] B e r n e r s - L e e T., Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web, Harper Paperbacks, 2000. [2] H e b e l e r J., F i s h e r M., B l a c e R., P e r e z - L o p e z A., Semantic Web Programming, John Wiley & Sons, 2009. [3] M a Z., W a n g H., The Semantic Web for Knowledge and Data Management: Technologies and Practices, IGI Global, 2009. [4] P o l l o c k J.T., Semantic Web For Dummies, Wiley & Sons, 2009. [5] A l l e m a n g D., H e n d l e r J., Semantic Web for the Working Ontologist: Modeling in RDF, RDFS and OWL, Morgan Kaufmann Publishers, 2008. [6] F o w l e r M., Uml w kropelce, wersja 2.0, LTP Oficyna Wydawnicza, 2005.