aproksymacyjne wyszukiwanie informacji w bazach danych l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Aproksymacyjne wyszukiwanie informacji w bazach danych PowerPoint Presentation
Download Presentation
Aproksymacyjne wyszukiwanie informacji w bazach danych

Loading in 2 Seconds...

play fullscreen
1 / 63

Aproksymacyjne wyszukiwanie informacji w bazach danych - PowerPoint PPT Presentation


  • 175 Views
  • Uploaded on

Politechnika Śląska Instytut Informatyki. Aproksymacyjne wyszukiwanie informacji w bazach danych. Wykład - Bazy danych 3 – kierunek Informatyka sem. VII. Rodzaje zapytań. precyzyjne zakresowe aproksymacyjne. Rodzaje zapytań aproksymacyjnych.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Aproksymacyjne wyszukiwanie informacji w bazach danych' - scott


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
aproksymacyjne wyszukiwanie informacji w bazach danych

Politechnika Śląska Instytut Informatyki

Aproksymacyjne wyszukiwanie informacji w bazach danych

Wykład - Bazy danych 3 – kierunek Informatyka sem. VII

Gliwice 2005

rodzaje zapyta
Rodzaje zapytań
  • precyzyjne
  • zakresowe
  • aproksymacyjne

Gliwice 2005

rodzaje zapyta aproksymacyjnych
Rodzaje zapytań aproksymacyjnych
  • Wektorowe – wyszukiwanie na podstawie podobieństwa dwóch wektorów, z których jeden reprezentuje wyszukiwany obiekt, a drugi kryteria pytania
  • Oparte na prawdopodobieństwie – wyszukiwanie na podstawie prawdopodobieństwa spełnienia przez obiekt warunków pytania,
  • Rozmyte – wyszukiwanie na podstawie stopnia zgodności obiektu z kryteriami pytania
  • W języku naturalnym – semantyka języka określa sposób interpretacji pytania

Gliwice 2005

rys historyczny
Rys historyczny

Twórca teorii zbiorów rozmytych: Lotfi Zadeh (1965r.)

Praca inicjująca stosowanie zbiorów rozmytych

w bazach danych:

opracowanie V. Tahaniego o wyszukiwaniu informacji rozmytej (1976r.)

Gliwice 2005

badania nad zastosowaniem teorii zbior w rozmytych w bazach danych 1
Badania nad zastosowaniem teorii zbiorów rozmytych w bazach danych (1)
  • Zadawanie rozmytych pytań do bazy danych:
    • Translator języka naturalnego wykorzystujący teorię zbiorów rozmytych PRUF - (Zadeh - 1978)
    • Pierwszy rozmyty języka zapytań (Takahashi - 1991) (X jest bardzo niski)
    • Fuzzy Query – tworzony od połowy 1997r. Przez Sonalysts
    • Fquery – IBS PAN Warszawa (J. Kacprzyk, S. Zadrożny) dla MS Access
    • SQLf – P. Bosc, O. Pivert itd.

Gliwice 2005

badania nad zastosowaniem teorii zbior w rozmytych w bazach danych 2
Badania nad zastosowaniem teorii zbiorów rozmytych w bazach danych (2)
  • Zapamiętywanie rozmytych informacji w bazie danych:
    • rozmyte modele danych (B. P. Buckles, F. E. Petry)
    • Rozmyty relacyjny model GEFRED – Uniwersytet w Granadzie (J. Cubero, M. Vila, K. Pons, J. Medina)
    • Rozmyte modele obiektowych baz danych – Belgia (R. De Caluwe itd.)
    • Zbiory rozmyte w bazach danych systemów geograficznych (M. Cobb, A. Yazici, K. Akkaya, V. Robinson)

Gliwice 2005

slide7

Rodzaje pytań oraz przechowywanych danych

  • Precyzyjne pytania - dokładne dane w BD
  • Rozmyte pytania - dokładne dane w BD
  • Precyzyjne pytania - rozmyte dane w BD
  • Rozmyte pytania - rozmyte dane w BD

Gliwice 2005

problemy
Problemy
  • Jak przedstawić w składni języka SQL rozmyte sformułowania i jak ma przebiegać proces interpretacji takich zapytań?
  • W jaki sposób przechowywać w bazie rozmyte dane?

Gliwice 2005

teoria zbior w rozmytych podstawowe poj cia
Teoria zbiorów rozmytych -podstawowe pojęcia

