biuletyn - Instytut Mechanizacji Budownictwa i Górnictwa Skalnego
Transkrypt
biuletyn - Instytut Mechanizacji Budownictwa i Górnictwa Skalnego
BIULETYN Klubu Uzytkowników Pakietu Mikro CDS/ISIS Listopad 2006 Zaklad Informacji Naukowej, Technicznej i Ekonomicznej Instytut Mechanizacji Budownictwa i Górnictwa Skalnego 02-673 Warszawa, ul. Racjonalizacji 6/8 Tel./Fax (+ 22 ) 847 10 82 e-mail [email protected] URL html://www.iinte.edu.pl/klub.htm Od redakcji Artykuly zawarte w tym numerze naszego biuletynu mozna podzielic na dwie grupy. Dwa pierwsze artykuly dotycza oprogramowania Greenstone. Najpierw przedstawiamy ogólna charakterystyke tego oprogramowania typu open-source sluzacego do tworzenia i udostepniania kolekcji dokumentów elektronicznych, a nastepnie omawiamy proces generowania kolekcji Greenstone na podstawie bazy danych CDS/ISIS. Dzieki temu mozna taka baze danych dolaczyc do zestawu kolekcji multimedialnych dokumentów tworzacych razem wirtualna biblioteke nazywana cyfrowa lub elektroniczna. Artykuly zawarte w drugiej czesci biuletynu omawiaja wybrane rozwiazania i mechanizmy systemu CDS/ISIS, których stosowanie czesto sprawia uzytkownikom problemy. W tych artykulach przypominamy budowe i przeznaczenie tablic systemowych, wyjasniamy dzialanie i zastosowanie tablic FST oraz omawiamy dwie uzyteczne funkcje, których stosowanie wymaga pewnej wprawy – importowanie danych z pliku kluczy sortowania oraz przeszukiwanie pelnotekstowe. Greenstone – oprogramowanie do tworzenia elektronicznych bibliotek Greenstone jest oprogramowaniem sluzacym do tworzenia i udostepniania kolekcji dokumentów multimedialnych w ramach elektronicznej biblioteki. Oprogramowanie to zostalo opracowane dla potrzeb projektu Nowozelandzka Biblioteka Elektroniczna przez pracowników Uniwersytetu Waikato (Waikato to nazwa jednego z regionów na nowozelandzkiej Wyspie Pólnocnej). Greenstone jest oprogramowaniem typu open-source, które jest dystrybuowane przy wspólpracy z UNESCO. W pazdzierniku 2006 zostala udostepniona wersja 2.71 oprogramowania. Z witryny www.greenstone.org mozna pobrac samo oprogramowanie dla platform Win- dows, Unix i Mac OS X, jego kody zródlowe, jak równiez róznorodna dokumentacje na ten temat. Greenstone obsluguje kolekcje dokumentów elektronicznych. Kolekcja Greenstone jest zestawem dokumentów dostepnych do przegladania i przeszukiwania w Internecie lub na plycie CD. Wszystkie kolekcje sa udostepniane przy uzyciu tego samego interfejsu uzytkownika. Mozliwe jest takze udostepnienie równoczesnego przeszukiwania kilku kolekcji. W sklad kolekcji moga wchodzic najrozmaitsze dokumenty elektroniczne: pliki tekstowe w takich formatach jak Word, RTF, HTML, XML czy PDF, arkusze kalkulacyjne Excel, prezentacje Powerpoint, pliki graficzne (JPG, GIF itp.), pliki dzwiekowe i video (MP3, RealMedia itp.), a takze rekordy pobrane z baz danych CDS/ISIS (udostepnianiu bazy CDS/ISIS w postaci kolekcji Greenstone jest poswiecony nastepny artykul). Greenstone korzysta z Unicode, dzieki czemu moze on przetwarzac dane równiez w takich jezykach jak chinski czy arabski. Kolekcje Greestone sa dostepne do przegladania i przeszukiwania za pomoca standardowej przegladarki internetowej. Do udostepniania tych kolekcji jest niezbedny serwer internetowy. Oprogramowanie Greenstone moze korzystac z wbudowanego serwera (pracuje wówczas w trybie Local Library – zaleca sie wybór tego trybu podczas instalacji oprogramowania) lub z serwera zewnetrznego, takiego jako Apache (praca w trybie Web Library). Do budowy i utrzymywania kolekcji sluzy program GLI czyli Greenstone Librarian Interface. W przygotowywaniu nowej kolekcji mozna wyróznic cztery etapy: 1. Gromadzenie dokumentów Na tym etapie mozna wykonac dwie czynnosci: pozyskiwanie dokumentów elektronicznych ze zródel zewnetrznych, takich jak serwery Z 39.50 (zakladka Download), oraz wskazanie Biuletyn Klubu Uzytkowników Pakietu Mikro CDS/ISIS dokumentów, które wejda w sklad kolekcji (zakladka Gather). 2. Wzbogacanie dokumentów metadanymi Wiekszosc typów dokumentów tworzacych kolekcje Greenstone jest pozbawiona elementów opisowych sluzacych do sortowania i/lub wyszukiwania. W zakladce Enrich mozna przypisac kazdemu dokumentowi zestaw opisowych metadanych, takich jak Autor, Tytul, Data publikacji, Deskryptor itp. Ten etap moze zostac pominiety w przypadku bazy danych, której zawartosc moze byc uzyta w charakterze metadanych. 3. Projektowanie sposobów przegladania i przeszukiwania dokumentów oraz prezentacji kolekcji Sposoby przegladania i przeszukiwania dokumentów definiuje sie w zakladce Design, natomiast na sposób prezentacji kolekcji maja wplyw parametry dostepne w zakladce Format. Do okreslania sposobów przegladania kolekcji stosuje sie tzw. klasyfikatory (ang. browsing classifiers), natomiast sposoby przeszukiwania kolekcji okresla sie definiujac indeksy wyszukiwawcze (ang. search indexes). Wszystkie kolekcje Greenstone sa prezentowane w jednolity sposób, ale osoba przygotowujaca kolekcje ma pewien wplyw na sposób jej prezentacji. Najwazniejszymi parametrami majacym wplyw na prezentacje kolekcji sa formaty. Greenstone korzysta ze standardowych formatów, ale projektant kolekcji moze je zmienic, modyfikujac w ten sposób np. sposób wyswietlania danego indeksu stosowanego przy przegladaniu dokumentów. Przy definiowaniu klasyfikatorów, indeksów wyszukiwawczych i formatów korzysta sie z metadanych. 4. Tworzenie kolekcji Dostepny w zakladce Create przycisk Build Collection powoduje uruchomienie procesu generacji kolekcji. Proces ten obejmuje importowanie danych, ich kompresje oraz utworzenie indeksów wraz z plikami pomocniczymi. Proces tworzenia kolekcji moze byc czasochlonny, zwlaszcza w przypadku kolekcji zlozonych z duzej liczby dokumentów. Po utworzeniu kolekcji mozna sprawdzic poprawnosc jej budowy, testujac kolekcje w przegladarce internetowej. Przycisk Preview Collection powoduje uruchomienie wbudowanego serwera i udostepnienie kolekcji w oknie standardowej przegladarki. Wszystkie kolekcje Greenstone maja standardowo taka sama oprawe graficzna i korzystaja z identycznego interfejsu uzytkownika. Operacje dostepne dla uzytkownika sa wymienione na pa- Strona 2 sku przycisków. Sa to wyszukiwanie oraz przegladanie przy uzyciu kolejnych kwalifikatorów (kolejnosc kwalifikatorów mozna ustalic w zakladce Design programu GLI). Wyniki wyszukiwania sa prezentowane w postaci skrótowych opisów dokumentów poprzedzonych odsylaczami, przy uzyciu których mozna wyswietlic pelna zawartosc dokumentu. W podobny sposób sa prezentowane przegladane rekordy, z ta róznica ze ponad wykazem skróconych opisów jest dostepny indeks sluzacy do wyboru grupy wyswietlanych dokumentów. Zbigniew Nowicki Przeksztalcenie bazy CDS/ISIS w kolekcje Greenstone W celu przetwarzania dokumentów zapisanych w specjalnych formatach oprogramowanie Greenstone korzysta z tzw. wtyczek (ang. plugin). Od pewnego czasu Greenstone jest wyposazony we wtyczke ISISPlug, która umozliwia mu przetwarzanie baz danych CDS/ISIS. Pierwszym etapem przeksztalcania bazy CDS/ISIS w kolekcje Greenstone jest, jak wiadomo z poprzedniego artykulu, wskazanie dokumentów, które maja wejsc w sklad kolekcji. W przypadku bazy CDS/ISIS niezbedne jest wskazanie plików zbioru glównego (MST i XRF) oraz tablicy FDT, z której zostanie odczytana struktura rekordów bazy danych. Warto w tym miejscu zwrócic uwage, ze Greenstone blednie odczytuje tablice FDT, w których nazwy pól zostaly zapisane przy uzyciu polskich znaków diakrytycznych. W przypadku przeksztalcania bazy CDS/ISIS w kolekcje Greenstone z natury rzeczy nie wystepuje etap wzbogacania dokumentów metadanymi, poniewaz dane zawarte w bazie sa wykorzystywane jako metadane. Elementy brakujace to dokumenty elektroniczne, których opisy – byc moze – zawiera ta baza danych. Jesli chce sie do bazy CDS/ISIS dolaczyc dokumenty elektroniczne opisywanych przez jej rekordy, wówczas dla pliku MST tej bazy nalezy wykonac tzw. eksplozje metadanych (wybierajac operacje Explode metadata database z menu dostepnego po kliknieciu prawym klawiszem myszy na ten plik w zakladce Enrich). Czynnosc ta nie jest obowiazkowa. Jesli nie zostanie ona wykonana, jako dokument elektroniczny zostanie uzyta cala zawartosc rekordu. Pierwsza czynnoscia, jaka w przypadku bazy polskojezycznej nalezy wykonac w zakladce Listopad 2006 Design, jest odpowiednie skonfigurowanie wtyczki IsisPlug. W celu wlasciwego przetwarzania liter alfabetu polskiego nalezy w rubryce Input Encoding wskazac strone kodowa zawierajaca uzyte kody polskich znaków (w wiekszosci przypadków jest to strona DOS 852). Po wykonaniu tej czynnosci mozna wygenerowac pierwsza wersje kolekcji Greenstone bazujacej na wskazanej bazie danych CDS/ISIS. Trzeba byc przygotowanym, ze dzialanie tej wersji kolekcji z pewnoscia nie bedzie satysfakcjonujace. Wynika to z faktu, ze oprogramowanie Greenstone buduje standardowe klasyfikatory i indeksy wyszukiwawcze przyjmujac zalozenie, ze zostaly zdefiniowane pewne metadane o mnemonicznych nazwach angielskich. W przypadku polskojezycznej bazy danych takie metadane na pewno nie wystapia. Oprogramowanie Greenstone wyodrebni jako metadane pola zdefiniowane w tablicy FDT wskazanej bazy danych i dlatego te metadane sa dostepne dopiero po utworzeniu pierwszej wersji kolekcji. Wyodrebnione metadane maja nazwy pokrywajace sie z nazwami pól CDS/ISIS i sa poprzedzone przedrostkami ex., np. ex.Autor (po wykonaniu operacji eksplozji metadanych stosowanym przedrostkiem jest exp.). Takiej nazwy uzywa sie w celu odwolania do pojedynczego wystapienia pola. Nazwa ta moze równiez zostac uzyta równiez z nastepujacymi przyrostkami: ^all w celu uzyskania wykazu wszystkich wystapien pola powtarzalnego, ^* w celu odwolania sie do pierwszego podpola danego pola, ^n w celu odwolania sie do wskazanego podpola danego pola, ^sub w celu odwolania sie do poszczególnych terminów wyodrebnionych w danym polu przy uzyciu nawiasów katowych lub ukosników. Zasadniczy wplyw na dzialanie kolekcji Greenstone utworzonej na podstawie bazy CDS/ISIS maja nastepujace elementy: - klasyfikatory, które okreslaja metody przegladania rekordów, - indeksy wyszukiwawcze, - zestaw formatów o ustalonych nazwach, które okreslaja sposób prezentacji kolekcji. Wszystkie te elementy sa definiowane przy uzyciu metadanych. Podstawa do utworzenia indeksu wyszukiwawczego moze byc równiez cala zawartosc bazy danych, co osiaga sie zaznaczajac pole wyboru Full text w oknie tworzenia indeksu. Podczas przegladania rekordy sa zazwyczaj wyswietlane w porzadku alfabetycznym, a dostep do nich zapewnia indeks wskazujacy pierwsza litere. Niestety Greenstone podczas sortowania nie przetwarza polskich znaków diakrytycznych. Polskie litery w ogóle nie wystepuja w indeksach, a terminy rozpoczynajace sie od tych liter sa porzadkowane na podstawie ich drugich liter. I dlatego termin rozpoczynajacy sie od slowa Slaski jest dostepny pod litera L, a termin rozpoczynajacy sie od slowa Sródmiejski – pod litera R. W praktyce przygotowanie kolekcji na podstawie bazy CDS/ISIS jest procesem wielofazowym. Na poczatku jest tworzona pierwsza wersja kolekcji, która na pewno na bedzie dzialac poprawnie. W tej fazie zostana jednak wyodrebnione metadane niezbedne do zdefiniowania klasyfikatorów, indeksów wyszukiwawczych i formatów. W kolejnych fazach nalezy korzystajac z tych metadanych zbudowac klasyfikatory i indeksy niezbedne do przegladania i przeszukiwania bazy danych, a nastepnie skupic sie na modyfikacji formatów w taki sposób, by zapewnily one pozadana prezentacje rekordów bazy danych. Kazda faze konczy generacja kolejnej wersji kolekcji, a jej poprawnosc bada sie przegladajac i przeszukujac kolekcje w oknie przegladarki internetowej. Poniewaz czas generacji kolekcji wrasta wraz z liczba rekordów bazy danych, w przypadku bazy zawierajacej wiele rekordów mozna najpierw pracowac na reprezentacyjnej próbce zawartosci tej bazy danych, a dopiero po osiagnieciu satysfakcjonujacych rezultatów wygenerowac kolekcje na podstawie zawartosci calej bazy. Kolekcja Greenstone moze byc uzytecznym sposobem statycznej prezentacji zawartosci bazy danych CDS/ISIS. Nalezy jednak podkreslic, ze jesli po wygenerowaniu kolekcji zawartosc bazy ulegnie zmianie, to zmiany te znajda odbicie w zawartosci kolekcji dopiero po jej ponownym wygenerowaniu. Z tego powodu administratorzy baz danych CDS/ISIS beda zapewne traktowac Greenstone jedynie jako pomocnicze narzedzie przy prezentacji zawartosci ich baz w Internecie. Zbigniew Nowicki Przeglad tablic systemowych CDS/ISIS Do poprawnej eksploatacji kazdej bazy CDS/ISIS oprócz plików skladowych tej bazy niezbedna jest obecnosc zbiorów systemowych. Juz w systemie CDS/ISIS dla DOS w sklad tych Strona 3 Biuletyn Klubu Uzytkowników Pakietu Mikro CDS/ISIS zbiorów wchodzily tablice ISISAC.TAB i ISISUC.TAB. systemowe Tablica ISISAC.TAB zawiera wykaz znaków alfabetycznych akceptowanych przez system. W tablicy podaje sie trzycyfrowe kody ASCII znaków alfabetycznych (AC jest skrótem angielskich slów alphabetic characters). System korzysta z tej tablicy, gdy musi sprawdzic czy dany znak jest znakiem alfabetu, a wiec na przyklad podczas indeksowania slów zgodnie z opisana w nastepnym artykule technika selekcji 4. Znaki, których kody nie sa wymienione w tablicy ISISAC, sa traktowane jako separatory slów. Podstawowym przeznaczeniem tablicy ISISUC.TAB jest okreslenie sposobu zamiany malych liter na duze, co w jezyku angielskim okresla sie terminem UpperCase conversion. Zamiana taka jest wykonywana w odniesieniu do wszystkich terminów pobieranych do zbioru odwróconego, a takze wtedy gdy w formacie korzysta sie ze specyfikacji trybu powodujacego zamiany malych liter na duze, takiej jak mhu. Tablica ISISUC jest tablica konwersji, co oznacza ze zawiera ona 256 pozycji, na których zapisano trzycyfrowe kody ASCII znaków. Kolejne pozycje odpowiadaja kolejnym kodom znaków od 0 do 255. Konwersja jest wykonywana przez zastapienie znaku o kodzie j-1 przez znak o kodzie podanym jako j-ta pozycja w tablicy. Jesli zatem w kodzie ASCII j-1reprezentuje mala litere, w tablicy ISISUC na pozycji o numerze j jest zapisany kod ASCII duzej litery odpowiadajacej tej malej literze. W przeciwnym razie (dla duzych liter i znaków specjalnych) zawartosc pozycji o numerze j jest równa j. Standardowo system WinISIS stosuje podczas sortowania porzadek leksykograficzny znaków zgodny z regulami jezyka angielskiego. Jesli w danej bazie znaki maja byc sortowane w odmiennym porzadku, nalezy dla tej bazy zdefiniowac specjalna tablice konwersji okreslajaca porzadek sortowania. Tablica ta o nazwie pokrywajacej sie z nazwa bazy i rozszerzeniu SRT musi zostac umieszczona w tym samym podkatalogu co tablica ISISUC, czyli katalogu menu, a nie – tak jak w przypadku systemu CDS/ISIS dla DOS – w katalogu danych. Tablica baza.SRT zawiera 256 pozycji, przy czym zawartosc pozycji j okresla numer porzadkowy, jaki podczas sortowania jest przypisywany znakowi o kodzie ASCII równym j (odpowiadajacym sobie malym i duzym literom nalezy przypisac te same numery porzadkowe). Strona 4 W systemie WinISIS jest to jedyny sposób wskazania innego niz standardowy porzadku sortowania znaków, bowiem ta wersja systemu nie korzysta z uzywanego w CDS/ISIS dla DOS rozszerzenia tablicy ISISUC o dodatkowe 256 pozycji, które okreslaja porzadek sortowania dla wszystkich baz danych. Dodatkowe systemowe tablice konwersji zostaly wprowadzone w systemie CDS/ISIS dla Windows. Pomimo tego, ze systemy operacyjne DOS i Windows zostaly opracowane przez firme Microsoft, w obu tych systemach sa stosowane rózne standardy kodowania znaków. Polskie znaki sa kodowane w standardzie Latin II, ale mamy wersje tego standardu dla DOS (strona kodowa 852) i dla Windows (strona kodowa 1250). W celu zapewnienia zgodnosci z systemem dla DOS system WinISIS utrzymuje bazy danych korzystajac z zestawu znaków DOS. Dane te sa przekonwertowywane do zestawu znaków Windows przed ich wyswietleniem na ekranie i konwertowane z powrotem do DOS przed ich zapisaniem na dysku. Te operacje wykorzystuja tablice konwersji znaków DOSWindows i Windows-DOS wbudowane w system Windows. W ten sposób kazda baza danych CDS/ISIS moze byc obslugiwana przy wykorzystaniu obu wersji systemu i moze byc wymieniana z innymi uzytkownikami, niezaleznie od uzywanej przez nich wersji oprogramowania. Poniewaz standardowa konwersja znaków systemu Windows nie zawsze dziala poprawnie (tak jest, gdy w systemie CDS/ISIS dla DOS stosowano inny standard kodowania polskich znaków niz Latin II, np. standard Mazowia), WinISIS umozliwia zastapienie wbudowanych tablic konwersji DOS-Windows i Windows-DOS tablicami dostosowanymi do potrzeb uzytkownika. Te tablice konwersji maja nieco odmienna budowe, poniewaz kazda z ich 256 pozycji musi byc zapisana w oddzielnym wierszu, a w j-tym wierszu zapisuje sie wartosc kodu ASCII, jaka w wyniku konwersji otrzyma znak o kodzie j. W szczególnosci, jesli w j-tym wierszu zostanie zapisana wartosc j , to konwersja nie bedzie w ogóle wykonywana (mówiac dokladnie, bedzie wykonywana konwersja, w wyniku której kody nie ulegaja zmianie). W ten sposób zostala zbudowana dostarczana z systemem WinISIS tablica konwersji TXT_TXT.TAB, która mozna uzyc w celu utrzymywania bazy CDS/ISIS zawierajacej kody systemu Windows (oczywiscie, taka baza danych nie bedzie mogla byc przetwarzana przez CDS/ISIS dla DOS). Listopad 2006 W celu zastosowania w systemie WinISIS innych niz standardowe tablic konwersji znaków, nalezy nazwy zdefiniowanych tablic konwersji wskazywac za pomoca parametrów systemowych 106 (nazwa tablicy konwersji DOS-Windows) i 107 (nazwa tablicy konwersja Windows-DOS). Domyslnie tablice te sa lokalizowane w glównym katalogu systemu. Jezeli tablice te zlokalizowano w innym katalogu, to podane w parametrach nazwy tablic nalezy poprzedzic sciezka dostepu. Niezbedne jest wskazanie obu tablic konwersji, czyli jesli podany zostal parametr 106, to musi równiez zostac podany parametr 107, i vice-versa. Michal Ostrowski Budowa i wykorzystanie tablic selekcji pól Tablice selekcji pól, znane pod skrótowa nazwa angielska tablic FST (Field Selection Table), sa jednym z najbardziej wszechstronnie wykorzystywanych mechanizmów systemu CDS/ISIS. Chociaz nazwa mówi o selekcji pól, przy uzyciu FST mozna pobrac rózne elementy danych wystepujacych we wskazanych polach. Tablica FST jest zbudowana z wierszy nazywanych selektorami. Kazdy selektor jest zbudowany z 3 czesci: identyfikatora pola, techniki selekcji, formatu wyboru danych. Dzialanie selektora polega na pobraniu z przetwarzanego rekordu danych wskazanych przy pomocy formatu wyboru, pobranie z poszczególnych wierszy tekstu wynikowego tego formatu elementów danych wskazanych przy uzyciu techniki selekcji i przypisanie tym elementom identyfikatora pola podanego w selektorze. Poniewaz narzedziem stosowanym w pierwszym etapie dzialania selektora jest format wyboru danych, to podczas pobierania danych mozna korzystac z poteznych mozliwosci jezyka formatowania CDS/ISIS. W najprostszym przypadku pobierane jest cale pole, ale mozna sklejac zawartosc kilku pól lub tez korzystajac z komendy IF pobierac z rekordu dane formatowane w sposób warunkowy, na przyklad zastepujac przechowywane w bazie kody danych ich tekstowymi odpowiednikami. W drugim etapie dzialania selektora wiersz tekstu wynikowego formatu wyboru danych jest poddawany dzialaniu techniki selekcji, która pobiera z tego tekstu elementy danych. W systemie CDS/ISIS jest dostepnych 9 technik selekcji, które pobieraja rózne elementy danych. Rodzaj pobieranych elementów wskazuje przypisany technice kod numeryczny. Podstawowe techniki selekcji sa oznaczone kodami od 0 do 4 i pobieraja odpowiednio: technika 0 wszystkie wiersze tekstu wynikowego, technika 1 wszystkie podpola lub wiersze wystepujace w tekscie wynikowym, technika 2 wszystkie frazy ujete w tekscie wynikowym w nawiasy katowe, technika 3 wszystkie frazy ujete w tekscie wynikowym w ukosniki, technika 4 wszystkie slowa wystepujace w tekscie wynikowym. Przy selekcji slów pomijane sa terminy zawarte w przypisanym przetwarzanej bazie danych zbiorze slów nieznaczacych, który ma rozszerzenie STW (od angielskiego okreslenia STopWord file). Kodami od 5 do 8 sa oznaczone techniki selekcji dzialajace tak samo jak techniki o kodach od 1 do 4, ale pobierane przez nie elementy danych sa poprzedzane wskazanymi przedrostkami. Techniki te sa wykorzystywane w opisanej nizej tablicy FST zbioru odwróconego. W ostatnim etapie dzialania selektora wszystkim pobranym elementom danych przypisuje sie podany identyfikator pola. Znaczenie tych identyfikatorów zalezy od sposobu wykorzystania tablicy FST, ale zawsze sluza one do identyfikacji pobranych danych. Jesli wiec format wyboru pobiera dane z róznych pól, to w danych wynikowych dzialania selektora nie bedzie mozliwe rozróznienie elementów pobranych z poszczególnych pól, poniewaz wszystkim tym elementom zostanie przypisany ten sam identyfikator. Sile i elastycznosc mechanizmów dostarczanych przez tablice FST mozna ocenic studiujac ich zastosowania w systemie CDS/ISIS. Najwazniejsze z nich to tworzenie zbioru odwróconego bazy danych. Dla kazdej bazy danych musi zostac zdefiniowana tablica FST o nazwie pokrywajacej sie z nazwa bazy. Zawartosc tej tablicy wskazuje sposoby pobierania terminów do zbioru odwróconego danej bazy i dlatego tablica ta jest nazywana tablica FST zbioru odwróconego. Elementy danych pobierane przy uzyciu selektorów sa poddawane automatycznej konwersji na duze litery (zgodnie z opisana w poprzednim artykule tablica systemowa ISISUC) i po obcieciu nadmiarowych znaków (standardowo dlugosc terminów jest ograniczona Strona 5 Biuletyn Klubu Uzytkowników Pakietu Mikro CDS/ISIS do 30 znaków) umieszczane w zbiorze odwróconym, gdzie wszystkie one tworza slownik wyszukiwawczy bazy danych. Identyfikatory pól wskazuja, z których pól zostaly pobrane terminy wyszukiwawcze. W szczególnosci, aby podczas wyszukiwania utozsamic z soba kilka pól, wystarczy zastosowac ten sam identyfikator pola w selektorach definiujacych sposób pobierania danych z tych pól, np : 895 0 (v10/) 895 4 mhl, v40, v50, v60 Drugi co waznosci obszar zastosowan tablic FST to sortowanie danych. Jesli podczas drukowania dane maja zostac wyprowadzone w ustalonej kolejnosci, nalezy w ramach parametrów wydruku zdefiniowac klucze sortowania. CDS/ISIS pozwala na ustalenie kluczy sortowania na 4 poziomach, a w sklad definicji kazdego klucza wchodzi selektor taki sam jak w tablicy FST. Kluczami sortowania sa elementy danych pobierane przy uzyciu selektorów, przy czym elementy te zostaja poddane dodatkowej obróbce wynikajace z innych parametrów sortowania, np. obcieciu znaków przekraczajacych podana dlugosc klucza. Identyfikatory pól sa wykorzystywane do odwolywania sie do poszczególnych kluczy sortowania podczas ustalania formatu naglówka. Ostatni, ale nie najmniej wazny obszar zastosowan tablic FST, to przeformatowanie danych. Zarówno podczas eksportowania jak i importowania danych mozna wskazac tablice FST sluzaca jako tzw. plik parametrów przeformatowania. Jesli nie wskazano takiego pliku, dane sa importowane lub eksportowane bez przeksztalcen. Wskazanie pliku parametrów przeformatowania powoduje, ze wyprowadzane lub wprowadzane dane sa przed dokonaniem eksportowania lub importowania poddawane obróbce w sposób okreslony przy uzyciu wskazanej tablicy FST. Jesli przeformatowanie danych nastepuje podczas eksportowania, to wyprowadzane sa tylko dane pobrane przy uzyciu selektorów, a uzyte w tych selektorach identyfikatory pól okreslaja wyrózniki pól w zbiorze wyjsciowym. Przeformatowanie danych na etapie ich eksportowania ma z reguly na celu dostosowanie formatu przekazywanych danych do wymagan narzuconych przez odbiorce eksportowanych danych. Z kolei, przeformatowanie na etapie importowania danych stosuje sie zazwyczaj w celu przeksztalcenia formatu otrzymanych danych w format stosowany w bazie docelowej. Tablica FST stosowana podczas importowania musi zawierac selektory odpowiadajace Strona 6 wszystkim importowanych danym, a identyfikatory pól wskazuja wyrózniki pól, w których zostana zapisane importowane dane. Tablica FST z parametrami przeformatowania moze równiez sluzyc do zmiany struktury danych przechowanych w bazie CDS/ISIS. W tablicy tej trzeba utworzyc osobne selektory dla wszystkich pól wystepujacych w bazie danych (w przeciwnym razie przeformatowanie bazy doprowadzi do utraty pól nieuwzglednionych w tej tablicy). Polom, których struktura nie ulega zmianie, trzeba przypisac identyfikatory pokrywajace sie z ich wyróznikami, stosujac takie selektory jak 20 0 (v20/) 30 0 (v30/) Zmiana struktury bazy danych polega na wyeksportowaniu danych z bazy i zaimportowaniu tych danych do tej samej bazy, przy czym podczas jednej z tych czynnosci wskazuje sie tablice FST z parametrami przeformatowania. Efektem ubocznym operacji zmiany struktury bazy danych moze byc zmiana numeracji rekordów, wynikajaca z wyeliminowania rekordów usunietych logicznie. Mozna temu zapobiec, wyprowadzajac podczas importowania numer MFN jako pole danych nie wystepujace w strukturze bazy (w tym celu w tablicy FST wskazanej podczas eksportowania nalezy uzyc taki selektor jak 999 0 mfn), a nastepnie wskazujac wyróznik tego pola jako odpowiedni parametr importowania. Waclaw Struk Importowanie danych z pliku kluczy sortowania Funkcja o tej nazwie jest dostepna w menu Uslugi systemu WinISIS (jest to odpowiednik funkcji "Zaladowanie zbioru kluczy do bazy danych", która w systemie CDS/ISIS dla DOS byla dostepna w ramach uslug sortowania i drukowania). Jest to funkcja wykorzystywana do generowania indeksów tworzonych przy uzyciu róznych elementów skladowych pola powtarzalnego o zlozonej budowie. Poprawne utworzenie takiego wielopoziomowego indeksu wymaga uzycia specjalnej pomocniczej bazy danych, której zawartosc jest tworzona wlasnie przy uzyciu omawianej funkcji, czyli na podstawie kluczy sortowania pobranych z bazy glównej. Przed omówieniem procesu tworzenia indeksu przy uzyciu pomocniczej bazy danych wyjasnimy dlaczego indeks tworzony z róznych elementów Listopad 2006 pola powtarzalnego o zlozonej budowie nie moze zostac poprawnie wygenerowany w glównej bazie danych. Przykladem takiej bazy jest osobowej baza danych, która w polu powtarzalnym 100 zawiera opisy odbytych przez dana osobe sluzbowych podrózy zagranicznych. Poszczególne elementy tego opisu sa zapisane w osobnych podpolach: V100^r V100^k V100^s Rok Kraj Numer sprawozdania W rekordzie osoby, która odbyla dwie podróze zagraniczne – do Francji w 2002 roku i do USA w 2004 roku, znajda sie dwa wystapienia pola 100, takie jak: ^r2002^kFrancja^sZWI/2002/Z/231 ^r2004^kUSA^sKBI/2004/Z/319 Natomiast w indeksie, w którym naglówkami sa rok i kraj podrózy, odwolanie do tej osoby pojawi sie czterokrotnie pod naglówkami : 2002 USA 2002 Francja 2004 USA 2004 Francja Tylko dwa z tych odwolan sa poprawne, pozostale reprezentuja podróze które w rzeczywistosci nie mialy miejsca (w 2002 roku do USA i w 2004 roku do Francji). Przyczyna utworzenia niepoprawnego indeksu jest wystepowanie wzajemnych zaleznosci logicznych miedzy kluczami sortowania poszczególnych poziomów. Z kazdego rekordu bazy danych klucze te sa pobierane w sposób niezalezny, a nastepnie dla kazdej kombinacji kluczy pochodzacej z róznych poziomów sortowania tego rekordu tworzy sie osobny rekord pliku kluczy sortowania. Postepowanie to jest prawidlowe przy zalozeniu braku logicznych zaleznosci pomiedzy kluczami sortowania poszczególnych poziomów. Tak jednak nie bylo w omówionym przykladzie (uzyte jako klucze sortowania podpola Rok i Kraj sa logicznie powiazane, co znajduje wyraz w ich pogrupowaniu w wystapienia pola powtarzalnego) i to wlasnie bylo przyczyna utworzenia blednego indeksu. Pole powtarzalne o zlozonej strukturze sklada sie - z definicji - z elementów powiazanych zaleznosciami logicznymi i dlatego rózne elementy tego pola nie moga zostac uzyte do utworzenia wielopoziomowego indeksu. Indeks taki mozna utworzyc jedynie w bazie danych, w której nie wystepuja zaleznosci logiczne miedzy kluczami sortowania, a wiec klucze nie sa pobierane z pól powtarzalnych o zlozonej strukturze. Zaleznosc logiczna mozna wyeliminowac albo przez uproszczenie struktury pola albo przez uczynienie go polem jednokrotnym. Poniewaz uproszczenie budowy pola oznacza zmiane jego zawartosci, jedynym dopuszczalnym sposobem eliminacji zaleznosci jest uczynienie tego pola polem jednokrotnym. Aby to osiagnac, nalezy posluzyc sie specjalna pomocnicza baza danych. Do bazy pomocniczej sa przenoszone tylko te pola glównej bazy danych, które beda wykorzystywane do budowy indeksu. Nosnikiem uzywanym przy przekazywaniu informacji z bazy glównej do bazy pomocniczej jest plik kluczy sortowania glównej bazy danych. Zasadnicza cecha rózniaca baze pomocnicza od bazy glównej jest brak zaleznosci logicznych wystepujacych miedzy elementami pola powtarzalnego o zlozonej budowie, co osiaga sie tworzac w bazie pomocniczej osobny rekord dla kazdego wystapienia tego pola powtarzalnego. Poniewaz do bazy pomocniczej sa przenoszone wylacznie pola bazy glównej uzyte jako klucze sortowania, jednym z kluczy musi byc to pole powtarzalne, które ma zostac zastosowane do budowy indeksu. Przy tworzeniu tego klucza nalezy zapewnic, ze jako odrebne wartosci klucza zostana pobrane poszczególne wystapienia tego pola. Jako pozostale klucze sortowania nalezy wybrac inne elementy glównej bazy danych, które maja wystapic w indeksie. W szczególnosci, jesli w indeksie odsylaczami maja byc numery rekordów, numery MFN z bazy glównej musza zostac przekazane do bazy pomocniczej (numeracja w tej bazie bedzie sie róznic od numeracji w bazie glównej). W tym celu numer MFN musi równiez zostac uzyty jako klucz sortowania. Baza pomocnicza jest tworzona tak jak inne bazy danych. Od zwyklych baz danych CDS/ISIS rózni ja to, ze bedzie zawierac co najwyzej cztery pola. Do pól tych zostana przeniesione te elementy glównej bazy danych, które wystapia w indeksie. Proces tworzenia indeksu przy uzyciu pomocniczej bazy danych sklada sie z nastepujacych etapów : 1) utworzenie pliku kluczy sortowania bazy glównej Sluzy do tego celu funkcja wydruku. Wszystkie parametry wydruku sa nieistotne z wyjatkiem umieszczonego w zakladce Uklad strony pola wyboru Tylko generacja pliku kluczy, które musi byc oznaczone. Jako klucze sortowania nalezy wskazac te elementy bazy glównej, które maja zostac przeniesione do bazy pomocniczej. Dlugosc kluczy nie decyduje o dlugosci pól w bazie pomocniczej (wskazane pola sa przenoszone w calosci), dlatego tez wartosci tych parametrów nie sa istotne. Definiujac klucze sortowania nalezy pamietac Strona 7 Biuletyn Klubu Uzytkowników Pakietu Mikro CDS/ISIS o tym, ze identyfikatory przypisane tym kluczom w odpowiednich tablicach FST zostana uzyte jako wyrózniki pól w bazie pomocniczej. Parametry sortowania inne niz opis kluczy sa nieistotne. 2) zdefiniowanie struktury bazy pomocniczej Sluzy do tego celu funkcja "Utwórz nowa baze". Liczba pól zdefiniowanych w tej bazie musi byc równa liczbie kluczy sortowania uzytych w poprzednim etapie, a wyrózniki tych pól powinny pokrywac sie z identyfikatorami uzytymi w odpowiednich tablicach FST. Poniewaz baza pomocnicza bedzie wykorzystywana jedynie do sporzadzania indeksu, takie elementy jej definicji jak formularze wejsciowe, formaty i tablice FST nie maja znaczenia dla jej eksploatacji. 3) przeniesienie danych z pliku kluczy do bazy pomocniczej Ta i nastepne czynnosci wykonuje sie w bazie pomocniczej. Nalezy wykonac funkcje "Importowanie danych z pliku kluczy sortowania". Pakiet zada podania nazwy pliku o rozszerzeniu HIT, w którym sa przechowywane klucze sortowania. Nalezy wskazac plik o nazwie pokrywajacej sie z nazwa glównej bazy danych, czyli bazy z której pobrano klucze sortowania. W wyniku wykonania tej funkcji rekordy pliku kluczy zostaja dolaczone do bazy pomocniczej. Z tego powodu przed przystapieniem do tej operacji wskazane jest usuniecie z bazy pomocniczej wszystkich rekordów, które beda zbedne przy sporzadzaniu indeksu. 4) sporzadzenie indeksu bazy pomocniczej Sluzy do tego funkcja wydruku. Niezbedne jest podanie odpowiednich parametrów wydruku i sortowania. Z uwagi na powtarzalnosc tej operacji wskazane jest zachowanie zdefiniowanych parametrów w postaci standardowego raportu. Oczywiscie drugi z wymienionych etapów jest realizowany tylko przy sporzadzaniu indeksu po raz pierwszy. Gdy ta czynnosc jest wykonywana po raz kolejny, realizowane sa jedynie etapy 1, 3 i 4. W celu sporzadzenia dla rozwazanej bazy osobowej indeksu, w którym naglówkami beda rok i kraj podrózy a odsylaczem numer MFN, mozna posluzyc sie baza pomocnicza o nastepujacej strukturze rekordów : V1 odsylacz do rekordu bazy glównej V10 opis podrózy (^rRok^kKraj^sNr spraw.) Strona 8 Dane te zostana przekazane do bazy pomocniczej za posrednictwem pliku kluczy sortowania bazy glównej. W tym celu nalezy w bazie osobowej przeprowadzic sortowanie przy uzyciu nastepujacych kluczy : 10 0 (V100/) 1 0 MFN Celem tej operacji jest utworzenie dla kazdego z rekordów tej bazy odrebnych rekordów pliku kluczy sortowania, z których kazdy bedzie zawieral tylko jedno wystapienie pola powtarzalnego Opis podrózy (V100) i odwolanie do odpowiedniego rekordu bazy osobowej (MFN). Dlatego istotne jest, by tryb wyboru pierwszego klucza sortowania zapewnial pobieranie kluczy wielokrotnych. Po przeniesieniu do bazy pomocniczej tak utworzonego zbioru kluczy sortowania bazy osobowej mozna w bazie pomocniczej sporzadzic poprawny indeks bazy glównej, stosujac nastepujace klucze sortowania : 1 0 V10^r 2 0 V10^k Wnikliwy czytelnik moze zwrócic uwage, ze zródlem opisanego problemu jest wystepowanie relacji logicznych miedzy kluczami sortowania pobieranymi z pola powtarzalnego o zlozonej budowie, a rozwiazanie polega na wyeliminowaniu powtarzalnosci tego pola poprzez odpowiednie przeniesienie danych do bazy pomocniczej. Mozna zatem wyeliminowac ten problem tak projektujac baze danych, by zlozone pole, którego elementy sluza do tworzenia indeksu (w omawianej bazie pole Opis podrózy), nie bylo polem powtarzalnym. W przypadku naszej bazy osobowej opisy podrózy mozna gromadzic w osobnej bazie podrózy, zawierajacej w rekordzie opis podrózy wraz z odsylaczem do tego rekordu bazy osobowej, który przechowuje dane osoby podrózujacej. Struktura takiej bazy podrózy w praktyce pokrywa sie ze struktura opisanej wyzej bazy pomocniczej. Zaleta tego rozwiazania jest brak duplikacji danych, natomiast wada – koniecznosc recznego wprowadzania odsylaczy. Takie wprowadzanie odsylaczy jest czynnoscia wymagajaca szczególnej uwagi, bowiem kazda omylka w odsylaczu oznacza trudny do wykrycia blad w zawartosci danych. Tej uciazliwosci jest pozbawione opisane wyzej rozwiazanie, w którym zawartosc bazy pomocniczej – wraz z odsylaczami do odpowiednich rekordów glównej bazy danych – tworzy sie automatycznie przy uzyciu funkcji Importowanie danych z pliku kluczy sortowania. Zbigniew Nowicki Listopad 2006 Mozliwosci wyszukiwania pelnotekstowego Podstawowym i powszechnie wykorzystywanym sposobem wyszukiwania w systemie CDS/ISIS jest wyszukiwanie przy uzyciu slownika wyszukiwawczego. Operandami pytania wyszukiwawczego moga byc tylko terminy zbioru odwróconego, a system wspomaga uzytkownika przy pobieraniu tych terminów ze slownika i laczeniu ich operatorami wyszukiwawczymi. Zaleta tego sposobu wyszukiwania jest olbrzymia szybkosc, natomiast glówna wada jest ograniczenie zakresu przeszukiwanych pól rekordów. Do tego przeszukiwania dostepne sa tylko te pola, których zawartosc zostala wskazana w selektorach tablicy FST zbioru odwróconego. Dodatkowo zasieg przeszukiwania moze zostac ograniczony za pomoca uzytych w tych selektorach technik selekcji. Przykladowo, techniki selekcji 2 i 3 powoduja pobranie do zbioru odwróconego tylko wyróznionych fraz wystepujacych we wskazanym polu. Tych ograniczen jest pozbawione tzw. wyszukiwanie pelnotekstowe, które umozliwia przeszukiwanie dowolnych pól rekordów. Tak jak sie czesto zdarza, ta korzysc zostala osiagnieta okreslonym kosztem, którym jest w tym przypadku znacznie mniejsza szybkosc przeszukiwania. Wyszukiwanie pelnotekstowe jest bowiem realizowane metoda sekwencyjnego przegladu bazy danych, co sprawia ze czas przeszukiwania jest wprost proporcjonalny do liczby rekordów bazy danych. Przy wyszukiwaniu pelnotekstowym kryterium wyszukiwawcze jest pytaniem swobodnym, które formuluje sie za pomoca wyrazenia logicznego: ? wyrazenie_ logiczne To wyrazenie zazwyczaj odwoluje sie jedynie do wskazanych pól rekordu, przy czym wszystkie takie pola musza byc podane w sposób jawny. Operandami wyrazen logicznych stosowanych w pytaniach swobodnych sa zazwyczaj relacje leksykograficzne badajace logiczne zaleznosci miedzy argumentami lancuchowymi. Relacja ma nastepujaca ogólna postac: arg_ls op_rel arg_ps gdzie arg_ls i arg_ps sa wyrazeniami albo numerycznymi albo lancuchowymi uzywanymi odpowiednio jako lewo- i prawostronny argument relacji, a op_rel oznacza operator relacyjny. Dozwolone sa nastepujace operatory relacyjne: = równe > wieksze niz <> nierówne >= wieksze lub < mniejsze niz równe <= mniejsze lub : zawiera sie równe Wszystkich operatorów relacyjnych, z wyjatkiem dwukropka, mozna uzywac w polaczeniu z operandami jednego lub drugiego typu. Operatory te reprezentuja relacje numeryczne, gdy sa zastosowane do wyrazen numerycznych, lub relacje leksykograficzne, gdy uzyto je w odniesieniu do wyrazen lancuchowych. Nalezy podkreslic, ze dwa lancuchy moga byc równe tylko wtedy, gdy maja te sama dlugosc oraz ze porzadek leksykograficzny znaków dokladnie odpowiada kolejnosci znaków w tablicy kodów ASCII (oznacza to, ze A jest mniejsze niz a itd.). Jedna z najczesciej stosowanych relacji leksykograficznych jest relacja zawierania, która jest spelniona, gdy lancuch stojacy po lewej stronie zawiera podciag równy argumentowi stojacemu po prawej stronie. W ten sposób mozna np. wyszukac wszystkie rekordy, które w polu o wyrózniku 100 zawieraja ciag znaków Torun: ? v100:'Torun' Niestety, w trakcie porównania nie odróznia sie liter malych od duzych, a poszukiwany ciag znaków nie musi byc zapisany jako osobne slowo, dlatego tez zostana odszukane równiez rekordy zawierajace w polu 100 takie frazy jak torunskie pierniki. Wada takiego badania relacji zawierania jest ograniczenie zasiegu przeszukiwania do wskazanych pól rekordów, a dodatkowym utrudnieniem koniecznosc specyfikacji pól za pomoca wyrózników. Czesto nie jest istotne w którym polu wystepuje wskazany ciag znaków, tak jak np. w poleceniu odnalezienia wszystkich rekordów zawierajacych ciag znaków Torun. W systemie WinISIS zadanie to wykonuje sie przy uzyciu pytania swobodnego: ? v0:'Torun' gdzie specyfikacja v0 oznacza dowolne pole rekordu. W ten sposób mozna odszukac wiekszosc dokumentów dotyczacych Torunia. Fleksja jezyka polskiego sprawia wszakze, ze pominiete zostana dokumenty zatytulowane Migawki z Torunia czy Piesn o Toruniu. Warto w tym miejscu podkreslic, ze system WinISIS przed przystapieniem do realizacji pytania swobodnego nie bada jego poprawnosci. Rezultatem wyszukiwania na podstawie pytania zawierajacego bledy skladniowe jest zawsze Strona 9 Biuletyn Klubu Uzytkowników Pakietu Mikro CDS/ISIS zbiór pusty, ale poniewaz brak jest sygnalizacji tych bledów uzytkownik moze nie zorientowac sie, ze np. uzyl niewlasciwego znaku jako ogranicznika literalu bezwarunkowego ? v0:'Torun" W celu wyeliminowania tego rodzaju omylek zamiast zadawac takie typowe pytanie w oknie wyszukiwania dla ekspertów mozna do biezacego formatu wyswietlania dodac komende hipertekstowa link(('Szukaj'),`PROMPT SEARCH ? v0:'$$'`) które powoduje wykonanie pytania swobodnego ? v0:'xxx' gdzie xxx jest ciagiem znaków wprowadzonych z klawiatury po kliknieciu odsylacza Szukaj ?. System WinISIS wyswietla wyniki takiego wyszukiwania zawsze w trybie tabelarycznym. Poniewaz znaki apostrofu sluza jako ograniczniki poszukiwanego terminu, taka komende SEARCH zapisuje sie korzystajac z ograniczników ` (znak ten zwykle wystepuje na tym klawiszu co znak ~; mozna takze wprowadzic go wciskajac klawisz Alt i wpisujac 096 z klawiatury numerycznej). Jak wspomnielismy wczesniej, operator relacyjny : oznacza zadanie wystapienia podciagu i z tego wzgledu aby wyszukac slowo, a nie podciag znaków, nalezy dokonac specjalnego zabiegu. W celu unikniecia odszukania slów takich jak wybieg, czy zbieg, gdy poszukuje sie pola zawierajacego slowo bieg, mozna uzyc nastepujacego pytania ? V30:' bieg' Jednakze przy jego uzyciu nie zostana wyszukane rekordy, w których poszukiwane slowo wystepuje na samym poczatku pola V30. Aby odszukac równiez takie rekordy, nalezy za pomoca funkcji S umiescic spacje przed zawartoscia pola analizowanego przy uzyciu pytania swobodnego: ? S(" "V30):' bieg' Biorac pod uwage, ze poszukiwane slowo moze byc w zawartosci pola ujete w nawiasy < > lub / /, nalezy zastosowac odpowiednia specyfikacje trybu, by usunac te nawiasy z analizowanej zawartosci pola ? S(MHL," "V30):' bieg' Poniewaz badanie relacji zawierania sprowadza sie do wyszukiwania ciagów znaków, dlatego tez w wyniku przedstawionych pytan zostana równiez wyszukane rekordy zawierajace slowa takie jak biegly. Poszukiwany wzorzec znakowy mozna co prawda wydluzyc o spacje, ale nie uwzgledni to takich wystapien poszukiwanego slowa, po którym bezposrednio wystepuje znak przestankowy. Aby rozwiazac ten problem, nalezy podac tyle wzorców znakowych ile dopuszcza Strona 10 sie znaków przestankowych. Jesli, na przyklad, jedynymi dozwolonymi znakami przestankowymi sa kropka i przecinek, mozna posluzyc sie nastepujacym pytaniem swobodnym: ? S(MDL," "V30):' bieg ' or S(MDL," "V30):' bieg.' or S(MDL," "V30):' bieg,' W przypadku duzych baz danych sekwencyjne przeszukanie zawartosci wszystkich rekordów moze byc operacja czasochlonna. W celu przyspieszenia wyszukiwania pelnotekstowego w systemie WinISIS mozliwe jest ograniczenie zakresu przeszukiwania albo do wyniku wczesniejszego wyszukiwania ? #n wyrazenie_logiczne albo do rekordów o podanym zakresie numerów MFN ? *m,n wyrazenie_ logiczne W typowym przypadku uzytkownik najpierw zadaje pytanie wyszukiwawcze odnoszace sie do terminów zbioru odwróconego, a nastepnie to zapytanie uszczególowia za pomoca pytania swobodnego. Jednakze zapytania obydwu typów moga byc formulowane w dowolnej kolejnosci, a kazde z nich moze odwolywac sie do dowolnego wczesniejszego pytania za pomoca jego numeru. Waclaw Struk Nowi uzytkownicy W celu ulatwienia nawiazywania kontaktów miedzy polskimi uzytkownikami pakietu Mikro CDS/ISIS prezentujemy ponizej liste tych uzytkowników, którzy uzyskali licencje na korzystanie z pakietu od listopada 2005 do pazdziernika 2006. Dane uzytkowników zostaly uporzadkowane w kolejnosci otrzymywania licencji. Estera Rzenno-Karterla ul. Sosnowa 12 32-660 Gorzów Uniwersytet Rzeszowski Biblioteka ul. Cegielniana 12 35-959 Rzeszów Osoba odpowiedzialna: Ewa Gotkowska Stowarzyszenie Pracownia Dzialan Twórczych ul. Botaniczna 2 60-586 Poznan Osoba odpowiedzialna: Agnieszka Teresinska Komitet Upowszechniania Karmienia Piersia ul. Kasprzaka 17 a 01-211 Warszawa Listopad 2006 Osoba odpowiedzialna: Grzegorz Swieckowski Publiczna Szkola Podstawowa w Rajbrocie 32-725 Rajbrot Osoba odpowiedzialna: Maria Plewa Piotr Wendorff ul. Mostowa 4 m.1 83-110 Tczew Wyzsza Szkola Zawodowa Kadry dla Europy Biblioteka ul. Mansfelda 4 60-865 Poznan Osoba odpowiedzialna: Piotr Marcinkowski Stanislaw Stachurek ul. Toporowskiego 73/101 25-549 Kielce Bogdan Skarzynski Gasiorowo 70 07-232 Zareby Koscielne H. Cegielski Centrum Badawczo-Rozwojowe Sp. z o.o. ul. 28 Czerwca 1956 roku nr 223/229 61-485 Poznan Osoba odpowiedzialna: mgr inz. Iwona Wojtkowiak Strona 11