Standardy semantyczne
|
|
- Edward Bielecki
- 9 lat temu
- Przeglądów:
Transkrypt
1 Standardy semantyczne
2 Spis treści 1. Topic Maps Struktura Semantyka i wnioskowanie Zastosowania RDF i RDFS Struktura Pojęcia i abstrakcyjna składnia Semantyka Wnioskowanie Zastosowania Języki zapytań OWL Struktura Poszczególne języki OWL Semantyka Wnioskowanie Zastosowania OWL-S Wyższa ontologia usług Profile usług Modelowanie usług jako procesów Relacje z innymi specyfikacjami Zastosowania Rodzina specyfikacji WSMO WSMO WSML WSMX SWSF SWSL SWSO
3 1. Topic Maps Topic Maps 1 jest standardem ISO i powstał w celu usprawnienia tworzenia indeksów, glosariuszy czy tezaurusów dla zbiorów dokumentów elektronicznych. Dopiero z czasem rozwój specyfikacji poszedł w kierunku tworzenia ontologii, w związku z czym jest do tego zadania inaczej przystosowany niż języki z założenia opracowane do konstrukcji ontologii. Topic Maps bazuje na XML tworząc język XTM (XML Topic Maps). Mapy tworzone przez specyfikację opisują informacje w dokumencie oraz bazach danych poprzez łączenie ich za pomocą identyfikatorów URI. Kluczowe pojęcia opisane w bazach danych i dokumentach łączone są za pomocą relacji niezależnie od tego, co jest napisane o nich w indeksowanej informacji. Mapa składa się zazwyczaj z różnych zachodzących na siebie hierarchii, bogatych w semantyczne połączenia wewnątrz Struktura Podstawowym elementem mapy jest pojęcie reprezentujące podmiot, czyli przedmioty zarówno materialne jak i abstrakcyjne. Mapa pojęć wprowadza zależności między pojęciami. Pojęcia mogą posiadać następujące rodzaje charakterystyk: nazwy, typy, wystąpienia oraz role w powiązaniach. Opis poszczególnych elementów struktury Topic Maps: podmiot (subject) rzecz, koncept będący elementem mapy; tożsamość (identity) suma wszystkich własności danego podmiotu; niezbędna jest jej prawidłowa identyfikacja w celu zrozumienia ontologii przez maszyny; adres podmiotu (subject address) bezpośredni wskaźnik (URI) tożsamości podmiotu elektronicznego (np. strona www); wskaźnik podmiotu (subject indicator) niebezpośredni wskaźnik tożsamości, wskazuje zasób, a nie sam podmiot (nieelektroniczny); pojęcie (topic) reprezentacja podmiotu, może być instancją jednej lub wielu klas; typ pojęcia (topic type) relacja określająca przynależność pojęcia do kategorii (klasy) - klasa pojęć, - klasa pojęć określona przez <instanceof> (pojęcie może należeć do więcej niż jednej klasy), - pojęcie, którego podmiot jest klasą pojęcia; 1 Por. szerzej
4 własności pojęcia (topic characteristic) cechy charakterystyczne pojęcia: nazwa, wystąpienie, rola; wystąpienie (occurrence) - źródło informacji związane z pojęciem (dla osoby to np. strona domowa, portret, publikacja z nazwiskiem, CV...), może być instancją klasy; typ wystąpienia (occurrence type) rodzaj wystąpienia, np. dokument zawierający opis pojęcia lub wzmiankę o tym pojęciu; powiązanie (association) - relacja między dwoma lub więcej pojęciami, może być instancją dokładnie jednej klasy, nie ma określonego kierunku, działa w obie strony określając role w powiązaniach; typ powiązania (association type) rodzaj (klasa) powiązania; rola bycie elementem danego powiązania, determinuje znaczenie powiązania, określa kierunek działania relacji; nazwa (name) nazwa słowna (zazwyczaj string) danego pojęcia, może istnieć więcej niż jedna nazwa: - nazwa bazowa (base name) główna nazwa pojęcia, jest tylko jedna, często taka sama w różnych kontekstach, ale można też określić jej kontekst, - alternatywna nazwa (variant name) - alternatywna forma nazwy bazowej, odpowiednia do kontekstu, w którego obrębie warianty mogą być sortowane i przedstawiane (przydatne w wyszukiwaniu, istnieje możliwość uwzględniania synonimów); zakres (scope) - ograniczony kontekst, można go dodawać do pojęć, asocjacji i wystąpień; kwalifikuje zdania: członek (member) bycie elementem powiązania lub zbiór pojęć odgrywających konkretną rolę w powiązaniu; parametr (parameter) informacja w formie zbioru pojęć wyrażająca odpowiedni kontekst dla nazwy alternatywnej; wskaźnik podmiotu (subject indicator) zasób wskazujący tożsamość podmiotu; istnieją trzy sposoby wskazywania tożsamości: - wskazanie przez <topicref> czyli pojęcie dzielące ten sam podmiot, - wskazanie przez <subjectindicatorref> czyli wskazanie zasobu wskazującego podmiot, - wskazanie przez <resourceref> czyli wskazanie zasobu, który jest danym podmiotem;
5 węzeł (topic mape node) reprezentacja pojęcia, powiązania i zakresu. Topic Maps odnosząc się do przedmiotów opisywanych przez mapę mówi o podmiotach, które są reprezentowane przez pojęcia. Nie ma możliwości określenia, czy dane pojęcie jest klasą czy instancją, poza sytuacją gdy istnieje inne pojęcie stwierdzające, że jest instancją pierwszego pojęcia, które wtedy jest klasą sleeping class problem. Żaden inny element poza pojęciem, wystąpieniem i powiązaniem nie może być instancją klasy. Powiązania są automatycznie wielokierunkowe: jeśli Shakespeare napisał Hamleta to automatycznie Hamlet został napisany przez Shakespeare a. Jest to ta sama relacja tylko wyrażona w inny sposób. Dana relacja może zawierać więcej niż jedną rolę. Każde pojęcie gra rolę elementu powiązania. Każde powiązanie jest instancją jakiegoś typu powiązań, a kwestia etykietowania relacji dotyczy nazewnictwa, a nie kierunku. W Topic Maps istnieje dobrze rozwinięta możliwość tworzenia powiązań między powiązaniami (reification). Dane powiązanie jest reprezentowane przez pojęcie i można mu wtedy przypisać powiązanie z innym pojęciem. Specyfikacja dysponuje zapobiegawczym reprezentowaniem powiązań, co powoduje, że zawsze można dodać coś nowego, unikając tworzenia zbędnych powiązań lub unieważniania istniejącej wiedzy o połączeniach pojęć między sobą (tak dzieje się w RDF). Ważnym elementem Topic Maps jest możliwość łączenia (merging): - dwóch map wtedy wszystkie pojęcia, którym aplikacja determinuje, że mają ten sam podmiot są łączone i wszystkie dublujące się powiązania są usuwane, - dwóch pojęć - powstaje pojedyncze pojęcie, którego własności są sumą własności oryginalnych pojęć a dublujące się elementy są usuwane. Konieczność łączenia zdarza się często - w jednej mapie może istnieć tylko jedno pojęcie reprezentujące jeden podmiot. Istnieje możliwość, że dwa pojęcia wskazują ten sam podmiot używając różnych wskaźników i dlatego nie są łączone. Takiej sytuacji można uniknąć poprzez wprowadzenie trzeciego pojęcia ustalającego swoją tożsamość poprzez obydwa wskaźniki. Zatem TM mogą być wykorzystywane do pośredniczenia między ontologiami. Dwa pojęcia mają jeden podmiot gdy: - mają tę samą nazwę bazową w tym samym kontekście, - mają ten sam adres podmiotu, - używają tego samego identyfikatora do wskaźnika (w przypadku podmiotu nieelektronicznego).
6 W ontologiach Topic Maps nie ma potrzeby definiowania klas oraz typów, dopóki sama ontologia tego nie wymaga. Zaletą specyfikacji jest bardzo duża swoboda wyrażania i tworzenia ontologii. Nie są określone własności relacji (powiązań) jak w OWL, można je samemu zdefiniować jako typy. Ponadto nie jest zapewnione wcześniej zdefiniowane słownictwo do nakładania ograniczeń na typy i moc zbiorów, jak również ułatwiające użycie mechanizmy wnioskowania z własności relacji czy zasad wnioskowania. Istnieje jednak możliwość ich zdefiniowania, jednak taka mapa nie jest kompatybilna z innymi mapami, tzn. inna mapa nie rozpozna zdefiniowanych tam zasad. Zapewniona jest wtedy jedynie kompatybilność ze standardem. Najważniejsze zalety Topic Maps: - reprezentacja klasy i instancji przez pojedyncze pojęcie, - brak skierowania powiązania do wielu pojęć, - brak ograniczeń poprzez z góry zdefiniowane zasady, - możliwości łączenia map i pojęć, - łatwy proces reprezentowania powiązań Semantyka i wnioskowanie Każda mapa TM zawiera zbiór pojęć, który jest jej fundamentalnym budulcem. Pojęcia oraz ich charakterystyka obejmująca powiązania między nimi jest ontologią TM. Typy pojęć, powiązań i aspektów, typy wartości aspektów oraz tematy są przykładami pojęć ontologii. Można powiedzieć, że w pewnym sensie ontologia zawiera jedynie abstrakcyjne pojęcia, które powinny być używane jako typy i tematy w rzeczywistej mapie. Hierarchie mogą być budowane przez tworzenie super-typów i podtypów powiązań. To umożliwia pojęciom dziedzicznie właściwości od pojęć nadrzędnych. Powiązania między pojęciami ontologii są istotnym narzędziem, ponieważ są używane jako elementy wnioskowania.
7 Korzystnym elementem standardu jest brak zdefiniowania ograniczeń na semantyki użytkownika. Liczba semantyk jest również nieograniczona, a zależą one od opisywanego świata. Mapy pojęć nie mają ściśle określonych reguł, na jakich można oprzeć interpretację opisanej informacji, a co za tym idzie wnioskowanie. W celu stworzenia ontologii w TM należy najpierw zdefiniować reguły (semantykę). TM nie mają żadnego mechanizmu nadającego ograniczenia na ontologie. Wnioskowanie w TM jest uważane za właściwość systemów a nie dokumentów i dlatego reguły wnioskowania są na zewnątrz zasięgu dokumentu. Oczywiście dokumenty TM mogą zawierać rezultaty wnioskowania oraz efekty innych rodzajów przetwarzania. Nie są określone również specyficzne typy powiązań i specyficzne właściwości różnych rodzajów typów powiązań. TopicMaps.Org rozważa możliwość zapewnienia dodatkowej składni dla reguł wnioskowania, a tym samym rozszerzenie zasięgu specyfikacji. Hierarchie typów oraz przechodniość w TM pozwalają na wnioskowanie wiedzy niezakodowanej w mapie, jednak mapa może zawierać informacje, z których odbywa się wnioskowanie oraz posiada reguły wnioskowania zdefiniowane na poziomie ontologii o czerpaniu bezpośredniej wiedzy. Przykład przechodniości: If $topic1 is a sibling of $topic2 and $topc2 is a male then topic1 is a brother. W powyższym przykładzie pojawiają się następujące komponenty reguł: If <warunek> then <wniosek> definiuje regułę wnioskowania, $topic1, $topic2 są zmiennymi, które powinny być instancjami kiedy reguła jest ewaluowana, is a sibling of oraz is a male są typami powiązań w pytaniu, is a brother jest wnioskowanym typem powiązania Zastosowania Topic Maps przede wszystkim przeznaczone są do tradycyjnego publikowania i segregowania wiedzy, często nazywane są modelem danych, a nie językiem ontologii. Wraz z upływem czasu i rozwojem standardu wykształciły się inne zastosowania Topic Maps: Topic Maps mogą być podstawą budowy systemów zarządzania wiedzą korporacyjną.
8 Klasyfikowanie zasobów w repozytorium, ułatwienie ich wyszukiwania i przeglądania przy zastosowaniu takich sposobów jak skorowidze, systemy odsyłaczy, glosariusze, tezaurusy. Filtrowanie: dostosowanie zbioru informacji do potrzeb określonego użytkownika. Porządkowanie nieustrukturalizowanych danych pozwalające na szybszy i łatwiejszy dostęp do informacji. Wyszukiwanie właściwej informacji za pomocą odpowiedniego języka zapytań. Definiowanie złożonych struktur wiedzy i wiązanie (w celu uzyskania danych z zasobów) ich z zasobami informacyjnymi, co umożliwia sprawne systematyzowanie informacji (klasyfikowanie za pomocą TM ułatwiające wyszukiwanie), jej pozyskiwanie i współdzielenie w różnych aplikacjach. Organizowanie i zarządzanie zbiorami informacji oraz łączenie ich w taki sposób, aby zapewnić łatwiejsze poruszanie się między nimi. Usprawnienie następujących problemów: - tworzenie, pozyskiwanie i rozpowszechnianie informacji w postaci dokumentów elektronicznych, - umożliwianie pracownikom organizacji dostępu do rozproszonych źródeł danych, ich klasyfikacji i wyszukiwania, - wyszukiwanie informacji za pomocą wyszukiwarek internetowych, - poprawa niekompatybilnych formatów dokumentów, - uzgadnianie słownika, schematów klasyfikacyjnych oraz barier adaptacyjnych (w sytuacji gdy słownik nie jest uzgodniony), - zarządzanie wiedzą (co wynika z powyższych). Ujmowanie pojęcia, o którym mówi źródło oraz relacji między poszczególnymi źródłami w sposób niezależny od implementacji. Tworzenie wirtualnych zbiorów dokumentów oraz interfejsów dla baz wiedzy i baz danych. Wymiana i przesyłanie zakodowanej wiedzy. Budowanie stron bazujących na Topic Maps, ułatwiających i usprawniających wyszukiwanie. Organizacja zawartości w systemach zarządzających wiedzą integracja informacji z różnych źródeł (merging), kierowanie systemami eksperckimi.
9 2. RDF i RDFS RDF 2 (Resource Description Framework) jest językiem ogólnego stosowania do reprezentacji informacji w sieci www, przeznaczonym do wyrażania logicznych zdań przy użyciu ścisłego formalnego słownictwa. Jest narzędziem stanowiącym podstawy dla innych bardziej zaawansowanych języków twierdzeń. Język definiujący RDF składa się ze zbioru zasobów RDF, które mogą być używane do opisu innych zasobów RDF (w tym również właściwości). Rdzeniowe słownictwo jest zdefiniowane w przestrzeni nazw nieformalnie nazywanej rdfs. Przestrzeń nazw jest identyfikowana przez referencję URI i jest skojarzona z przedrostkiem rdfs. Specyfikacja używa również przedrostka rdf odnoszącego się do przestrzeni nazw RDFS 3 (RDF Schema) jest semantycznym rozszerzeniem RDF wzbogacającym go o dodatkową funkcjonalność pozwalajacą na tworzenie prostych ontologii. Obydwie specyfikacje zostaną opisane razem w poniższych sekcjach rodziału Struktura Podstawowe elementy RDF to węzły reprezentujące pojęcia oraz łuki między węzłami reprezentujące binarne relacje 4 między pojęciami (jeden łuk łączy tylko dwa węzły: początkowy i końcowy). 1) Klasy Zasoby RDF mogą być podzielone na grupy zwane klasami. Elementami klas są instancje. Klasy same są zasobami. Są identyfikowane referencjami URI i mogą być opisywane za pomocą właściwości RDF. Właściwość rdf:type jest używana do określania, że dany zasób jest instancją klasy. RDF rozróżnia klasę i zbiór jej instancji. Z każdą klasą skojarzony jest zbiór nazywany wnętrzem klasy i będący zbiorem jej instancji. Dwie klasy mogą mieć ten sam zbiór instancji, ale być różnymi klasami. Instancje takich klas mają wtedy różne właściwości. Klasa może być elementem swojego własnego wnętrza i swoją własną instancją. Grupa zasobów stanowiących klasy RDF jest klasą nazywaną rdfs:class. 2 Por. szerzej 3 Por. szerzej 4 Relacja binarna (dwuargumentowa, nazywana również relacją) jest zbiorem uporządkowanych par (x,y), co oznacza, że x jest w relacji z y.
10 Jeżeli klasa A jest podklasą klasy B, to wszystkie instancje klasy A są również instancjami klasy B. Pojęcie super-klasa jest używane jako odwrotność podklasy. Wszystkie typy danych są klasami. Instancje klasy, która jest typem danych, są elementami przestrzeni wartości tego typu. rdfs:resorce zasób, nazywa wszystkie rzeczy opisywane przez RDF, są one instancjami tej klasy, która jest klasą wszystkiego i wszystkie inne klasy są jej podklasami. rdfs:resorce jest instancją rdfs:class. rdfs:class jest klasą zasobów będących klasami RDF. rdfs:literal jest klasą wartości liczbowo-literowych, takich jak integer czy string. Wartości liczbowo-literowe mogą być proste lub mieć pewien typ. Te posiadające typ są instancjami klasy typów danych. rdfs:literal jest instancją rdfs:class i podklasą rdfs:resorce. rdfs:datatype klasa typów danych. Wszystkie jej instancje korespondują z modelem typów danych RDF. rdfs:datatype jest zarówno instancją jak i podklasą rdfs:class. Każda jej instancja jest podklasą rdfs:literal. rdf:xmlliteral klasa wartości liczbowo-literowych XML. Jest instancją rdfs:datatype i podklasą rdfs:literal. rdf:property klasa właściwości RDF, jest instancją rdfs:class. 2) Właściwości Właściwości są relacjami między podmiotem a obiektem. Istnieje również pojęcie podwłaściwości. Jeżeli P jest podwłaściwością Q, to wszystkie pary zasobów powiązane właściwością P są również powiązane właściwością Q. Termin super-właściwość jest używany jako odwrotność podwłaściwości. rdfs:range zasięg, jest instancją klasy rdf:property używaną do określania, że wartości danej właściwości są instancjami jednej lub więcej klas.
11 Trójka P rdfs:range C oznacza, że P jest instancją klasy rdf:property, że C jest instancją rdfs:class i zasoby wskazywane przez obiekty zdania, których predykatem jest P są instancjami klasy C. Jeśli P ma więcej niż jedną właściwość rdfs:range to zasoby wskazywane przez obiekty zdania z predykatem P są instancjami wszystkich klas wskazywanych przez właściwości rdfs:range. Ta właściwość może być zastosowana sama do siebie. Zasięg właściwości rdfs:range jest klasą rdfs:class i wskazuje, że każdy zasób będący wartością tej właściwości jest instancją klasy rdfs:class. Właściwość rdfs:range jest stosowana do właściwości, co może być reprezentowane za pomocą właściwości rdfs:domain. Dziedzina właściwości rdfs:range jest klasą rdf:property, co oznacza, że każdy zasób z właściwością rdfs:range jest instancją klasy rdf:property. rdfs:domain dziedzina, jest instancją rdf:property używaną do wskazywania, że każdy zasób mający daną właściwość jest instancją jednej lub więcej klas. Trójka postaci P rdfs:domain C stwierdza, że zasoby wskazywane przez podmiot zdania, którego predykatem jest P są instancjami klasy C. Jeżeli P ma więcej niż jedną właściwość rdfs:domain, wtedy zasoby wskazywane przez podmioty trójki z predykatem P są instancjami wszystkich klas wskazywanych przez właściwości rdfs:domain. Ta właściwość może być zastosowana sama do siebie. Dziedziną właściwości rdfs:domain jest klasa rdf:property i wskazuje, że każdy zasób będący wartością tej właściwości jest instancją klasy rdf:property. Zasięgiem właściwości rdfs:domain jest klasa rdfs:class, to znaczy, że każdy zasób będący wartością rdfs:domain jest instancją rdfs:class. rdf:type typ, jest instancją rdf:property stwierdzającą, że zasób jest instancją klasy. Trójka postaci R rdf:type C oznacza, że C jest klasą a R jest jej instancją. Dziedziną właściwości rdf:type jest rdfs:resorce, a zasięgiem rdfs:class. rdfs:subclassof podklasa, jest instancją rdf:property stwierdzającą, że wszystkie instancje jednej klasy są instancjami innej klasy. Trójka postaci C rdfs:subclassof D oznacza, że C i D są klasami i że C jest podklasą D. Ta właściwość jest przechodnia, jej dziedziną i zasięgiem jest rdfs:class. rdfs:subpropertyof podwłaściwość, jest instancją rdf:property używaną do wskazywania, że wszystkie zasoby związane jedną właściwością są jednocześnie powiązane drugą właściwością. Zdanie postaci P rdfs:subpropertyof Q stwierdza, że P i Q są właściwościami,
12 a P jest podwłaściwością Q. Ta właściwość jest przechodnia, jej dziedziną i zasięgiem jest rdf:property. rdfs:label etykieta, jest instancją rdf:property, która może być używana do nadawania czytelnych dla człowieka nazw zasobów. Trójka postaci R rdfs:label L stwierdza, że L jest czytelną dla człowieka nazwą R. Dziedziną właściwości rdfs:label jest rdfs:resorce, a jej zasięgiem rdfs:literal. Wspierane są również wielojęzykowe etykiety. rdfs:comment komentarz, jest instancją rdf:property do zapewnienia czytelnego dla człowieka opisu zasobu (dokumentu). Trójka postaci R rdfs:comment L stwierdza, że L jest czytelnym dla człowieka opisem R. Dziedziną właściwości rdfs:comment jest rdfs:resorce a jej zasięgiem rdfs:literal. Tekstowe komentarze pomagają wyjaśniać znaczenie klas i właściwości RDF. Taka szeregowa dokumentacja uzupełnia użycie obu formalnych technik (ontologii i zasad języka) oraz nieformalnych (dokumentacja, przykłady, przypadki testowe). Różnorodność form dokumentacji może być łączona do wskazywania zamierzonego znaczenia klas i właściwości opisywanych w słownictwie RDF. Jeżeli to słownictwo jest wyrażone w postaci grafów RDF, to słownictwa definiowane w innych przestrzeniach nazw mogą być wykorzystywane do zapewnienia bogatszej dokumentacji. Wielojęzykowa dokumentacja jest wspierana przez wykorzystanie językowego etykietowania. Specyfikacja wprowadza słownictwo RDF do opisu sensownego użycia klas i właściwości danych RDF. Na przykład słownictwo RDF może opisywać ograniczenia typów wartości, które są odpowiednie dla danej właściwości lub klasy, do których przypisane są dane właściwości. Język RDF zapewnia mechanizm opisywania tych informacji, ale nie mówi czy lub jak aplikacja powinna ich używać. Na przykład jeżeli słownictwo RDF zapewnia, że właściwość autor jest używana do wskazania zasobów, które są instancjami klasy Osoba, to nie informuje czy i w jaki sposób aplikacja powinna dokonywać przetwarzania, które obejmie te informacje. Różne aplikacje będą używać jej w różny sposób. Na przykład narzędzia sprawdzające dane mogą używać tego do odkrywania błędów w niektórych zbiorach danych, interaktywny edytor może sugerować odpowiednie wartości, a aplikacja wnioskująca może być używana do wnioskowania dodatkowych informacji z danych.
13 Słownictwo RDF może opisywać relacje między elementami z różnego, niezależnie rozwijanego słownictwa. Jeżeli referencje URI są używane do identyfikowania klas i właściwości w sieci, możliwe jest tworzenie nowych właściwości mających dziedzinę lub zasięg, których wartość jest klasą zdefiniowaną w innej przestrzeni nazw. 3) Kontenery klas i właściwości Kontenery RDF są zasobami używanymi do reprezentowania zbiorów. Ten sam zasób może pojawiać się w kontenerze więcej niż raz. Kontener może być zawarty w samym sobie. Są zdefiniowane trzy różne rodzaje kontenerów. Podczas gdy formalne semantyki wszystkich trzech klas kontenerów są identyczne, różne klasy mogą być używane do wskazywania formalnie dalszych informacji. Właściwość danego kontenera nie musi być właściwością wszystkich jego elementów, na przykład jeśli kurnik ma właściwość, że jest zrobiony z drewna to nie znaczy, że wszystkie kury wewnątrz są drewniane. Kontenery są definiowane za pomocą następujących klas i właściwości. rdfs:container klasa kontener, jest super-klasą wszystkich klas kontenerów RDF rdf:bag, rdf:seq i rdf:alt. rdf:bag klasa torebek, jest podklasą rdfs:container. Formalnie nie ma różnicy między poszczególnymi rodzajami kontenerów, ale kontener torebka jest konwencjonalnie używany do wskazywania człowiekowi nieuporządkowanych elementów zawartości. rdf:seq klasa sekwencji, jest podklasą rdfs:container. Sekwencja jest konwencjonalnie używana do wskazywania człowiekowi, że kontener jest uporządkowany, istnieje uporządkowanie właściwości elementów kontenera (container membership properties). rdf:alt klasa alternatyw, jest podklasą rdfs:container. Alternatywa wskazuje człowiekowi, że typowe przetwarzanie będzie polegało na wyselekcjonowaniu jednego z elementów kontenera. Pierwszy element kontenera jest pustym wyborem. rdfs:containermembershipproperty klasa właściwości elementów kontenera posiada jako instancje właściwości rdf:_1, rdf:_2, rdf:_3..., które są używane do stwierdzenia, że zasób jest elementem kontenera. Jest podklasą rdf:property, każda instancja tej klasy jest podwłaściwością rdfs:member.
14 Przy danym kontenerze C trójka postaci C rdf:_nnn O, gdzie nnn jest dziesiętną reprezentacją liczby całkowitej większej od zera i bez zer z przodu, stwierdza, że O jest elementem kontenera C. Właściwości elementów kontenera mogą być stosowane do zasobów innych kontenerów. rdfs:member element, jest instancją rdf:property, która jest super-właściwością wszystkich właściwości elementów kontenerów, np. każda taka właściwość ma relację podwłaściwości do właściwości rdfs:member. Dziedziną i zasięgiem rdfs:member jest rdfs:resorce. 4) Zbiory RDF Kontenery RDF są otwarte w tym sensie, że rdzeń specyfikacji nie definiuje mechanizmu określającego, że nie ma więcej elementów kontenera. Słownictwo zbiorów klas i właściwości może opisywać zamknięte zbiory, takie które nie mają więcej elementów. Zbiór jest reprezentowany jako lista elementów, która może być pusta. rdf:list lista jest instancją rdfs:class używaną do tworzenia opisów list i podobnych struktur. rdf:first pierwszy element listy, jest instancją rdf:property używaną do tworzenia opisów list i podobnych struktur. Trójka postaci L rdf:first O stwierdza, że O jest pierwszym elementem listy L. Dziedziną rdf:first jest lista, zasięgiem rdfs:resorce. rdf:rest reszta listy, jest instancją rdf:property używaną do tworzenia opisów list i podobnych struktur. Trójka postaci L rdf:rest O stwierdza, że O jest resztą listy L. Dziedziną i zasięgiem reszty jest lista. rdf:nil zero, jest instancją rdf:list używaną do reprezentowania pustej listy lub podobnej struktury. Trójka postaci L rdf:rest rdf:nil stwierdza, że L jest listą mającą jeden element. Ten element może być określony za pomocą rdf:first. 5) Słownictwo reifikacji Oryginalna specyfikacja składni i modelu RDF definiowała słownictwo do opisu zdań RDF bez stwierdzania (wygłaszania) ich. Specyfikacja nie zapewniała formalnej semantyki dla
15 tego słownictwa a formalne definicje były sprzeczne. Obecna specyfikacja RDF nie przydziela formalnych semantyk temu słownictwu. rdf:statement zdanie, jest instancją rdfs:class przeznaczoną do reprezentacji klasy zdań RDF. Zdanie RDF jest zbudowane z trójek RDF. Podmiot zdania jest instancją rdfs:resorce identyfikowaną przez podmiot trójki. Predykat zdania RDF jest instancją rdf:property identyfikowaną przez predykat trójki. Obiekt zdania RDF jest instancją rdfs:resorce identyfikowaną przez obiekt trójki. Zdanie jest w dziedzinie właściwości rdf:predicate, rdf:subject, rdf:object. Różne pojedyncze instancje zdania mogą mieć te same wartości dla właściwości ich podmiotów, predykatów i obiektów. rdf:subject podmiot, jest instancją rdf:property używaną do określania podmiotu zdania. Trójka postaci S rdf:subject R stwierdza, że R jest podmiotem zdania S. Dziedziną rdf:subject jest rdf:statement a zasięgiem rdfs:resource. rdf:predicate predykat, jest instancją rdf:property używaną do określania predykatu zdania. Trójka postaci S rdf:predicate P stwierdza, że właściwość P jest predykatem zdania S. Dziedziną rdf:predicate jest rdf:statement, a zasięgiem rdfs:resource. rdf:object obiekt, jest instancją rdf:property używaną do określania obiektu zdania. Trójka postaci S rdf:object O stwierdza, że O jest obiektem zdana S. Dziedziną rdf:object jest rdf:statement, a zasięgiem rdfs:resorce. 6) Właściwości użyteczności Klasy i właściwości są zdefiniowane w RDF w rdzeniowych przestrzeniach nazw. rdfs:seealso zobacz też, jest instancją rdf:property wskazującą zasób mogący dostarczyć dodatkowych informacji o zasobie podmiotu. Trójka postaci S rdfs:seealso O stwierdza, że zasób O może zapewnić dodatkowe informacje o S. Jest możliwe odzyskiwanie reprezentacji O z sieci WWW, ale nie jest wymagane. Przy odzyskiwaniu tych reprezentacji nie są narzucone żadne ograniczenia na ich format. Dziedziną i zasięgiem rdfs:seealso jest rdfs:resorce. rdfs:isdefinedby zdefiniowany przez, jest instancją rdf:property używaną do wskazywania zasobu definiującego zasób podmiotu. Ta właściwość może być używana do wskazywania słownictwa RDF, w jakim dany zasób jest opisany. Trójka postaci S rdfs:isdefinedby O stwierdza, że zasób O definiuje S. rdfs:isdefinedby jest podwłaściwością rdfs:seealso. Dziedziną i zasięgiem rdfs:isdefinedby jest rdfs:resorce.
16 rdf:value wartość, jest instancją rdf:property używaną do opisu ustrukturalizowanych wartości. Wartość ma znaczenie w samej sobie, zapewnia fragment słownictwa możliwy do wykorzystania w idiomach. Dziedziną i zasięgiem wartości jest rdfs:resorce. 7) Podsumowanie informacji o klasach i właściwościach Poniższe tabele prezentują przegląd słownictwa RDF, przedstawiając je oryginalnie zdefiniowane w specyfikacji RDF wraz z klasami i właściwościami wywodzącymi się z RDF Schema. Nazwa klasy Komentarz rdfs:resource rdfs:literal rdf:xmlliteral rdfs:class rdf:property rdfs:datatype rdf:statement rdf:bag rdf:seq rdf:alt rdfs:container Zasób klas, wszystko. Klasa wartości liczbowo-literowych, np. stringi tekstowe, liczby całkowite. Klasa wartości liczbowo-literowych XML. Klasa wszystkich klas. Klasa właściwości RDF. Klasa typów danych RDF. Klasa zdań RDF. Klasa nieuporządkowanych kontenerów. Klasa uporządkowanych kontenerów. Klasa kontenerów alternatyw. Klasa kontenerów RDF. Klasa właściwości elementów kontenerów, rdf:_1, rdf:_2, rdfs:containermembershipproperty wszystkie, które są podwłaściwościami 'member'. rdf:list Klasa list RDF. Tabela 1 Klasy RDF i RDFS Nazwa właściwości Komentarz Dziedzina Zasięg rdf:type Podmiot jest instancją klasy. rdfs:resource rdfs:class rdfs:subclassof Podmiot jest podklasą klasy. rdfs:class rdfs:class rdfs:subpropertyof Podmiot jest podwłaściwością właściwości. rdf:property rdf:property
17 Nazwa właściwości Komentarz Dziedzina Zasięg rdfs:domain Dziedzina właściwości podmiotu. rdf:property rdfs:class rdfs:range Zasięg właściwości podmiotu. rdf:property rdfs:class rdfs:label Czytelna dla człowieka nazwa podmiotu. rdfs:resource rdfs:literal rdfs:comment Opis zasobu podmiotu. rdfs:resource rdfs:literal rdfs:member Element zasobu podmiotu. rdfs:resource rdfs:resource rdf:first Pierwszy element listy RDF. rdf:list rdfs:resource rdf:rest Reszta listy RDF, to, co za pierwszym rdf:list elementem. rdf:list rdfs:seealso Dalsze informacje o zasobie podmiotu. rdfs:resource rdfs:resource rdfs:isdefinedby Definicja zasobu podmiotu. rdfs:resource rdfs:resource rdf:value Idiomatyczna właściwość używana do rdfs:resource rdfs:resource uporządkowanych wartości. rdf:subject Podmiot zdania RDF. rdf:statement rdfs:resource rdf:predicate Predykat zdania RDF. rdf:statement rdfs:resource rdf:object Obiekt zdania RDF. rdf:statement rdfs:resource Tabela 2 Właściwości RDF i RDFS Oprócz powyższych klas i właściwości RDF używa również właściwości rdf:_1, rdf:_2, rdf:_3 itd., z których każda jest jednocześnie podwłaściwością rdfs:member i instancją klasy rdfs:containermembershipproperty. Istnieje również instancja listy rdf:nil będąca pustą listą Pojęcia i abstrakcyjna składnia W tej sekcji zajmiemy się abstrakcyjną składnią, na której bazuje RDF i która służy do łączenia jego konkretnej składni z formalnymi semantykami.
18 1) Motywacje i cele RDF Abstrakcyjna składnia RDF odzwierciedla prosty model bazujący na grafach oraz formalne semantyki z rygorystycznie zdefiniowaną notacją wymagań, zapewniające podstawy dla dobrze uzasadnionego wnioskowania w RDF. Rozwój RDF był motywowany następującymi możliwościami wykorzystania: Meta-dane sieci www zapewniające informacje o zasobach sieci i systemach, które ją wykorzystują (np. ocena zawartości, opis możliwości, preferencje prywatności). Aplikacje wymagające otwartych, a nie ograniczonych modeli informacji (np. czynności harmonogramu, procesy organizacyjne, adnotacje zasobów sieci itp.). Uczynienie informacji (danych aplikacji) przetwarzalną dla maszyn, pozwolenie na przetwarzanie danych na zewnątrz środowiska, w którym zostały stworzone. Interakcje wewnętrzne pomiędzy aplikacjami, łączenie danych z różnych aplikacji do otrzymania nowej informacji. Zautomatyzowane przetwarzanie informacji z sieci przez agentów oprogramowania: sieć przekształca się z zawierającej tylko informację czytelną dla człowieka do światowej sieci współpracujących ze sobą procesów. RDF zapewni język porozumiewania się do tych procesów. RDF jest zaprojektowany do reprezentowania informacji w minimalnie ograniczony, elastyczny sposób. Może być używany w samodzielnych aplikacjach, ale jego ogólność oferuje możliwości dzielenia. W ten sposób wartość informacji wzrasta, ponieważ staje się ona dostępna dla większej ilości aplikacji w Internecie. Cele projektowe RDF: prosty model danych, formalne semantyki i dające się udowodnić wnioskowanie, elastyczne, bazujące na URI słownictwo, wykorzystanie składni bazującej na XML, wspieranie użycia typów danych XML Schema, możliwość tworzenia zdań o dowolnym źródle. RDF posiada prosty model danych, łatwy do przetwarzania przez aplikacje, który jest niezależny od konkretnych składni. RDF ma formalne semantyki zapewniające podstawy do wnioskowania znaczenia wyrażeń RDF. Wspiera definiowanie wymogów zapewniających podstawy do określania reguł wnioskowania. Słownictwo jest elastyczne, rozszerzalne i
19 bazuje na URI z opcjonalnymi identyfikatorami. RDF może używać wartości reprezentowanych zgodnie z typami danych XML Schema, w ten sposób wspomaga wymianę informacji z aplikacjami XML. Nie zakłada się, że o dowolnym źródle dostępna jest kompletna informacja. RDF nie zapobiega tworzeniu bezsensownych lub niespójnych z innymi zdań. Projektanci aplikacji używających RDF powinni mieć świadomość tego i projektować aplikacje tak, aby akceptowały niekompletne lub niepełne źródła informacji. 2) Pojęcia RDF używa następujących kluczowych pojęć: a) graficzny model danych (grafy), b) słownictwo bazujące na URI, c) typy danych, d) dane liczbowo-literowe (literals), e) wyrażenia o prostych faktach, f) konsekwencje (wnioski). a) Graficzny model danych Podstawowa struktura każdego wyrażenia RDF jest zbiorem trójek (zdań). Każda trójka składa się z podmiotu, predykatu i obiektu. Zbiór takich trójek nazywamy grafem. Może być on zilustrowany jako diagram, składający się z węzłów i skierowanych łuków. Zdanie: Każda trójka reprezentuje zdanie wyrażające relację między rzeczami wskazywanymi przez węzły. Każde zdanie składa się z podmiotu, predykatu (właściwości) i obiektu. Kierunek łuku jest ważny i zawsze idzie w stronę obiektu. Węzły grafu to jego obiekt i podmiot, a łuk to relacja. Twierdzenie o trójkach RDF mówi, że niektóre relacje wskazywane przez predykaty obowiązują między rzeczami wskazywanymi przez podmiot i obiekt trójki. Znaczenie grafu jest logiczną koniunkcją zdań korespondujących ze wszystkimi jego trójkami. b) Słownictwo bazujące na URI
20 Węzły mogą mieć wskaźniki URI z opcjonalnymi identyfikatorami fragmentów, danymi liczbowo-literowymi albo mogą być puste (nie mające oddzielnej formy identyfikacji). Właściwości są referencjami URI. Referencje URI używane jako węzły identyfikują to, co reprezentują węzły. URI używany jako predykat identyfikuje relację między rzeczami reprezentowanymi przez węzły, które zawiera. Referencja predykatu może być również węzłem grafu. Pusty węzeł jest węzłem nie będącym referencją URI ani daną liczbowoliterową. Pusty węzeł jest specyficznym węzłem, który może być używany w więcej niż jednym zdaniu, ale nie ma wrodzonej nazwy. Konwencja używana przez niektóre liniowe reprezentacje grafów RDF, pozwalająca różnym zdaniom odwoływać się do tych samych niezidentyfikowanych zasobów, używa identyfikatorów pustych węzłów, będących lokalnymi identyfikatorami, które mogą być rozróżniane od URI oraz danych liczbowo-literowych. Gdy grafy są łączone, ich puste węzły muszą być trzymane osobno, jeśli ma zostać zachowane znaczenie. To może wymagać ponownego przydziału identyfikatorów pustym węzłom. Identyfikatory pustych węzłów nie są częścią abstrakcyjnej składni RDF i reprezentacja trójek je zawierających jest całkowicie zależna od konkretnej, używanej w danym momencie składni. c) Typy danych Typy danych są używane w reprezentacji danych liczbowo-literowych. Typ danych składa się z leksykalnej przestrzeni, przestrzeni wartości oraz mapowania słownictwa do wartości. Przykład mapowania typu danych xsd:boolean, gdzie każdy element przestrzeni wartości ma dwie leksykalne reprezentacje. Przestrzeń wartości {T, F} Przestrzeń leksykalna {"0", "1", "true", "false"} Mapowanie słownictwo-wartości {<"true", T>, <"1", T>, <"0", F>, <"false", F>} Tabela 3 Mapowanie danych xsd:boolean [1]
21 RDF predefiniuje tylko jeden typ danych rdf:xmlliteral, używany do umieszczania XML w RDF. Nie ma żadnego wbudowanego pojęcia liczb lub dat. RDF wykorzystuje typy danych zdefiniowane osobno i identyfikowane poprzez referencje URI. W tym celu szeroko wykorzystywane są predefiniowane typy danych XML Schema. Ponadto RDF nie zapewnia mechanizmu definiującego nowe typy danych. d) Dane liczbowo-literowe Dane liczbowo-literowe reprezentują wartości takie jak liczby i daty w znaczeniu lreprezentacji leksykalnej. Wszystko co jest przez nie reprezentowane, może być również reprezentowane przez URI, ale wygodniej jest używać leksykalnej reprezentacji. Dane liczbowo-literowe mogą być obiektami zdań, nie mogą być podmiotami ani predykatami. Mogą być proste lub typowane: Proste wartości są stringami łączonymi z opcjonalnymi etykietami językowymi. Mogą być używane do zwykłych tekstów w naturalnym języku. Wartości typowane to stringi łączone z identyfikatorami URI. Wskazują elementy identyfikowanej przestrzeni wartości. Kontynuacja poprzedniego przykładu: Typ leksykalny Mapowanie słownictwo-wartości Wartość <xsd:boolean, "true"> <"true", T> T <xsd:boolean, "1"> <"1", T> T <xsd:boolean, "false"> <"false", F> F <xsd:boolean, "0"> <"0", F> F Tabela 4 Mapowanie danych xsd:boolean [2] Jeżeli wymagane są adnotacje językowe, muszą być zawarte jako znacznik, zwykle za pośrednictwem atrybutu xml:lang. e) Wyrażenia prostych faktów Niektóre proste fakty wskazują relacje między dwoma rzeczami. Taki fakt może być reprezentowany przez trójkę RDF, w której predykat nazywa relację, a podmiot i obiekt wskazują rzeczy połączone relacją. Dobrze znaną reprezentacją takiego faktu może być
22 wiersz tabeli relacyjnej bazy danych. Tabela ma dwie kolumny odpowiadające podmiotowi i obiektowi w trójkach RDF. Nazwa tabeli odpowiada predykatowi. Inna znajoma reprezentacja to predykaty miejsc w logice pierwszego rzędu. Relacyjne bazy danych pozwalają tabeli mieć dowolną liczbę kolumn, wiersz każdej informacji wyrażenia odpowiada predykatowi logiki pierwszego rzędu z dowolną liczbą miejsc. Taki wiersz lub predykat musi być dekomponowany dla reprezentacji jako trójka RDF. Prosta forma dekompozycji tworzy nowy pusty węzeł odpowiadający wierszowi i nowa trójka jest tworzona dla każdej komórki wiersza. Podmiot każdej trójki jest nowym pustym węzłem, predykat odpowiada nazwie kolumny a obiekt wartości w komórce. Nowy pusty węzeł może mieć również właściwość rdf:type, której wartość odpowiada nazwie tabeli. Bardziej złożone fakty są wyrażone w RDF za pomocą koniunkcji prostych binarnych relacji. RDF nie zapewnia środków do reprezentacji negacji i alternatywy. f) Konsekwencje (wnioski) Idea znaczenia i wnioskowania w RDF jest podbudowana formalnymi pojęciami wniosków. Wyrażenie A implikuje wyrażenie B, jeżeli każde wydarzenie powodujące, że A jest prawdziwe, pociąga w konsekwencji prawdziwość B. Na tej podstawie, jeżeli zakładana jest prawdziwość wyrażenia A, to prawdziwość wyrażenia B może być wnioskowana. 3) Słownictwo URI i przestrzeń nazw RDF używa referencji URI do identyfikacji zasobów i właściwości. Konkretne referencje URI otrzymują określone znaczenia w RDF. URI o następującym wyglądzie są zdefiniowane przez specyfikację RDF: (konwencjonalnie skojarzone z prefiksem przestrzeni nazw rdf:). Używany z RDF/XML prefiks koresponduje z przestrzenią nazw XML i jest skojarzony ze słownictwem RDF. 4) Typy danych Abstrakcyjne typy danych używane w RDF są kompatybilne z abstrakcyjnym językiem XML Schema. Typy danych składają się z
23 przestrzeni leksykalnej (zbiór Unicode 5 ), przestrzeni wartości i mapowania pomiędzy nimi (zbiór par elementów, z których pierwszy jest z przestrzeni leksykalnej, a drugi z przestrzeni wartości). Każdy element z przestrzeni leksykalnej jest mapowany do dokładnie jednego elementu z przestrzeni wartości. Każdy element z przestrzeni wartości może mieć parę z dowolną liczbą (również zero) elementów przestrzeni leksykalnej. Typ danych jest identyfikowany przez jedną lub więcej referencji URI. RDF może używać dowolnych typów danych, również niezdefiniowanych w XML Schema pod warunkiem, że podporządkowują się one powyższemu schematowi. Istnieją również wbudowane typy danych XML Schema niekompatybilne z RDF, np. QName. 5) Zawartość XML wewnątrz grafów RDF RDF zapewnia zawartość XML jako dane liczbowo-literowe. Powstają one przy użyciu rdf:parsetype="literal" w składni XML/RDF. Taka zawartość jest wskazywana w grafach RDF przy pomocy danych liczbowo-literowych, które posiadają specjalny typ danych rdf:xmlliteral, identyfikowany następującym URI 6) Abstrakcyjna składnia Abstrakcyjna składnia RDF jest zbiorem trójek nazywanych grafami RDF. Nad abstrakcyjną składnią zdefiniowane są formalne semantyki. Aplikacje mogą reprezentować grafy w dowolnej ekwiwalentnej formie. Trójka RDF zawiera trzy elementy: podmiot, może być referencją URI lub pustym węzłem, predykat nazywany również właściwością trójki, może być referencją URI, obiekt mogący być referencją URI, daną liczbowo-literową albo pustym węzłem. Graf RDF jest zbiorem trójek, zbiór jego węzłów jest zbiorem podmiotów i obiektów. Dwa grafy RDF G i F są równoważne, jeśli istnieje bijekcja M między zbiorami ich węzłów taka, że (1) M odwzorowuje puste węzły w puste węzły, (2) M(lit)=lit dla każdej danej liczbowo-literowej lit, która jest węzłem grafu G, 5 Unicode jest komputerowym zestawem znaków, w zamierzeniu mającym obejmować wszystkie pisma na świecie.
24 (3) M(Uri)=Uri dla każdej referencji URI Uri, która jest węzłem grafu G, (4) trójka (s,p,o) należy do grafu G wtedy i tylko wtedy, gdy trójka (M(s),p,M(o)) należy do grafu F. Dwie referencje URI w RDF są równe wtedy i tylko wtedy, gdy stringi Unicode mają identyczne kolejne znaki. URI są kompatybilne z typem danych anyuri zdefiniowanym w XML Schema oraz z IRI (International Resource Identifiers) 6. Dana liczbowo-literowa zawiera w grafie RDF jeden lub dwa nazwane komponenty. Wszystkie takie dane mają leksykalną postać będącą stringiem Unicode. Proste dane mają postać leksykalną i opcjonalnie etykietę językową. Typowane dane mają formę leksykalną i URI. Dwie wartości liczbowo-literowe są równe wtedy i tylko wtedy, gdy spełnione są następujące warunki: stringi ich form leksykalnych są dokładnie takie same (z uwzględnieniem kolejności), obydwie lub żadna mają etykiety językowe, etykiety językowe, jeśli występują, są takie same, obydwie lub żadne mają URI, dwa URI, jeśli występują, są takie same znak po znaku. Puste grafy w RDF są wyciągane z nieskończonego zbioru. Zbiór pustych węzłów, zbiór referencji URI oraz zbiór danych liczbowo-literowych są parami rozłączne. Zbiór pustych węzłów jest zupełnie dowolny. RDF nie tworzy referencji do wewnętrznych struktur pustych węzłów. Mając dwa puste węzły można określić, czy są one takie same czy nie. 6 IRI jest międzynarodowym identyfikatorem zasobów będącym sekwencją znaków Unicode.
25 7) Identyfikatory fragmentowe RDF używa referencji URI, które mogą zawierać fragmentowe identyfikatory dla zasobu, wolne od kontekstu. Część URI (z wyłączeniem identyfikatora fragmentowego) identyfikuje zasób. Podejście fragmentowych identyfikatorów pozwala na wskazywanie elementów całkowicie na zewnątrz dokumentu lub nawet na zewnątrz sieci. W ten sposób dokumenty (lub aplikacje rdf+xml) działają jako pośrednicy między niektórymi odzyskiwanymi dokumentami a zbiorami możliwych abstrakcji lub pozasieciowymi elementami opisywanymi przez RDF. To zapewnia działanie referencji URI oraz ich oznaczanie, które jest zgodne z teorią i wykorzystaniem modelu RDF i normalnym zachowaniem sieci. Warto zauważyć, że nigdzie nie jest wymagane aby aplikacja RDF była zdolna do odzyskiwania jakiejkolwiek reprezentacji zasobów identyfikowanych przez URI w grafach RDF Semantyka 7 To, co jest uważane za znaczenie zdań w RDF może zależeć od wielu elementów, takich jak społeczne konwencje, komentarze w naturalnym języku lub inne dokumenty. Większość tego znaczenia jest niedostępna dla maszyn przetwarzających i jest wymieniona tutaj do podkreślenia, że formalne semantyki nie są przeznaczone do pełnej analizy znaczenia w tak szerokim sensie. Formalne semantyki ograniczają się same do formalnej notacji znaczenia, które może być scharakteryzowane jako część znana pozostałym składowym znaczenia i może być objęte mechanicznymi zasadami wnioskowania. W celu określenia semantyk formalnego języka używana jest technika nazywana teorią modelowania. Teoria modelowania zakłada, że język odnosi się do świata i opisuje warunki, które ten świat musi spełnić w celu przekazywania poprawnego znaczenia dla każdego wyrażenia w języku. Konkretny świat jest nazywany interpretacją, więc teoria modelowania może być nazywana teorią interpretacji. Najważniejszą ideą jest zapewnienie abstrakcyjnego, matematycznego opisu właściwości, które posiada każda taka interpretacja, poprzez tworzenie możliwie dużej liczby założeń o właściwej naturze lub wewnętrznej strukturze, zachowując w ten sposób tak dużo ogólności jak to możliwe. Najważniejszym wykorzystaniem formalnych semantyk jest zapewnienie technicznego sposobu determinowania, kiedy procesy wnioskowania są uzasadnione, czyli np. kiedy zachowują prawdę. 7 Por.
26 Innym sposobem określania semantyk jest zastosowanie translacji z RDF do formalnej logiki wraz z teorią modelowania. Takie podejście aksjomatycznych semantyk zostało zasugerowane i było wcześniej używane z różnymi alternatywnymi wersjami języków. Konkretne wykorzystania RDF zawierające podstawy dla bardziej zaawansowanych języków takich jak OWL, mogą nakładać dalsze semantyczne warunki. Takie dodatkowe warunki mogą odwoływać się do semantycznych rozszerzeń RDF. Semantyczne rozszerzenia są ograniczone przez użycie słów kluczowych must, must not, should, may 1) Interpretacje RDF nie nakłada logicznych ograniczeń na zasięg i dziedzinę właściwości, w szczególności właściwość może być zastosowana sama do siebie. Jednak semantyczny model rozróżnia właściwości i klasy rozważane jako obiekty od ich wnętrza. Klasy RDF nie są rozważane jedynie jako proste zbiory, ale są również uważane za klasyfikacje lub pojęcia mające silnie zdeterminowaną notację równości, która przekracza proste relacje wewnętrzne. Ta właściwość teorii modelowania ma znaczące konsekwencje w bardziej ekspresyjnych językach opartych na RDF, takich jak OWL, które są zdolne do wyrażania bezpośrednio identyczności między pojęciami i klasami. Ta intencjonalna natura klas i właściwości jest często użyteczną właściwością języków deskrypcyjnych. Referencje URI mają zawsze takie samo znaczenie kiedy tylko się pojawiają. Zapewnienie adekwatnych semantyk wrażliwych na tymczasowe zmiany jest problemem badań. Semantyki nie zakładają żadnych konkretnych relacji między wskazaniami URI a zasobami sieci, otrzymywanymi przy użyciu tych referencji lub innymi elementami będącymi źródłami takich dokumentów. Nie istnieje jedna interpretacja grafu RDF (nie jest możliwe wyrażenie wystarczającej liczby założeń do określenia jednej interpretacji). Im większy graf i więcej można powiedzieć na jego podstawie o świecie, tym mniejszy jest zbiór prawdziwych interpretacji, na które pozwala graf. Wszystkie interpretacje związane są ze zbiorem nazw, nazywanym słownictwem interpretacji. Niektóre z nich mogą nakładać specjalne znaczenia na symbole w konkretnym słownictwie. Interpretacja bez ekstra-warunków na słownictwo nazywana jest prostą interpretacją.
27 Główna semantyczna charakterystyka danych liczbowo-literowych zakłada, że ich znaczenie jest mocno zdeterminowane przez formę stringów, jakie zawierają. Proste dane są zawsze interpretowane jako odnoszące się do samych siebie. W przypadku typowanych danych, pełna specyfikacja znaczenia zależy od możliwości dostępu do informacji o typie danych, który jest zewnętrznym elementem RDF. Definicja prostej interpretacji I słownictwa V : 1. IR niepusty zbiór zasobów, nazywany dziedziną przestrzeni I 2. IP zbiór właściwości I 3. IEXT mapowanie ze zbioru IP do IR IR, np. zbiór zbiorów par (x,y), gdzie x, y IR 4. IS mapowanie referencji URI w V do IR IP 5. IL mapowanie typowanych danych liczbowo-literowych w V do IR 6. LV IR - zbiór danych liczbowo-literowych zawierający wszystkie proste dane w V. IEXT(x) jest zbiorem par identyfikujących argumenty, dla których właściwość jest prawdziwa. Założenie, że LV jest podzbiorem IR oznacza, że wartości liczbowo-literowe są uważane za realne jednostki, które istnieją, czyli są one zasobami. To nie implikuje jednak identyfikowania ich za pomocą URI. Symbole podstawowych grafów RDF w I są zadane rekurencyjnie za pomocą reguł rozszerzających interpretację mapowania oraz nazw podstawowych grafów. Reguły te pracują przez definiowanie oznaczania każdego elementu składni RDF E w terminach oznaczania bezpośrednich składników E. Przyjmujemy następujące oznaczenia: = oznacza równość, (x,y) uporządkowana para elementów x oraz y, podwójny cudzysłów obejmuje - wskazuje etykiety językowe,. trójki są zakończone kropką. Semantyczne warunki dla podstawowych grafów 1. Jeżeli E jest prostą wartością liczbowo-literową aaa w V, wtedy I(E)=aaa. 2. Jeżeli E jest prostą wartością liczbowo-literową w V, wtedy I(E)=(aaa,ttt). 3. Jeżeli E jest typowaną wartością liczbowo-literową w V, to I(E)=IL(E). 4. Jeżeli E jest referencją URI w V, to I(E)=IS(E).
28 5. Jeżeli E jest podstawową trójką s p o. wtedy I(E)=true, jeżeli s, p, o V, I( p) IP, ( I( s), I( o)) IEXT( I( p)), w przeciwnym wypadku I(E)=false. 6. Jeżeli E jest podstawowym grafem RDF, to I(E)=false, jeżeli I(E )=false dla pewnej trójki E w E. W przeciwnym wypadku I(E)=true. Jeżeli słownictwo RDF nie daje semantycznej wartości pewnej nazwie w grafie, to wtedy powyższe warunki będą zawsze zwracać wartość false dla niektórych trójek grafu, a co za tym idzie, dla całego grafu. Odwracając to, dowolne twierdzenie o grafie zakłada, że wszystkie nazwy w grafie właściwie odnoszą się do czegoś realnego w świecie. Ostatni warunek implikuje, że pusty graf (pusty zbiór trójek) jest w sposób trywialny prawdziwy. Każda referencja URI pojawiająca się w grafie jako predykat, podmiot lub obiekt musi wskazywać coś z przecięcia IR oraz IP w każdej interpretacji spełniającej graf. Puste węzły są traktowane jako struktury wskazujące istnienie rzeczy bez używania, a nawet wspominania o ich nazwie. Pusty węzeł nie zakłada istnienia referencji URI odnoszącej się do danej rzeczy. Interpretacja może określać prawdziwość grafów zawierających puste węzły, będzie jedynie wymagać pewnych definicji zapewniających znaczenie pustych węzłów. Załóżmy, że I jest interpretacją, A mapowaniem z pewnego zbioru pustych węzłów do IR i niech I+A będzie rozszerzoną interpretacją I używającą A do dostarczenia interpretacji pustych węzłów. Ponadto niech blank(e) będzie zbiorem pustych węzłów w E. Wtedy powyższe reguły są rozszerzane o dwa nowe przypadki dla sytuacji, kiedy w grafie występują puste węzły. Semantyczne warunki dla pustych węzłów 1. Jeżeli E jest pustym węzłem i zdefiniowane jest A(E), to [I+A](E) = A(E). 2. Jeżeli E jest grafem RDF wtedy I(E) = true, jeśli [I+A'](E) = true dla pewnego mapowania A z blank(e) do IR, w przeciwnym wypadku I(E)= false. Należy zauważyć, że te warunki nie zmieniają definicji interpretacji, jak również że puste węzły są bardzo dobrze zdefiniowane, a od innych węzłów różnią się jedynie tym, że nie mają ustalonych symboli przez interpretację i nie mają globalnego znaczenia (na zewnątrz grafu, w którym się znajdują). Puste węzły są traktowane jak posiadające takie samo znaczenie jak egzystencjalne zmienne w grafie, w którym się pojawiają i które mają zasięg całego grafu.
Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski
Dodatkowe możliwości RDF Seminarium magisterskie Paweł Chrząszczewski Inne możliwości RDF RDF posiada szereg dodatkowych funkcji, takich jak wbudowane typy i właściwości reprezentujące grupy zasobów i
RDF Schema (schematy RDF)
RDF Schema (schematy RDF) Schemat RDF nie dostarcza słownictwa dla aplikacji klasy jak np.: Namiot, Książka, lub Osoba; i właściwości, takich jak np.: waga w kg, autor lub jobtitle Schemat RDF zapewnia
Internet Semantyczny. Schematy RDF i wnioskowanie
Internet Semantyczny Schematy RDF i wnioskowanie Ewolucja Internetu Internet dzisiaj Internet Semantyczny Jorge Cardoso, The Syntactic and the Semantic Web, in Semantic Web Services: Theory, Tools, and
Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Rysunek 1: Przykłady graficznej prezentacji klas.
4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez
Język RDF. Mikołaj Morzy Agnieszka Ławrynowicz. Instytut Informatyki Poznań, rok akademicki 2013/2014
Język RDF Mikołaj Morzy Agnieszka Ławrynowicz Instytut Informatyki Poznań, rok akademicki 2013/2014 (c) Mikołaj Morzy, Agnieszka Ławrynowicz, Instytut Informatyki Politechniki Poznańskiej TSiSS 1 Sieci
Marcin Skulimowski - RDF
Marcin Skulimowski Wprowadzenie do Resource Description Framework I. Podstawy RDF RDF jest językiem służącym do reprezentacji informacji na temat zasobów w taki sposób aby informacje te mogły być łatwo
Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym
Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM
3 grudnia Sieć Semantyczna
Akademia Górniczo-Hutnicza http://www.agh.edu.pl/ 1/19 3 grudnia 2005 Sieć Semantyczna Michał Budzowski budzow@grad.org 2/19 Plan prezentacji Krótka historia Problemy z WWW Koncepcja Sieci Semantycznej
Internet Semantyczny i Logika II
Internet Semantyczny i Logika II Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym językiem
Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu. 1 Logika Klasyczna obejmuje dwie teorie:
Modelowanie danych, projektowanie systemu informatycznego
Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym
Zasady transformacji modelu DOZ do projektu tabel bazy danych
Zasady transformacji modelu DOZ do projektu tabel bazy danych A. Obiekty proste B. Obiekty z podtypami C. Związki rozłączne GHJ 1 A. Projektowanie - obiekty proste TRASA # * numer POZYCJA o planowana godzina
Internet Semantyczny. Wstęp do OWL 2
Internet Semantyczny Wstęp do OWL 2 RDFS Podstawowymi elementami które określamy w RDFS są klasy (ang. class) zasobów i właściwości (ang. property) zasobów charakterystyczne dla interesującego nas fragmentu
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław
RDF (Resource Description Framework)
RDF (Resource Description Framework) Agnieszka Ławrynowicz 2009.09.29 Podstawowe elementy Zasoby (ang. resources) identyfikowane za pomocą URI, ale URI niekoniecznie wskazuje zasób odpowiadają węzłom w
1 Projektowanie systemu informatycznego
Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................
030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła
030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,
Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)
Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu
LOGIKA I TEORIA ZBIORÓW
LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja
Paweł Kurzawa, Delfina Kongo
Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management
Typy, klasy typów, składnie w funkcji
Typy, klasy typów, składnie w funkcji Typy w Haskell Każde wyrażenie w Haskell posiada zdefiniowany typ. Dzięki temu już na etapie kompilacji kodu następuje sprawdzenie poprawności kodu i zabezpiecza nas
Przygotowała Elżbieta Pastucha na podstawie CityGML OGC Standard for Photogrammetry by Thomas H. Kolbe, Claus Nagel, Alexandra Stadler
Przygotowała Elżbieta Pastucha na podstawie CityGML OGC Standard for Photogrammetry by Thomas H. Kolbe, Claus Nagel, Alexandra Stadler Wirtualne modele miast 3D Nowa Generacja Wykorzystanie: Symulacje
Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni
Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie
Reprezentacja wiedzy ontologie, logiki deskrypcyjne
Reprezentacja wiedzy ontologie, logiki deskrypcyjne Agnieszka Ławrynowicz 24 listopada 2016 Plan wykładu 1 Powtórka: sieci semantyczne, RDF 2 Definicja ontologii 3 Logiki deskrypcyjne Semantyczny Internet
Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009
PWSZ w Tarnowie Tarnów, 6 lutego 2009 1 Interpretacja trójek i SWI-Prolog Składnia 2 3 4 Interpretacja trójek i SWI-Prolog Składnia Opis (ang. Resource Description Framework) jest specyfikacją modelu metadanych,
Internet Semantyczny. Linked Open Data
Internet Semantyczny Linked Open Data Dzień dzisiejszy database Internet Dzisiejszy Internet to Internet dokumentów (Web of Dokuments) przeznaczonych dla ludzi. Dzień dzisiejszy Internet (Web) to dokumenty
Internet Semantyczny. Logika opisowa
Internet Semantyczny Logika opisowa Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym
Ontologie, czyli o inteligentnych danych
1 Ontologie, czyli o inteligentnych danych Bożena Deka Andrzej Tolarczyk PLAN 2 1. Korzenie filozoficzne 2. Ontologia w informatyce Ontologie a bazy danych Sieć Semantyczna Inteligentne dane 3. Zastosowania
Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 3: Model związków encji. dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Co to jest model związków encji? Model związków
Internet Semantyczny i Logika I
Internet Semantyczny i Logika I Warstwy Internetu Semantycznego Dowód Zaufanie Logika OWL, Ontologie Podpis cyfrowy RDF, schematy RDF XML, schematy XML przestrzenie nazw URI Po co nam logika? Potrzebujemy
Bazy danych TERMINOLOGIA
Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.
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
Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury
Semantic Web. dr inż. Aleksander Smywiński-Pohl. Elektroniczne Przetwarzanie Informacji Konsultacje: czw , pokój 3.211
RDF RDFS i OWL Linked Data Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 RDF RDFS i OWL Linked Data Plan prezentacji RDF RDFS i OWL Linked Data RDF RDFS i OWL Linked
BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski
BAZY DANYCH model związków encji Opracował: dr inż. Piotr Suchomski Świat rzeczywisty a baza danych Świat rzeczywisty Diagram związków encji Model świata rzeczywistego Założenia, Uproszczenia, ograniczenia
Świat rzeczywisty i jego model
2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),
Relacyjny model baz danych, model związków encji, normalizacje
Relacyjny model baz danych, model związków encji, normalizacje Wyklad 3 mgr inż. Maciej Lasota mgr inż. Karol Wieczorek Politechnika Świętokrzyska Katedra Informatyki Kielce, 2009 Definicje Operacje na
Semantic Web. Grzegorz Olędzki. prezentacja w ramach seminarium Protokoły komunikacyjne. luty 2005
Semantic Web Grzegorz Olędzki prezentacja w ramach seminarium Protokoły komunikacyjne luty 2005 Co to jest Semantic Web? "The Semantic Web is an extension of the current web in which information is given
Semantic Web Internet Semantyczny
Semantic Web Internet Semantyczny Semantyczny Internet - Wizja (1/2) Pomysłodawca sieci WWW - Tim Berners-Lee, fizyk pracujący w CERN Jego wizja sieci o wiele bardziej ambitna niż istniejąca obecnie (syntaktyczna)
Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki
Instytut Informatyki Literatura http://www.w3c.org/tr/ - Technical Reports K. B. Stall - XML Family of Specifications, Addison-Wesley 2003 P. Kazienko, K. Gwiazda - XML na poważnie, Helion 2002 XML Rozszerzalny
Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne
Architektury i technologie integracji danych Systemy Mediacyjne Multi-wyszukiwarki Wprowadzenie do Mediacyjnych Systemów Zapytań (MQS) Architektura MQS Cechy funkcjonalne MQS Cechy implementacyjne MQS
Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;
Klasy w C++ są bardzo ważnym narzędziem w rękach programisty. Klasy są fundamentem programowania obiektowego. Z pomocą klas będziesz mógł tworzyć lepszy kod, a co najważniejsze będzie on bardzo dobrze
Wykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Przykładowy dokument XML
Przykładowy dokument XML DTD - wady Ograniczona kontrola nad strukturą dokumentów. Zbyt wysokopoziomowe typy danych: liczby, daty są zawsze reprezentowane jako tekst! Bardzo ogólne metody definiowania
Diagramy klas. dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com
Diagramy klas dr Jarosław Skaruz http://ii3.uph.edu.pl/~jareks jaroslaw@skaruz.com O czym będzie? Notacja Ujęcie w różnych perspektywach Prezentacja atrybutów Operacje i metody Zależności Klasy aktywne,
Moduł mapowania danych
Moduł mapowania danych Styczeń 2011 Wszelkie prawa zastrzeżone. Dokument może być reprodukowany lub przechowywany bez ograniczeń tylko w całości. W przeciwnym przypadku, żadna część niniejszego dokumentu,
Podstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Podstawy Informatyki. Algorytmy i ich poprawność
Podstawy Informatyki Algorytmy i ich poprawność Błędy Błędy: językowe logiczne Błędy językowe Związane ze składnią języka Wykrywane automatycznie przez kompilator lub interpreter Prosty sposób usuwania
APIO. W4 ZDARZENIA BIZNESOWE. ZALEŻNOŚCI MIĘDZY FUNKCJAMI. ELEMENTY DEFINICJI PROCESU. DIAGRAM ZALEŻNOŚCI FUNKCJI.
APIO. W4 ZDARZENIA BIZNESOWE. ZALEŻNOŚCI MIĘDZY FUNKCJAMI. ELEMENTY DEFINICJI PROCESU. DIAGRAM ZALEŻNOŚCI FUNKCJI. dr inż. Grażyna Hołodnik-Janczura W8/K4 ZDARZENIA BIZNESOWE W otoczeniu badanego zakresu
Języki programowania zasady ich tworzenia
Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie
Alicja Marszałek Różne rodzaje baz danych
Alicja Marszałek Różne rodzaje baz danych Rodzaje baz danych Bazy danych można podzielić wg struktur organizacji danych, których używają. Można podzielić je na: Bazy proste Bazy złożone Bazy proste Bazy
Wykład 2. Relacyjny model danych
Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających
Logika Matematyczna (1)
Logika Matematyczna (1) Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl 4 X 2007 Jerzy Pogonowski (MEG) Logika Matematyczna (1) 4 X 2007 1 / 18 Plan konwersatorium Dzisiaj:
Diagram klas UML jest statycznym diagramem, przedstawiającym strukturę aplikacji bądź systemu w paradygmacie programowania obiektowego.
Umiejętność czytania oraz tworzenia diagramów klas UML jest podstawą w przypadku zawodu programisty. Z takimi diagramami będziesz spotykał się w przeciągu całej swojej kariery. Diagramy klas UML są zawsze
Wstęp do Programowania potok funkcyjny
Wstęp do Programowania potok funkcyjny Marcin Kubica 2016/2017 Outline Moduły i bariery abstrakcji 1 Moduły i bariery abstrakcji Moduły co to jest i po co to jest? Duży system dzielimy na mniejsze, łatwiejsze
Baza danych. Baza danych to:
Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego
Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język
domykanie relacji, relacja równoważności, rozkłady zbiorów
1 of 8 2012-03-28 17:45 Logika i teoria mnogości/wykład 5: Para uporządkowana iloczyn kartezjański relacje domykanie relacji relacja równoważności rozkłady zbiorów From Studia Informatyczne < Logika i
C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów. C++ - przeciążanie operatorów
Operatory są elementami języka C++. Istnieje zasada, że z elementami języka, takimi jak np. słowa kluczowe, nie można dokonywać żadnych zmian, przeciążeń, itp. PRZECIĄŻANIE OPERATORÓW Ale dla operatorów
Indukowane Reguły Decyzyjne I. Wykład 3
Indukowane Reguły Decyzyjne I Wykład 3 IRD Wykład 3 Plan Powtórka Grafy Drzewa klasyfikacyjne Testy wstęp Klasyfikacja obiektów z wykorzystaniem drzewa Reguły decyzyjne generowane przez drzewo 2 Powtórzenie
1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie
Opracował: dr hab. inż. Jan Magott KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 Temat: Automaty Moore'a i Mealy 1. Cel ćwiczenia Celem ćwiczenia jest
Podstawy projektowania systemów komputerowych
Podstawy projektowania systemów komputerowych Diagramy klas UML 1 Widok logiczny Widok logiczny Widok fizyczny Widok przypadków użycia Widok procesu Widok konstrukcji Używany do modelowania części systemu
Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD
Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6
JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Wykład 6 1 SPECYFIKATOR static Specyfikator static: Specyfikator ten powoduje, że zmienna lokalna definiowana w obrębie danej funkcji nie jest niszczona
Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi
Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie
Spis treúci. 1. Wprowadzenie... 13
Księgarnia PWN: W. Dąbrowski, A. Stasiak, M. Wolski - Modelowanie systemów informatycznych w języku UML 2.1 Spis treúci 1. Wprowadzenie... 13 2. Modelowanie cele i metody... 15 2.1. Przegląd rozdziału...
problem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
Podejście obiektowe - podstawowe pojęcia
Podejście obiektowe - podstawowe pojęcia Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2003 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu
Programowanie obiektowe - 1.
Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Monitoring procesów z wykorzystaniem systemu ADONIS
Monitoring procesów z wykorzystaniem systemu ADONIS BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management
XML Schema. Typy proste, wyprowadzanie typów, modularyzacja schematu. Patryk Czarnik. Instytut Informatyki UW
XML Schema Typy proste, wyprowadzanie typów, modularyzacja schematu Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Typy proste i złożone Typy złożone struktura
Modelowanie obiektowe
Modelowanie obiektowe ZPO 2018/2019 Dr inż. W. Cichalewski Materiały wykonane przez W. Tylman Diagramy klas Diagramy klas Zawiera informacje o statycznych związkach między elementami (klasami) Są ściśle
Rola języka XML narzędziem
Wprowadzenie do XML dr inż. Adam Iwaniak Szkolenie w Luboradzy, ZCPWZ, 12-13.02.2009r. Rola języka XML narzędziem Pierwszą rewolucją internetową było dostarczenie ludziom informacji. Znajdujemy się teraz
Projekt 4: Programowanie w logice
Języki Programowania Projekt 4: Programowanie w logice Środowisko ECL i PS e W projekcie wykorzystane będzie środowisko ECL i PS e. Dostępne jest ono pod adresem http://eclipseclp.org/. Po zainstalowaniu
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku
Budowa argumentacji bezpieczeństwa z użyciem NOR-STA Instrukcja krok po kroku NOR-STA jest narzędziem wspierającym budowę, ocenę oraz zarządzanie strukturą argumentacji wiarygodności (assurance case),
OfficeObjects e-forms
OfficeObjects e-forms Rodan Development Sp. z o.o. 02-820 Warszawa, ul. Wyczółki 89, tel.: (+48-22) 643 92 08, fax: (+48-22) 643 92 10, http://www.rodan.pl Spis treści Wstęp... 3 Łatwość tworzenia i publikacji
5. OKREŚLANIE WARTOŚCI LOGICZNEJ ZDAŃ ZŁOŻONYCH
5. OKREŚLANIE WARTOŚCI LOGICZNEJ ZDAŃ ZŁOŻONYCH Temat, którym mamy się tu zająć, jest nudny i żmudny będziemy się uczyć techniki obliczania wartości logicznej zdań dowolnie złożonych. Po co? możecie zapytać.
WPROWADZENIE DO BAZ DANYCH
WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z
Projektowanie aplikacji z bazami danych
Systemy mapowania relacyjno-obiektowego Instytut Informatyki Uniwersytet Wrocławski Plan wykładu Wprowadzenie do trwałości Niedopasowanie paradygmatów Architektura warstwowa Czym jest ORM? Problemy i pytania
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?
1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie? a) konstruktor b) referencje c) destruktor d) typy 2. Które z poniższych wyrażeń są poprawne dla klasy o nazwie
Modelowanie konceptualne model EER
Modelowanie konceptualne model EER adeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski Model EER rozszerzenie modelu ER 1. Liczne rozszerzenia modelu ER mają przede wszystkim na celu uwzględnienie zależności
Paradygmaty programowania
Paradygmaty programowania Jacek Michałowski, Piotr Latanowicz 15 kwietnia 2014 Jacek Michałowski, Piotr Latanowicz () Paradygmaty programowania 15 kwietnia 2014 1 / 12 Zadanie 1 Zadanie 1 Rachunek predykatów
Projektowanie relacyjnych baz danych
Mam nadzieję, że do tej pory przyzwyczaiłeś się do tabelarycznego układu danych i poznałeś sposoby odczytywania i modyfikowania tak zapisanych danych. W tym odcinku poznasz nieco teorii relacyjnych baz
Aproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji
Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami
Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie
Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie informatycznej. Zadaniem systemu jest rejestracja i przechowywanie
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema
Definiowanie typów dokumentów Część 2. Przestrzenie nazw, XML Schema Globalne i lokalne deklaracje elementów i atrybutów Deklaracje lokalne:
1 Podstawowe oznaczenia
Poniżej mogą Państwo znaleźć skondensowane wiadomości z wykładu. Należy je traktować jako przegląd pojęć, które pojawiły się na wykładzie. Materiały te nie są w pełni tożsame z tym co pojawia się na wykładzie.
Matematyka dyskretna. Andrzej Łachwa, UJ, /10
Matematyka dyskretna Andrzej Łachwa, UJ, 2018 andrzej.lachwa@uj.edu.pl 10/10 Podziały i liczby Stirlinga Liczba Stirlinga dla cykli (często nazywana liczbą Stirlinga pierwszego rodzaju) to liczba permutacji
Zbiory, relacje i funkcje
Zbiory, relacje i funkcje Zbiory będziemy zazwyczaj oznaczać dużymi literami A, B, C, X, Y, Z, natomiast elementy zbiorów zazwyczaj małymi. Podstawą zależność między elementem zbioru a zbiorem, czyli relację
OfficeObjects Ontology Manager
OfficeObjects Ontology Manager Rodan Development Sp. z o.o. 02-820 Warszawa, ul. Wyczółki 89, tel.: (+48-22) 643 92 08, fax: (+48-22) 643 92 10, http://www.rodan.pl Spis treści Wstęp... 3 Geneza produktu...
Modelowanie i Programowanie Obiektowe
Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do
0.1. Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań.
Wykłady z Analizy rzeczywistej i zespolonej w Matematyce stosowanej Wykład ELEMENTY LOGIKI ALGEBRA BOOLE A Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek
Programowanie w Logice Struktury danych (Lista 2)
Programowanie w Logice Struktury danych (Lista 2) Przemysław Kobylański Wstęp Struktury danych wyraża się w Prologu w postaci termów, tj. symbolicznych wyrażeń. Dotychczas poznaliśmy proste termy takie