Zbiór rozmyty – zbiór par, w pewnej numerycznej przestrzeni rozważań X

A = {(µA(x), x)}, dla każdego x  X,

gdzie:

µA – funkcja przynależności zbioru rozmytego A – każdemu elementowi zbioru x  X przypisuje stopień przynależności µA(x) do zbioru A, przy czym µA(x)  [0, 1]

Gliwice 2005

przyk adowa funkcja przynale no ci

a dm b

0 l m n o

D

Przykładowa funkcja przynależności
  • Liczba rozmyta
  • Przedział rozmyty
  • Przedział dokładny
  • Wartość dokładna

Gliwice 2005

reprezentacja liczb rozmytych
Reprezentacja liczb rozmytych
  • Liczba rozmyta typu LR:

A1 = (m, a, b)

  • Przedział rozmyty typu LR:

A2 = (m, n, a, b)

Gliwice 2005

posta zapytania w j zyku sql
Postać zapytania w języku SQL

Select <lista atrybutów>

From <lista tabel>

Where <warunki>

Group by <lista atrybutów>

Having <warunki filtrujące>

Order by <lista atrybutów>

Gliwice 2005

miejsca wyst powania warto ci rozmytych w pytaniach niezagnie d onych
Miejsca występowania wartości rozmytych w pytaniach niezagnieżdżonych
  • Warunki filtrujące we frazie WHERE
  • Warunki filtrujące we frazie HAVING
  • Grupowanie wg wyrażeń zawierających wartości rozmyte – GROUP BY
  • Porządkowanie wg kolumn zawierających wartości rozmyte – ORDER BY
  • Wartości rozmyte we frazieSELECT

Gliwice 2005

interpretacja rozmytych warunk w filtruj cych w pytaniach sql
Interpretacja rozmytych warunków filtrujących w pytaniach SQL

Przykład

Wyszukaj pracowników w wieku około 50 lat.

Gliwice 2005

warto rozmyta oko o 50
Wartość rozmyta około 50

1

...

0 40 45 55 60

X

Gliwice 2005

slide17

Zapis w notacji języka SQL

SELECT imie, nazwisko

FROM pracownicy

WHERE wiek JEST okolo 50

T(x)

1

(48) = 0.8

0 40 48 50 60

wiek

Gliwice 2005

warunki z o one
Warunki złożone

Where W

Where W1 AND W2 ... OR Wk

Wi AND Wj min ((wi), (wj)) t-norma

Wi OR Wj max((wi), (wj)) s-norma

Gliwice 2005

slide20

Wyszukaj pracowników w wieku około 50 lat, mających staż pracy około 20 lat.SELECT imie, nazwiskoFROM pracownicyWHERE wiek JEST okolo 50 AND staz_pracy JEST okolo 20Uzupełniona tabela o tymczasowe kolumny zawierające wartości stopni zgodności

Gliwice 2005

podstawa wyboru wierszy
Podstawa wyboru wierszy
  • Maksymalny stopień zgodności z warunkami pytania
  • Przekroczenie średniego stopnia zgodności
  • Przekroczenie pewnej zadanej wartości progowej

Gliwice 2005

wprowadzenie do zapisu pyta sql warunku na stopie zgodno ci
Wprowadzenie do zapisu pytań SQL warunku na stopień zgodności

Przykład

Wyszukaj pracowników, którzy mają około 50 lat, w odpowiedzi należy uwzględnić wiersze ze stopniem zgodności z kryterium pytania większym niż 0.7.

Dotychczasowy zapis pytania:

SELECT imie, nazwisko

FROM pracownicy

WHERE wiek JEST okolo 50

Gliwice 2005

trzy formy zapisu warunku na stopie zgodno ci
Trzy formy zapisu warunku na stopień zgodności
  • forma dołączana do warunku rozmytego

WHERE wiek jest okolo 50 AND DG > 0.7;

  • forma funkcyjna

WHERE DG(p.wiek, okolo 50) > 0.7;

  • forma operatorowa

WHERE(wiek jest okolo 50) > 0.7;

Gliwice 2005

warto ci rozmyte w kolumnach tabeli
Wartości rozmyte w kolumnach tabeli

tabela: zapotrzebowanie (nr_zakl, rok, zapotrzebowanie_na _papier)

Przykład

Wyszukać zakłady, które złożyły zapotrzebowanie na niewielką ilość papieru.

SELECT nr_zakl

FROM zapotrzebowanie

WHERE zapotrzebowanie_na_papier jest niewielkie;

T(x)

1

0 8 10 20

x

Gliwice 2005

agregacja w pytaniach rozmytych 1
Agregacja w pytaniach rozmytych (1)

Funkcje agregujące na danych rozmytych

(we frazie SELECT)

„Wyznacz wartość średniego zapotrzebowania na tonery.”

SELECT AVG(toner)

FROM zapotrzebowanie

WHERE rok = ‘2003’;

Gliwice 2005

agregacja w pytaniach rozmytych 2
Agregacja w pytaniach rozmytych (2)

Nakładanie warunków na funkcje agregujące w pytaniach rozmytych (fraza HAVING):

  • Agregacja wartości ostrych – nakładany warunek rozmyty
  • Agregacja wartości rozmytych – nakładany warunek ostry
  • Agregacja wartości rozmytych – nakładany warunek rozmyty
  • Rozmyte kwantyfikatory operujące na grupie wierszy

Gliwice 2005

agregacja w pytaniach rozmytych 3
Agregacja w pytaniach rozmytych (3)

Agregacja wartości ostrych – nakładany warunek rozmyty

Wyszukać te zakłady, w których jest zatrudnionych około 10 kobiet, przy czym stopień zgodności z tym warunkiem powinien być większy od 0.65.

SELECT nr_zakl

FROM pracownicy

WHERE plec = ‘K’

GROUP BY nr_zakl

HAVING (count(nr_prac) jest okolo 10) > 0.65

Gliwice 2005

agregacja w pytaniach rozmytych 4
Agregacja w pytaniach rozmytych (4)

Przykład

Wyznacz dla każdego zakładu wartość średniego zapotrzebowania na papier. Wyszukaj te zakłady, w których wartość ta przekracza 30 ryz.

SELECT nr_zakl, AVG(zapotrzebowanie_na_papier)

FROM zapotrzebowanie

GROUP BY nr_zakl

HAVING AVG(zapotrzebowanie_na_papier) > 30;

Gliwice 2005

agregacja w pytaniach rozmytych 5
Agregacja w pytaniach rozmytych (5)

Agregacja wartości rozmytych

Wyszukać te instytuty, których sumaryczne zapotrzebowanie na papier w danym roku wynosiło około 1000 ryz. W odpowiedzi powinny znaleźć się wiersze o stopniu zgodności co najmniej 0.7.

SELECT nr_inst, rok

FROM zapotrzebowanie z JOIN instytuty i

ON z.nr_inst = i.nr_inst

GROUP BY i.nr_inst, rok

HAVING (sum(papier) jest okolo 1000) >= 0.7;

Gliwice 2005

rozmyte kwantyfikatory prawie wszystkie prawie aden oko o po owa
Rozmyte kwantyfikatory (prawie wszystkie, prawie żaden, około połowa...)

Wyszukaj te zakłady, w których prawie wszyscy pracownicy to mężczyźni. W odpowiedzi powinny znaleźć się wiersze o stopniu zgodności co najmniej 0.7.

SELECT nr_zakl, prawie_wszystkie(plec = ‘M’)

FROM pracownicy

GROUP BY nr_zakl

HAVING prawie_wszystkie(plec = ‘M’) >= 0.7;

1

1

0.5

...

...

0 0.9 0.95 1 X

0 0.9 0.925 1 X

Funkcja przynależności dla wartości lingwistycznej prawie_wszystkie

Gliwice 2005

Stopień zgodności obliczonego odsetka (0.925) z wartością lingwistyczną prawie_wszystkie

grupowanie danych
Grupowanie danych
  • grupowanie rozmyte dokładnych danych
  • grupowanie rozmytych danych

Gliwice 2005

grupowanie rozmyte dok adnych danych
Grupowanie rozmyte dokładnych danych
  • grupowanie względem wartości lingwistycznych

Dane: pomiary temperatury w kolejnych dniach

Wartości lingwistyczne: bardzo zimno, zimno, ciepło, bardzo ciepło itd.

  • grupowanie według arbitralnego podziału dziedziny atrybutu

Dane: staż pracy poszczególnych pracowników

Podział dziedziny: około 5 lat, około 10 lat, około 15 lat itd.

  • grupowanie rozmyte z zastosowaniem metody hierarchicznej

Początkowo każda dana tworzy grupę

Iteracyjne łączenie dwóch najbliższych grup

  • grupowanie rozmyte według autorskiego algorytmu

Połączenie idei metody hierarchicznej z klasycznym grupowaniem bazującym na uporządkowaniu danych

Gliwice 2005

metody wyznaczania odleg o ci mi dzy grupami
Metody wyznaczania odległości między grupami
  • najmniejsza odległość pomiędzy dowolną daną grupy A i daną grupy B:
  • największa odległość pomiędzy dowolną daną grupy A i daną grupy B:
  • średnia arytmetyczna wszystkich odległości pomiędzy wszystkimi danymi grup A i B:
  • odległość pomiędzy punktem centralnym (wartością średnią) grupy A i punktem centralnym (wartością średnią) grupy B:

gdzie mA, mBsą wektorami: mA, mB.

Gliwice 2005

grupowanie rozmytych danych
Grupowanie rozmytych danych
  • Uwzględnienie w grupowaniu wszystkich parametrów opisujących wartości rozmyte
  • Grupowanie według wartości modalnych
  • Uwzględnienie wymienionych algorytmów grupowania rozmytego

Gliwice 2005

pytania zagnie d one
Pytania zagnieżdżone

Przykład pytania zagnieżdżonego:

Wyszukaj zakłady, które w roku 2002 złożyły zapotrzebowanie na liczbę ryz papieru mniej więcej równąśredniemu zużyciu wewszystkich zakładach.

Dostępne tabele:

Zapotrzebowanie (nr_zakl, rok, zapotrzebowanie_na_papier)

Zuzycie (nr_zakl, rok, zuzycie_papieru)

SELECT nr_zakl

FROM zapotrzebowanie

WHERE rok = ‘2002’ AND zapotrzebowanie_na_papier mniej wiecej

(SELECT AVG(zuzycie_papieru)

FROM zuzycie

WHERE rok = ‘2002’);

Gliwice 2005

slide36

Wartości rozmyte w pytaniach zagnieżdżonych

  • w podzapytaniu wewnętrznym
  • wpodzapytaniuzewnętrznym
  • w warunku wiążącym oba podzapytania
  • Problem zapisu warunku na wartość stopnia zgodności
  • forma dołączana do warunku rozmytego
  • forma funkcyjna
  • forma operatorowa

Gliwice 2005

pytanie zagnie d one w formie operatorowej
Pytanie zagnieżdżone w formie operatorowej

W odpowiedzi powinny znaleźć się wiersze ze stopniem zgodności co najmniej 0.7.

SELECT nr_zakl

FROM zapotrzebowanie

WHERE rok = ‘2002’

AND (zapotrzebowanie_na_papier mniej wiecej

(SELECT AVG(zuzycie_papieru)

FROM zuzycie

WHERE rok = ‘2002’))>= 0.7;

Gliwice 2005

warunki wi ce w pytaniach zagnie d onych
Warunki wiążące w pytaniach zagnieżdżonych

Porównanie wartości podzapytania zewnętrznego z wartością wyznaczaną w pytaniu wewnętrznym:

  • Dokładna - rozmyta
  • Rozmyta - dokładna
  • Rozmyta -rozmyta
  • Wartości rozmyte w warunku korelacji wiążącym pytania zagnieżdżone

Gliwice 2005

zale ne kontekstowo interpretacje warto ci rozmytych
Zależne kontekstowo interpretacje wartości rozmytych

Przykład:

Wyszukać w bazie danych uczelni wysokich studentów. Uwzględnić wiersze ze stopniem zgodności przekraczającym 0.8.

Dana tabela:

Studenci (nr_stud, nr_kier, nazwisko, plec, wzrost)

Tradycyjne podejście

SELECT nazwisko

FROM studenci

WHERE (s.wzrost jest wysoki_wzrost) > 0.8

Gliwice 2005

slide40

Podejście kontekstowe

Dane są następujące tabele:

Studenci (nr_stud, nr_kier, nazwisko, plec, wzrost),

Wzrost (plec, wysoki_wzrost),

SELECT nazwisko

FROM Studenci s JOIN Wzrostw

ON s.plec = w.plec

WHERE (s.wzrost jest w.wysoki_wzrost) > 0.8

Gliwice 2005

implementacja w szbd postgresql
Implementacja w SZBD PostgreSQL

Dlaczego SZBD PostgreSQL?

  • dostępny kod
  • możliwość tworzenia własnych typów,

funkcji i operatorów

Gliwice 2005

implementacja typu rozmytego

a dm b

0 l m n o

X

Implementacja typu rozmytego

Reprezentacja wewnętrzna: a, m, dm, b

Reprezentacja zewnętrzna: ‘l/m~n\o’

Przy wprowadzaniu danych: okolo(l, m, n, o)

Funkcje konwersji wartości rozmytych do wartości lingwistycznych

1

Gliwice 2005

testowa baza zawodnicy
Testowa baza Zawodnicy
  • 6 tabel
  • 10 000 rekordów
  • 12 złożonych testowych zapytań

Gliwice 2005

baza danych zawodnicy
Baza danych zawodnicy

Struktura bazy danych zawodnicy

Osoby (id_oso, imie, nazwisko, plec, data_ur,

wzrost, waga,data_przyjecia, funkcja),

Obecności (id_obe, id_tre, id_oso, sennosc, zmeczenie, stres, zlosc);

Serie (id_ser, id_obe, nr, suma),

Strzaly (id_strz, id_ser, nr, wynik),

Treningi (id_tre, data, godz_od, godz_do, id_oso, id_war)

Warunki (id_war, data, temperatura, wiatr, widocznosc)

Id_oso – w tabeli treningi oznacza id. trenera

Gliwice 2005

przyk adowe pytania rozmyte 1 warto ci rozmyte we frazie where
Przykładowe pytania rozmyte (1)wartości rozmyte we frazie where

„Wyszukaj nazwiska wysokich zawodników średniej wagi, którzy przy słabej widoczności choć raz trafili w dziesiątkę. W odpowiedzi powinny znaleźć się wszystkie wiersze spełniające ze stopniem zgodności większym niż 0 kryteria pytania.”

SELECT DISTINCT os.id_oso, os.imie, os.nazwisko

FROM osoby os

JOIN obecnosci ob ON os.id_oso = ob.id_oso

JOIN treningi t ON ob.id_tre = t.id_tre

JOIN warunki w ON t.id_war = w.id_war

JOIN serie s ON s.id_obe = ob.id_obe

JOIN strzaly st ON s.id_ser = st.id_ser

WHERE ((os.wzrost ~= wysoki_wzrost_mezczyzny()) &&&

(os.waga ~= srednia_waga_mezczyzny()) &&&

(w.widocznosc ~= slaba_widocznosc())) > 0.0

AND st.wynik = 10;

Gliwice 2005

przyk adowe pytania rozmyte 2 warto ci rozmyte we frazie where
Przykładowe pytania rozmyte (2)wartości rozmyte we frazie where

„Wyszukaj daty treningów wraz z liczbą zawodników, którzy przystępując do treningu byli wyspani lub wypoczęci, zaś w czasie treningów nie denerwowali się (nie odczuwali stresu). W odpowiedzi powinny znaleźć się wszystkie wiersze spełniające ze stopniem zgodności większym niż 0,5 kryteria pytania.”

Gliwice 2005

przyk adowe pytania rozmyte 3a warto ci rozmyte we frazie where i having
Przykładowe pytania rozmyte (3a)wartości rozmyte we frazie WHERE i HAVING

„Wyszukaj zawodników, którzy odbywali dwa pierwsze treningi z małym stresem i mieli na nich chociaż jedną bardzo dobrą serię. W odpowiedzi powinny się znaleźć wiersze spełniające kryteria pytania ze stopniem większym niż 0.”

„Wyszukaj warunki pogodowe panujące w czasie tych treningów, w trakcie których prawie wszyscy zawodnicy byli wyspani (stopień zgodności z warunkiem rozmytym wyspany powinien być nie mniejszy niż 0,8, a własność prawie wszystkie winna być spełniona ze stopniem zgodności nie mniejszym niż 0,7)”.

Gliwice 2005

przyk adowe pytania rozmyte 4 grupowanie wzgl dem warto ci rozmytych
Przykładowe pytania rozmyte(4)grupowanie względem wartości rozmytych

„Wyszukaj średnią liczbę punktów uzyskanych we wszystkich seriach dla poszczególnych zdefiniowanych przedziałów wartości siły wiatru.”

„Określ wpływ zmęczenia zawodników na celność ich strzałów. (Wyznacz średnią liczbę punktów uzyskaną dla poszczególnych stanów zmęczenia).”

Gliwice 2005

slide53
Przykładowe pytania rozmyte(5)wartości rozmyte w pytaniach zagnieżdżonychw podzapytaniach wewnętrznym i zewnętrznym

„Wyszukaj nazwiska zawodników, którzy w poszczególnych treningach mieli najwięcej dobrych serii. W odpowiedzi powinny znaleźć się wiersze ze stopniem zgodności przekraczającym 0.”

„Wyszukaj treningi, w których liczba bardzo_dobrych serii była większa niż dobrych. W rozwiązaniu należy uwzględnić wiersze ze stopniem zgodności przekraczającym 0.8.”

Gliwice 2005

slide54
Przykładowe pytania rozmyte(6)wartości rozmyte w pytaniach zagnieżdżonychwartości rozmyte w warunku łączącym

„Wyszukaj treningi przeprowadzone w najsłabszej widoczności, na których choć jeden zawodnik trafił dziesiątkę.”

„Wyszukaj wyniki i cechy psychomotoryczne (senność, zmęczenie, stres) uczestników treningów, w czasie których wiatr był taki jak wiatr na najmniej udanym treningu. W odpowiedzi powinny się znaleźć wiersze spełniające kryteria pytania ze stopniem zgodności przekraczającym 0.5. ”

„Wyszukaj daty tych treningów, na których odsetek wyspanych zawodników jest największy.”

Gliwice 2005

serwisy wspomagaj ce nawi zywanie kontakt w mi dzyludzkich
Serwisy wspomagające nawiązywanie kontaktów międzyludzkich

Poznawanie ciekawych osób

o podobnych zainteresowaniach

cechach charakteru czy odpowiadającym wyglądzie

Gliwice 2005

problemy56
Problemy:
  • Sprecyzowanie wymagań, jakie powinna spełniać najbardziej odpowiadająca osoba
  • Otrzymanie w odpowiedzi danych co najmniej kilku osób, spełniających

w określonym stopniu podane kryteria

Gliwice 2005

wprowadzenie do j zyka zapyta element w teorii zbior w rozmytych pozwala na
Wprowadzenie do języka zapytań elementów teorii zbiorów rozmytych pozwala na:
  • Formułowanie rozmytych, nieprecyzyjnych warunków wyszukiwania (np. średni wzrost, szczupła sylwetka itd.)
  • Określenie w odpowiedzi częściowej przynależności elementu do zdefiniowanego zbioru

Gliwice 2005

warstwa najni sza funkcje podstawowe operatory
Warstwa najniższa: funkcje podstawowe + operatory

Zaimplementowano:

  • Funkcje charakterystyczne: liniową, trójkątną, trapezową, wykładniczą oraz połączenie trapezowej i wykładniczej
  • Operatory rozmyte:
    • operator sumy OR (max spośród dwóch parametrów –
    • s-norma Zadeh’a)
    • operator iloczynu AND (min spośród dwóch parametrów - t-norma Zadeh’a)
    • operator negacji NOT –różnica wartości 1 i parametru
    • operator koncentracji CON –druga potęga wartości parametru
    • operator rozproszenia DIL –pierwiastek z wartości parametru

Gliwice 2005

w arstwa definicji cech nale cych do kryterium wyszukiwarki
Warstwa definicji cech, należących do kryterium wyszukiwarki
  • Przykładowe cechy, jakie zdefiniowano w systemie:
    • dotyczące wzrostu: is_very_short, is_short, is_medium, is_high, is_very_high
    • dotyczące wieku: is_teenage, is_young, is_mature, is_senior
    • dotyczące sylwetki: is_thin, is_normal, is_fluffy
  • Do każdej cechy przyporządkowana jest dowolna funkcja charakterystyczna, którą można odpowiednio kształtować z poziomu interfejsu użytkownika
  • Personalizacja zapytań (w zależności od cech osoby korzystającej z przeglądarki)

Gliwice 2005

zapytanie sql
Zapytanie SQL

Przykład:

zapytanie wybiera osoby wysokie, młode lub średniewiekiem, o szczupłej sylwetce, przy następujących danych osoby pytającej: wzrost 176cm, waga 65 kg:

SELECT * FROM persons

WHERE activity = true AND sex = ‘F’ AND

(is_high(176,height) OP_ANDis_thin(65,weight) op_andis_young(20,age) OP_OR is_medium(20,age))>0;

Gliwice 2005