BIULETYN Klubu Użytkowników Pakietu Mikro CDS/ISIS
Transkrypt
BIULETYN Klubu Użytkowników Pakietu Mikro CDS/ISIS
BIULETYN Klubu Użytkowników Pakietu Mikro CDS/ISIS Grudzień 2001 Instytut Informacji Naukowej, Technicznej i Ekonomicznej 04-542 Warszawa, ul. Akwarelowa 26a Tel. ( 0 22 ) 815 22 13 Fax. ( 0 22 ) 815 61 67 e-mail [email protected] WWW html://www.iinte.edu.pl Od redakcji Zacznijmy od odnotowania kolejnej okrągłej rocznicy - w grudniu 2000 roku minęło 15 lat od dnia opublikowania przez UNESCO pierwszej wersji pakietu Mikro CDS/ISIS. Z tej okazji UNESCO wydało w pierwszym kwartale br specjalną płytę CD-ROM "Opracowane przez UNESCO programy do przetwarzania informacji", na której umieszczono wszystkie wersje systemu CDS/ISIS oraz programów służących do przetwarzania baz danych tego systemu (polska edycja tej płyty została właśnie wydana przez Instytut INTE). Ta rocznica sprawiła, że część artykułów zamieszczonych w tym numerze naszego biuletynu podsumowuje dokonania ostatnich lat. Taki charakter mają artykuły Druga młodość CDS/ISIS? (już na początku artykułu autor daje twierdzącą odpowiedź na to pytanie) i Przegląd narzędzi do udostępniania baz CDS/ISIS w Internecie. Co prawda, część programów omówionych w drugim z tych artykułów była już opisywana we wcześniejszych numerach biuletynu, ale brak było całościowego przeglądu rozwiązań dostępnych w tym zakresie. Ostatni z tej grupy artykułów omawia w przystępny sposób rozmaite problemy, jakie trzeba rozwiązać podczas adaptacji baz CDS/ISIS dla DOS do środowiska Windows (i znowu wiele szczegółowych rozwiązań omawianych było wcześniej, ale brak było całościowego spojrzenia na kompleks tych zagadnień). Druga grupa artykułów dotyczy formatu XML. Podobnie jak wiele innych programów użytkowych, system CDS/ISIS dla Windows obsługuje dane zapisane w tym formacie. W wersji 1.4 występuje funkcja eksportowania danych z bazy w formacie XML, ponadto specjalny program umożliwia zaimportowanie danych XML do bazy CDS/ISIS. Na formacie XML bazuje także język IsisScript stosowany do definiowania operacji wykonywanych przez nowe wersje programu WWWISIS, który służy do przetwarzania baz danych CDS/ISIS w Internecie. W naszym biuletynie najpierw odpowiadamy na pytanie Co to jest XML? a następnie omawiamy zastosowanie tego formatu w systemie WinISIS i w programie WWWISIS. Druga młodość CDS/ISIS ? Choć pakiet Mikro CDS/ISIS ma już prawie 16 lat, co w przypadku oprogramowania jest wiekiem bardzo zaawansowanym, to ten "staruszek" odznacza się sporym wigorem. Dowodem na to jest wydana przez UNESCO na początku 2001. roku specjalna płyta CD-ROM, która zawiera rozmaite programy przeznaczone do przetwarzania baz danych CDS/ISIS dla różnych celów na różnych platformach systemowych. Ta grupa programów jest określana wspólną nazwą - rodzina CDS/ISIS. Wiele z tych programów powstało w ostatnich latach lub całkiem niedawno, co pozwala dać twierdzącą odpowiedź na pytanie zawarte w tytule tego artykułu. Na początek warto przypomnieć historię rozwoju oprogramowania CDS/ISIS. Przodkiem znanego nam wszystkim Mikro CDS/ISIS była wersja CDS/ISIS na duże komputery typu mainframe. Najważniejsze etapy rozwoju Mikro CDS/ISIS to: rok 1985 powstała wersja 1.0 dla DOS, mająca postać 6 niezależnych programów działających na tych samych bazach danych; rok 1989 opracowano wersję 2.0 dla DOS jako jednolity system programowy wyposażony w język CDS/ISIS Pascal, który umożliwia użytkownikom programowanie ich własnych funkcji systemu; rok 1993 powstała wersja 3.0 dla DOS umożliwiająca pracę w sieciach lokalnych (wtedy też opracowano wersję dla Unix) Biuletyn Klubu Użytkowników Pakietu Mikro CDS/ISIS rok 1997 rok 1998 rok 2001 udostępnienie wersji 1.0 dla Windows, która jeszcze nie mogła być jako w oderwaniu od wersji dla DOS,. opracowanie wersji 1.311 dla Windows, będącej pierwszą samodzielną wersją CDS/ISIS dla tego środowiska oficjalne udostępnienie wersji 1.4 dla Windows, umożliwiającej m.in. dołączanie do zestawu funkcji systemu własnych programów. Głównymi przedstawicielami oprogramowania z rodziny CDS/ISIS są obecnie: klasyczne, nie rozwijane już wersje CDS/ISIS dla DOS (3.08), VAX i UNIX; CDS/ISIS dla Windows (w skrócie WinISIS wersje 1.311 i 1.4); biblioteka dynamiczna ISISDLL, która umożliwia przygotowywanie w językach takich jak C++, Delphi czy Visual Basic aplikacji przetwarzających bazy danych CDS/ISIS, program WWWISIS umożliwiający udostępnianie w Internecie baz danych CDS/ISIS (w wersjach dla systemów operacyjnych Windows i Linux); JavaISIS - opracowane w języku Java narzędzie TCP/IP typu klient-serwer przeznaczone do obsługi baz danych systemu CDS/ISIS. Równolegle z rozwojem systemu CDS/ISIS były w różnych krajach tworzone i rozwijane rozmaite programy o charakterze pomocniczym i użytkowym. Wiele z tych programów zostało oficjalnie zaaprobowanych przez UNESCO. W rozwijaniu rodziny programów CDS/ISIS aktywnie uczestniczą instytucje z różnych krajów, przy czym największy wkład mają partnerzy UNESCO z Brazylii (biblioteka ISISDLL oraz program WWWISIS) i Włoch (JavaISIS). Wszystkie programy rodziny CDS/ISIS przeznaczone są do przetwarzania tekstowych baz danych. Wykorzystują one wspólne formaty i organizację bazy danych, wspólny mechanizm wyszukiwawczy oraz języki formułowania zapytań i formatowania wyświetlanych czy drukowanych informacji. Ważną cechą CDS/ISIS była i jest możliwość budowy rozszerzeń tego systemu i jego aplikacji przy wykorzystaniu tych samych struktur danych i mechanizmów ich obsługi (narzędziem do realizacji takich zadań w wersjach dla DOS i UNIX jest język CDS/ISIS Strona 2 Pascal, w środowisku Windows służy do tego celu biblioteka ISISDLL). Wśród wielu nowych elementów systemu WinISIS warto podkreślić znaczącą rozbudowę i tak już bardzo mocnego narzędzia, jakim jest w całej rodzinie programów język formatowania CDS/ISIS. Formaty interaktywne umożliwiają prezentację wyszukanych danych w postaci hipertekstu, z aktywnymi elementami sterującymi, specjalnymi okienkami do wprowadzania danych sterujących wyświetlaniem i dodatkowymi oknami informacyjnymi. W rezultacie można zaprezentować bazę danych w taki sposób, że użytkownik będzie mógł przeglądać ją w stylu do jakiego przyzwyczaił się podczas “żeglowania” w sieci Internet. W tym przypadku WinISIS będzie dynamicznie generować wyświetlane dane formatując na bieżąco rekordy bazy danych zgodnie z poleceniami użytkownika. Chociaż UNESCO w marcu 2001 oficjalnie udostępniło wersję 1.4 WinISIS, to prace nad tą wersją nie zostały jeszcze zakończone. Umożliwia ona m.in. dołączanie do zestawu funkcji systemu własnych programów współpracujących z WinISIS (ang. WinISIS plugins) przygotowanych przy użyciu osobnej biblioteki dynamicznej WISIS.DLL, która jest nie została jeszcze opracowana w całości. Dlatego też na wspomnianej na wstępie płycie CD-ROM system WinISIS został udostępniony w dwóch wersjach: 1.311 (wersja ostateczna) i 1.4 (wersja testowa). Jarosław Dobosz Problemy adaptacji baz CDS/ISIS dla DOS do środowiska Windows Bazy danych utrzymywane w pakiecie CDS/ISIS dla DOS mogą być bez konieczności specjalnych konwersji użytkowane w wersji pakietu działającej w środowisku WINDOWS – takie stwierdzenie pojawiało się od początku w dokumentacjach systemu WINISIS. I jest to prawda – podstawowe definicje rzeczywiście nie muszą być zmieniane w większości baz danych. Konieczne jest natomiast sprawdzenie poprawności działania poszczególnych elementów bazy. Należy też pamiętać, że często, dokonując tylko niewielkich modyfikacji, można w istotny sposób zwiększyć wartość informacyjną bazy danych, czyniąc ją bardziej czytelną dla użytkownika i prostszą w obsłudze dla operatorów wprowadzających dane. Grudzień 2001 Poniżej zaproponowany jest schemat postępowania podczas przystosowywania baz danych zdefiniowanych w wersjach CDS/ISIS działających w DOS do środowiska WINDOWS. Czynności ponadobowiązkowe (aczkolwiek bardzo zalecane) zostały podane kursywą. 1. Najpierw należy oczywiście uruchomić bazę danych w pakiecie WINISIS. Można w tym celu skorzystać na przykład z istniejącego wcześniej (tzn. w instalacji CDS/ISIS dla DOS) pliku baza.par. 2. Widok w oknie bazy danych od razu daje odpowiedź na najbardziej podstawowe pytanie – czy główny format wyświetlania działa poprawnie w nowym środowisku. Pamiętajmy jednak, że widoczny w oknie komunikat błędu nie oznacza, iż musimy pisać cały format od początku. Może się zdarzyć, że błąd spowodowany jest jedynie brakiem przecinków rozdzielających poszczególne polecenia formatowania (uwaga: wersja dla DOS była pod tym względem o wiele bardziej tolerancyjna !). Czasem będą to niestety bardziej złożone problemy, których rozwiązanie wymaga pewnego wysiłku i dobrej znajomości języka formatowania. Szczególną uwagę należy zwrócić na: polecenia rozmieszczenia poziomego (instrukcje Vwyr(m,n) oraz Cn i Xn), które należy zastąpić nowymi poleceniami języka formatowania (mamy tu do wyboru duży zestaw możliwości: globalne ustawianie marginesów, wprowadzanie tabulacji, wyśrodkowanie i wyrównywanie tekstów i in.) programy w języku CDS/ISIS Pascal wywoływane z formatu, które często działają w nowym środowisku niezgodnie z oczekiwaniami. Szczegóły na temat różnic w działaniu funkcji i procedur tego. języka podane są w dokumentacji pakietu. Zanim jednak zaczniemy pisać nowy program, zastanówmy się, czy nowe możliwości języka formatowania - takie jak na przykład możliwość używania zmiennych, możliwość wielokrotnego wykonywania formatu w pętli, dostęp do poszczególnych wystąpień pola powtarzalnego, dostęp do innej bazy danych - nie eliminują konieczności korzystania z programu formatującego. Gdy uzyska się już poprawnie działający format, można zatroszczyć się o estetykę i lepszą czytelność wyświetlanego tekstu, określając rodzaj czcionki, jej rozmiar kolor, styl czy korzystając z wcześniej wspomnianych możliwości rozmieszczania tekstów. Pamiętajmy też, że możemy korzystać w formatach z łączników hipertekstowych oraz wyświetlać teksty wynikowe formatu w oddzielnych oknach. 3. Czas na odpowiedź na pytanie, jak w nowym środowisku wyświetlane są polskie znaki diakrytyczne. Najczęściej – jeśli w wersji dla DOS używany był standard Latin II – ze znakami polskimi problemu nie ma. Z tekstami wprowadzanymi w standardzie Mazovii można postąpić dwojako: albo – jeśli nie przewiduje się dalszego utrzymywania bazy w środowisku DOS – należy wszystkie rekordy wyeksportować, poddać je konwersji z Mazovii na Latin II i zaimportować z powrotem do bazy; albo – jeśli z jakiegoś powodu nie chcemy dokonywać takiej konwersji, to możemy skorzystać ze specjalnych tablic konwersji MAZ_TXT.TAB i TXT_MAZ.TAB, wskazując je jako odpowiedni parametr pliku SYSPAR.PAR. Jeśli nadal polskie znaki nie są wyświetlane poprawnie, należy zdefiniować w formacie zestaw czcionek obsługujących wymagane znaki diakrytyczne - najwygodniej jest skorzystać w ramach Ustawień systemowych z opcji Początkowy składnik formatów dostępnej na karcie Wygląd – do odpowiedniej rubryki można wprowadzić polecenie takie jak na przykład fonts((roman,Times New Roman CE)(swiss,Arial CE)). 4. W kolejnym kroku należy w nowym środowisku utworzyć pełny zbiór odwrócony i obejrzeć terminy wyświetlane w oknie słownika. Jeśli znowu pojawiły się problemy ze znakami diakrytycznymi, to przede wszystkim należy sprawdzić, czy w podkatalogu wskazywanym przez parametr 2 pliku SYSPAR.PAR pakietu WINISIS (najczęściej jest to podkatalog C:\WINISIS\MENU) znajdują się tablice ISISUC.TAB i ISISAC.TAB odpowiednio przystosowane do polskiej wersji językowej (takie same, jakich używa się w środowisku DOS). Należy pamiętać, że okno słownika pakietu WINISIS daje nowe możliwości oglądania terminów wyszukiwawczych. Przede wszystkim, terminy są przy wyświetlaniu dzielone na odrębne kategorie. Warto wiedzieć, że kategoriom tym można nadawać własne nazwy (standardowo opisy kategorii są pobierane z tablicy FDT), co więcej, mogą być to nazwy wielojęzyczne (definiowane w odrębnych sekcjach językowych). Ponadto, zwiększeniu czytelności słownika służy możliwość wyświetlania terminów z pominięciem przedrostków Strona 3 Biuletyn Klubu Użytkowników Pakietu Mikro CDS/ISIS oraz wyświetlanie ograniczone do jednej, bieżąco wskazywanej kategorii. Nie zapominajmy też o możliwości podświetlania wyszukanych terminów podczas wyświetlania wyników wyszukiwania i o tabelarycznym sposobie takiego wyświetlania – w niektórych bazach okazuje się to bardzo użyteczne. 5. Przejdźmy teraz do edycji danych. Formularze wejściowe będą wyglądały inaczej niż w środowisku DOS – niemniej zdefiniowane wcześniej dla danego formularza zestaw pól i ich kolejność zostaną zachowane. Należy natomiast pamiętać, że w środowisku Windows kontrolowana jest zgodność z tablicą FDT elementów takich jak powtarzalność pola czy identyfikatory podpól. Jeśli więc w wersji dla DOS wprowadzano wiele wystąpień pola zdefiniowanego jako pole pojedyncze, albo gdy używano innych niż wskazane w FDT identyfikatorów podpól, dokonajmy niezbędnych poprawek w tablicy definicji pól. Pamiętajmy też o możliwości wyboru czcionki używanej podczas edycji – jej odpowiedni typ i rozmiar znacznie ułatwia pracę operatorom wprowadzającym dane ! W środowisku Windows można w łatwy sposób definiować pewne warunki poprawności rekordów, które będą sprawdzane podczas każdej próby zapamiętania rekordu. Wybrane pola mogą być określone jako obowiązkowe, możliwe jest badanie zawartości pól lub ich wzajemne zależności – dostępne są tu wszystkie możliwości języka formatowania pakietu. Pamiętajmy, że walidacja na poziomie edycji może eliminować wiele błędów, które są znacznie trudniejsze do wykrycia w trakcie kolejnych faz eksploatacji bazy danych. 6. Na koniec zajmijmy się wydrukami. Tu niestety nie ma możliwości adaptacji wcześniej używanych formularzy wydruku i sortowania – trzeba po prostu zdefiniować nowe formularze od początku. Co więcej, by uzyskać poprawną kolejność sortowania wydruków z uwzględnieniem znaków polskich, należy w podkatalogu bazy danych utworzyć tablicę Baza.SRT, która powinna być taka sama, jak druga połowa tablicy ISISUC.TAB (patrz punkt dotyczący polskich znaków diakrytycznych). Przegląd narzędzi do udostępniania baz CDS/ISIS w Internecie Do udostępniania w Internecie baz danych CDS/ISIS służy wiele różnych narzędzi. Ta wielość dostępnych rozwiązań sprawia, że potencjalni użytkownicy mają często kłopot z doborem właściwego narzędzia. Przy wyborze oprogramowania tego typu należy zwrócić szczególną uwagę na: dynamiczność tworzenia strony wyszukiwawczej, koszt oprogramowania i/lub aplikacji, wymagania w zakresie systemu operacyjnego (Windows, UNIX), wykorzystanie zbioru odwróconego bazy danych, oferowanie tabeli terminów wyszukiwawczych i funkcji selekcji tych terminów, stosowanie operatorów logicznych i operatorów maskowania, możliwość wprowadzania i modyfikacji danych, rodzaj i jakość dokumentacji. Poniżej przedstawiono zwarte charakterystyki najczęściej stosowanych narzędzi. Mamy nadzieję, że ten skrótowy przegląd pomoże administratorom baz danych CDS/ISIS w wyborze narzędzia do udostępniania tych baz w Internecie. EasyInt – IINTE, Warszawa, http://www.iinte.edu.pl/easyint.htm To rozwiązanie można wybrać, jeśli nie jest konieczny dynamiczny dostęp do bazy danych z wykorzystaniem mechanizmów wyszukiwawczych i zadowalające efekty da automatyczne tworzenie statycznych stron WWW umożliwiających przeglądanie odpowiednio uporządkowanych danych. Program EasyInt może być używany do prezentowania zawartości dowolnej, tekstowej bazy danych (w szczególności, bazy danych CDS/ISIS). Przetwarza on wcześniej przygotowane przez użytkownika pliki tekstowe (w systemie CDS/ISIS wystarczy w tym celu skorzystać ze standardowych mechanizmów drukowania i sortowania raportów). Wynikiem działania programu jest zestaw stron WWW prezentujący uporządkowaną według wybranych kryteriów zawartość określonej bazy danych. Zaletą programu jest duża łatwość obsługi. Oprogramowanie jest udostępniane nieodpłatnie. Anna Sadoch ISISWWW – HBI, Stuttgart, Niemcy, http://machno.hbi-stuttgart.de/ ~nienhaus Jest to proste narzędzie typu CGI (skrypt Perl i prosty program CDS/Pascal wykonywany przez Strona 4 Grudzień 2001 system Mikro CDS/ISIS w wersji DOS lub LINUX). Program nie posiada zbyt wyrafinowanych cech funkcjonalnych, ale można uznać go za najprostsze narzędzie umożliwiające dynamiczne udostępnienie baz danych Mikro CDS/ISIS do przeszukiwania w Internecie. Wyszukiwawcza strona WWW musi zawierać formularz HTML zawierający elementy o ściśle określonych nazwach, które pozwalają użytkownikowi m.in. na wybór formy wyników wyszukiwania, wprowadzenie wyrażenia wyszukiwawczego, wyświetlenie indeksu oraz przesłanie gotowego zapytania do serwera. Program ten można polecić tym użytkownikom, którzy zamierzają udostępniać bazy danych do wyszukiwania przy niewielkim nakładzie środków i w szybkim czasie. Oprogramowanie jest udostępniane nieodpłatnie. WWWISIS - BIREME, Brazylia, http://www.bireme.br/isis/I/wwwi.htm Jest to oprogramowanie typu CGI, które może być stosowane zarówno w środowisku Windows 95/98/NT jak i w środowisku UNIX (również na platformach innych niż Intel). Jest to bogato sparametryzowany program, którego działanie zapewnia pełną i stabilną funkcjonalność serwera baz danych CDS/ISIS. Parametry programu umożliwiają m.in. wykonywanie zapytań, odwołania do terminów zbioru odwróconego oraz tworzenie nowych i modyfikację istniejących rekordów. Kluczową cechą programu jest możliwość stosowania dynamicznych parametrów generowanych w trakcie sesji w oparciu o dane napływające z przeglądarki (w nowych wersjach programu parametry sterujące są zapisywane jako skrypty w formacie XML - patrz niżej artykuł nt języka IsisScript). Zastosowanie tego narzędzia jest szczególnie polecane w przypadku, gdy chodzi o utworzenie unikatowego interfejsu udostępniania baz danych z zapewnieniem dużego poziomu niezawodności i stabilności działania. Trzeba jednak pamiętać, że choć oferowana przez te narzędzie elastyczność jest bardzo pożyteczna, to jednak twórca interfejsu musi wykazać się sporymi umiejętnościami programistycznymi, a utworzenie pełnej i złożonej aplikacji może być dość pracochłonne i może wymagać dłuższej fazy testowania. Wersja 3.3 oprogramowania jest udostępniana nieodpłatnie, natomiast jednorazowa opłata za korzystanie z wersji 4 lub 5 wynosi 150 USD. JavaISIS - UNESCO, http://web.tiscali.it/javaisis JavaISIS nie wymaga współdziałania z serwerem WWW i korzystania z przeglądarki internetowej, ale oferuje własny serwer baz danych i program klienta, którego obsługa jest bardzo zbliżona do obsługi systemu WinISIS. Serwer baz danych korzysta z oprogramowania WWWISIS, dzięki czemu zapewnia bogatą funkcjonalność i stabilność działania. Użycie tego narzędzia jest zalecane w szczególności, gdy zamierzone jest szybkie i tanie udostępnienie baz danych CDS/ISIS do edycji i administrowania w sieci rozległej. Oprogramowanie jest udostępniane nieodpłatnie. WWW/ISIS – CC/ICIE, Warszawa, http://www.icie.com.pl/www.htm Wydaje się być najbardziej zaawansowanym i funkcjonalnie rozbudowanym narzędziem typu CGI dla platformy Windows. Program umożliwia wszechstronne wyszukiwanie (uproszczone i złożone) oraz przeglądanie baz danych, wyszukiwanie wspomagane tezaurusem oraz wprowadzanie i modyfikację danych przy użyciu przyjaznych formularzy (z wykorzystaniem mechanizmów selekcji danych z tabeli i kontroli poprawności danych). Program ten można polecić dla takich przypadków, gdy najważniejszym kryterium nie jest minimalizacja kosztów i istnieje potrzeba stosowania rozbudowanych interfejsów wyszukiwawczych dla wielu baz danych o różnych strukturach (z powiązaniami) lub potrzeba zdalnego wprowadzania danych. Oprogramowanie jest udostępniane odpłatnie. Wacław Struk Co to jest XML ? Znaczna część informacji których potrzebujemy, jest zapisana w postaci elektronicznej i udostępniana za pośrednictwem sieci transmisji danych, a zwłaszcza poprzez Internet. Są to artykuły naukowe i opisy książek, ale także rozkłady jazdy, programy kin, oferty handlowe, regulaminy, najnowsze wiadomości etc. Elektroniczny zapis informacji jest wszechobecny. Przy tak łatwym dostępie do danych zapisanych w postaci elektronicznej różnorodność formatów takiego zapisu danych staje się istotnym utrudnieniem w korzystaniu z tych danych. Stosowane formaty zapisu zostały utworzone z myślą o ludziach, którzy mieli korzystać z dokumentów zapisanych w tych formatach. Zupełnie inną zaś sprawą jest automatyczne czytanie i przetwarzanie takich dokumentów. Z reguły treść dokumentów - nawet tekstowych nie może być poprawnie analizowana maszynowo. Tymczasem wydaje się, że po etapach rozwoju elektronicznej komunikacji Strona 5 Biuletyn Klubu Użytkowników Pakietu Mikro CDS/ISIS człowiek - człowiek (np. e-mail) człowiek - maszyna (np. wypełnianie formularzy elektronicznych) maszyna - człowiek (np. dokumenty automatycznie generowane z baz danych) przyjdzie czas upowszechnienia automatycznej komunikacji maszyna - maszyna. Ten sposób komunikacji będzie mieć wielkie znaczenie m.in. dla rozwoju elektronicznego handlu (np. automatyczne przeszukiwanie dostępnych w sieci cenników i innych ofert). W związku z tym gwałtownie zwiększa się znaczenie formatowania dokumentów tak, by stanowiły jednocześnie: materiał nadający się do wydrukowania i prezentacji na ekranie, do wygodnego przeglądania przez człowieka, strukturalne dane nadające się do ładowania i automatycznego przetwarzania, np. w postaci baz danych. Niestety, język HTML będący najpowszechniejszą metodą zapisu dokumentów publikowanych w Internecie nie wspomaga strukturalizacji danych. Dlatego pojawił się XML czyli rozszerzalny język znaczników (ang. eXtensible Markup Language). XML jest standardem budowy dokumentów, stworzonym z myślą o ich prezentowaniu i przetwarzaniu w Internecie. Język ten został zaproponowany przez Konsorcjum W3C (ang. World Wide Web Consortium) - tę samą organizację, która koordynowała prace nad językiem HTML. Chociaż specyfikacja XML jest jeszcze niekompletna, wiele osób i instytucji oczekuje, że w najbliższych latach XML zastąpi HTML w roli narzędzia do zapisywania dokumentów dostępnych poprzez sieć (miarą znaczenia, jakie przypisuje się temu językowi może być fakt, że pierwsze dokumenty na jego temat były sygnowane wspólnie przez Microsoft Corporation i Sun Microsystems). Podstawową ideą XML jest zapisywanie dokumentów w takim formacie, który oprócz treści dokumentu zawiera strukturalną informację o znaczeniu poszczególnych jego fragmentów. Jest to realizowane poprzez wstawianie w tekście dokumentu znaczników, które nie są przeznaczone do druku, lecz opisują budowę dokumentu. Na przykład, tworząc dokument tekstowy będący listem należy zapisać go w taki sposób, aby oprócz treści przeznaczonej dla adresata zawierał on znaczniki wskazujące, który fragment tekstu określa adresata, który - autora listu, a gdzie jest opisany temat. Jeśli w treści listu są wspominane produkty, firmy albo inne obiekty istotne z punktu widzenia osoby znakującej, wszystkie takie fragmenty też powinny być specjalnie oznakowane. W odróżnieniu od języka HTML, w którym znaczniki są ściśle zdefiniowane, język XML daje użytkownikom pełną swobodę w definiowaniu znaczników. Dlatego też list zapisany w formacie XML może wyglądać np. tak: <list> <nadawca> <firma>Transportex S.A.</firma> <osoba> <imie>Adam</imie> <nazwisko>Kowalski</nazwisko> <stanowisko>handlowiec</stanowisko> </osoba> </nadawca> <odbiorca> <firma>Extras</firma> <osoba> <imie>Bronisław</imie> <nazwisko>Nowak</nazwisko> <stanowisko>Prezes</stanowisko> </osoba> </odbiorca> <data>2001-12-05</data> <temat> Dostawa śrubek <marka>BUMPEX</marka> typu <produkt>SR0207</produkt> do zakładu <firma>Mechtaronik</firma> </temat> ... </list> Odrębną kwestią jest sposób drukowania treści dokumentu. Sposób jego prezentacji może być np. opisany w odrębnym dokumencie, określającym w którym miejscu strony i jaką czcionką należy wpisać element nadawca, gdzie i jak element data itd. Można też spodziewać się różnego Strona 6 sposobu publikacji tego samego dokumentu w różnych mediach (tu widać główną różnicę w stosunku do podobnego strukturalnie do XML języka HTML: znaczniki w nim stosowane mają za zadanie głównie formatowanie dokumentu w czasie wyświetlania lub drukowania). Grudzień 2001 Idea rozbudowy dokumentu o dodatkowe informacje pochodzi z lat 80-tych i wiąże się z językiem SGML (norma ISO 8879), który jest rozbudowanym systemem do znakowania dokumentów. Głównym celem tego języka zapewnienie takiego sposobu zapisu dokumentów, by mogły one być indeksowane i po zarchiwizowaniu odnajdywane, na przykład w razie potrzeby podania wszelkich informacji dotyczących jakiegoś tematu, osoby, firmy, pojęcia itp. XML jest znacznie uproszczonym językiem znakowania opracowanym z myślą o stosowaniu tak zapisanych dokumentów w Internecie. Pomimo tego, że język XML jest w dalszym ciągu rozwijany, wiele istniejących aplikacji już dziś obsługuje dokumenty zapisane w tym formacie (np. Internet Explorer obsługuje podstawowe konstrukcje XML od ok. 2 lat) i nie ulega wątpliwości, że zastosowania tego języka będą w przyszłości upowszechniać się w szybkim tempie. Stanisław Romański Wymiana danych pomiędzy bazami CDS/ISIS, za pośrednictwem XML XML w bardzo naturalny sposób nadaje się do zapisu danych gromadzonych w bazach pakietu CDS/ISIS, gdyż - podobnie jak CDS/ISIS - opiera się na hierarchicznym modelu danych. Dokument XML ma dokładnie jeden element najwyższego poziomu (zwany elementem głównym), a każdy z elementów składowych może sam składać się z wielu elementów. W informatyce tego rodzaju rekursywne struktury danych są nazywane "drzewami", przy czym najwyższy poziom jest zwany "korzeniem", następne poziomy tworzą "gałęzie" drzewa, a elementy najprostsze (które już nie są zbudowane z innych) nazywają się "liśćmi". Charakterystyczne jest to, że każdy element (poza korzeniem) ma jednoznacznie określony element nadrzędny. Jest to dobrze określona hierarchia. W takim ujęciu, można uważać zawartość bazy danych CDS/ISIS za drzewo, którego korzeniem jest "cała baza", elementami pierwszego poziomu są rekordy bazy, elementami drugiego poziomu są pola, a elementami trzeciego - podpola. Hierarchiczne modelowanie świata jest najsilniejszym podobieństwem między CDS/ISIS a XML. Drugą bardzo istotną cechą wspólną jest oparcie się całkowicie na danych typu tekstowego. Trzecią jest elastyczność w traktowaniu budowy danych: pola mogą być opcjonalne, mogą też występować wielokrotnie. Czwartą cechą wspólną, którą wszakże trudno uznać za zaletę, są dość ograniczone możliwości kontroli poprawności wpisywanych danych. Oczywiście, są też istotne różnice między modelem danych CDS/ISIS a XML. Po pierwsze, hierarchia w bazach ISIS jest ograniczona do trzech poziomów i nie można jej rozbudować. Po drugie, CDS/ISIS limituje rozmiary: rekordów do 8000 znaków (DOS) lub 30 000 znaków (WinIsis, WWWISIS) wyróżników pól (liczby z zakresu 1-32757) nazw podpól (1-znakowe, alfanumeryczne). W praktyce jest ograniczona także liczba wystąpień pól, np. w środowisku DOS ok. 1100. Po trzecie, CDS/ISIS nie obsługuje podpól powtarzalnych. Po czwarte, w tym systemie w zasadzie nie można rozróżnić pustego wystąpienia pola od braku wystąpienia tego pola. Z drugiej strony, baza CDS/ISIS poza plikiem głównym zawiera zbiór odwrócony. Zawartość tego zbioru - choć w zasadzie wtórna względem zbioru głównego - to dane, które nie mają odpowiednika w dokumentach XML. Jak z powyższego wyliczenia widać, różnice mają przede wszystkim charakter ograniczeń modelu CDS/ISIS w stosunku do modelu XML. Wobec tego można oczekiwać, że zawartość bazy CDS/ISIS będzie mogła być kompletnie zapisana w dokumencie XML, natomiast nie każdy dokument XML będzie mógł być zapisany - bez utraty informacji - jako baza danych CDS/ISIS. Ze względu na podobieństwo modelu struktury, skonstruowanie budowy dokumentu XML odpowiadającego zawartości bazy jest bardzo naturalne: możemy posłużyć się np. znacznikami XML rekord, pole i podpole, aby odwzorować odpowiednio całe rekordy, pola i podpola. Możliwe jest też zastosowanie innych odwzorowań, zwłaszcza jeśli niektóre pola są powtarzalne. Na przykład, zawartość pól można przekształcać w atrybuty pól a nie w pola. Można też - jeśli wynika to z logicznej budowy bazy synchronicznie łączyć zawartości kilku pól powtarzalnych w zagregowane pola XML. Napisanie formatu wydruku służącego do generowania dokumentów XML jest stosunkowo proste i wymaga przede wszystkim dobrej znajomości struktury przetwarzanej bazy, co pozwoli nie pominąć żadnego ze składników rekordów. Dla ułatwienia tej czynności w wersji 1.4 programu WinISIS udostępniono funkcję Eksportowanie w formacie XML. Przed przystąpieniem do eksportowania można Strona 7 Biuletyn Klubu Użytkowników Pakietu Mikro CDS/ISIS zdefiniować rozmaite parametry podczas wykonywania tej operacji. stosowane Znacznie bardziej złożona jest czynność odwrotna do eksportowania czyli importowanie zawartości pliku XML do bazy CDS/ISIS Wynika to z potencjalnie znacznie bardziej złożonej budowy XML. Operację tę realizuje specjalny program o nazwie XML2ISIS. W działaniu tego programu można wyodrębnić 3 fazy: w fazie pierwszej jest określana budowa dokumentu źródłowego XML; czynność tę można wykonać albo odczytując zawartą w dokumencie tablicę DTD (ang. Document Type Definition czyli definicja typu dokumentu) z wnętrza dokumentu albo dokonując inwentaryzacji faktycznej zawartości dokumentu metodą jego kompletnego przeglądu; w fazie drugiej najpierw wskazuje się poziom zagłębienia znaczników XML odpowiadający rekordom bazy CDS/ISIS (należy zwrócić uwagę, że elementy poziomów wyższych nie będą uwzględniane), następnie określa się sposób odwzorowywania elementów XML na pola i podpola bazy danych (w tym celu pobiera się istniejącą tablicę FDT lub automatycznie tworzy się nową taką tablicę na podstawie struktury dokumentu XML), a na końcu przyporządkowuje się poszczególnym elementom XML pola lub podpola bazy, w których zostanie zapisana zawartość tych elementów; ostatnia faza to importowanie danych XML do bazy CDS/ISIS. Należy podkreślić, że w wyniku importowania danych z pliku XML jest zamazywana dotychczasowa zawartość bazy danych. Dlatego też należy zalecić wykorzystywanie do tego celu specjalnie przygotowanej pustej bazy danych. Stanisław Romański Język IsisScript - zastosowanie formatu XML do sterowania programem WWWISIS Czytelnicy naszego biuletynu znają rozpowszechniany przez BIREME (Centrum Informacji Medycznej dla Ameryki Łacińskiej i Regionu Karaibów) program WWWISIS służący do przetwarzania baz danych CDS/ISIS w Internecie. Nowe wersje tego programu oznaczone numerami 4 i 5 - noszą nazwę WXIS. Jest to skrót anglojęzycznej nazwy WWWISIS XML IsisScript Server, która oznacza że program Strona 8 WWWISIS jest serwerem korzystającym z języka XML IsisScript. Program WWWISIS może realizować rozmaite funkcje, takie jak przeszukiwanie wskazanej bazy danych, modyfikacja zawartości istniejącego rekordu tej bazy lub utworzenie bazy danych o podanej nazwie. Użytkownik programu określa wykonywane operacje przy pomocy poleceń sterujących działaniem programu. O ile jednak w przypadku wersji od 1 do 3.3 ma on do dyspozycji gamę kilkudziesięciu parametrów sterujących o zróżnicowanej budowie, to począwszy od wersji 4 polecenia sterujące są zapisywane przy użyciu specjalnego języka poleceń IsisScript, którego składnia jest zgodna z formatem XML. Dzięki temu zapisany w tym języku skrypt sterujący działaniem programu WWWISIS ma przejrzystą budowę, co ułatwia zarówno przygotowywanie nowych skryptów jak i modyfikowanie skryptów już istniejących. Poczynając od wersji 4 jedyny parametr sterujący tego programu to parametr IsisScript, który określa nazwę pliku zawierającego zestaw poleceń sterujących w tym języku. W języku IsisScript wszystkie polecenia sterujące są ujęte w nawiasy kątowe, przy czym wiele z nich występuje jako para: polecenie otwierające i polecenie zamykające. Najważniejsze polecenie sterujące to polecenie do (ang. wykonaj), któremu zawsze towarzyszy atrybut task (ang. zadanie). Polecenie to określa zadanie zlecone programowi WWWISIS. Możliwe jest zlecanie takich zadań jak: sekwencyjne przetwarzanie rekordów bazy danych (task=mfnrange), realizacja wyszukiwania i przetwarzanie jego wyników (task=search), przetwarzanie zbioru odwróconego (task=keyrange). Szczegółowej specyfikacji poszczególnych zadań dokonuje się przy pomocy parametrów (polecenie definiujące parametr ma postać ogólną <parm name=nazwa_parametru>wartość_parametru</p arm>), a polecenia wykonywane dla wszystkich przetwarzanych rekordów podaje się wewnątrz polecenia sterującego loop (ang. pętla). Jednym z poleceń, które często występują wewnątrz takiej pętli sterującej, jest polecenie display (ang. wyświetl) zawierające wyprowadzany tekst. W ramach tego polecenia w miejscu tekstu można użyć polecenia pft (ten skrót określa w języku angielskim format wydruku), które powoduje sformatowanie bieżącego rekordu zgodnie z podanym formatem i wyprowadzenie tekstu będącego wynikiem tej operacji. W języku IsisScript obowiązkowe jest użycie poleceń IsisScript i section (ang. sekcja), przy czym Grudzień 2001 polecenie IsisScript występuje tylko raz i zawiera jedno lub więcej poleceń sekcji. Wszystkie inne polecenia występują w ramach sekcji. <IsisScript> <section> <display><pft>'Content-type: text/html'/#</pft></display> <do task=search> <parm name=db>c:\isis\data\cds\cds</parm> <parm name=expression>water</parm> <parm name=count>10</parm> <loop> <display> <pft>'<b>MFN=',f(mfn,1,0),'</b> ',"<i>"v70+|; |"</i>: ",v24,'<br>'/</pft> </display> </loop> </do> </section> </IsisScript> Powyżej przedstawiono przykładowy skrypt sterujący działaniem programu WXIS. Skrypt ten powoduje wykonanie wyszukiwania (polecenie search) w bazie CDS (parametr db) zgodnie z zapytaniem water (parametr expression), przetworzenie 10 kolejnych wyszukanych rekordów (parametr count) poczynając od 1-szego takiego rekordu (decyduje o tym parametr from, który nie został użyty i dlatego zastosowano jego domyślną wartość 1) i dla każdego z przetwarzanych rekordów (polecenie loop) wyprowadzenie (polecenie display) jego zawartości zgodnie z formatem podanym w poleceniu pft. Użyte na początku sekcji polecenie display powoduje poprzedzenie zawartości wyprowadzanych rekordów tekstem, który wskazuje przeglądarce, że wynikiem przetwarzania jest dokument HTML Ramy tego artykułu są dalece niewystarczające dla opisania wszystkich ważnych możliwości języka IsisScript. W tym miejscu warto wszakże wspomnieć, że programiści którzy stosowali wcześniejsze wersje programu WWWISIS będą korzystać w tym języku ze znanych im pojęć rekordu środowiskowego i pól informacyjnych, które to mechanizmy umożliwiają dostęp do zmiennych CGI oraz do parametrów zawierających istotne informacje o operacjach wykonywanych przez program. Służy do tego celu polecenie field, przy użyciu którego definiuje się pola zawierające pobrane zmienne CGI lub dostarczone przez program dane informacyjne. Programista ma obecnie pełną swobodę w doborze wyróżników tych pól, dzięki czemu korzystanie z tych mechanizmów stało się o wiele łatwiejsze. zwracany był pusty plik. Obecnie w wielu przypadkach program zwraca informację umożliwiającą szybkie zlokalizowanie i poprawienie błędu (tak jest m.in. w przypadku często popełnianych błędów w składni formatów użytych w poleceniach sterujących). Dzięki temu znacznie łatwiejsze jest przygotowywanie złożonych aplikacji tego programu. Wszystkie przedstawione cechy programu WXIS sprawiają, że osobom pragnącym przygotować nowe aplikacje przetwarzające bazy danych CDS/ISIS w Internecie należy niewątpliwie zalecić korzystanie z tej wersji programu WWWISIS. Wiąże się to co prawda z koniecznością uiszczenia jednorazowej opłaty licencyjnej w wysokości 150 USD (wersja 3.3 jest w dalszym ciągu udostępniana bezpłatnie), ale jest to wyjątkowo niska cena zważywszy możliwości oprogramowania. Także użytkownicy wcześniejszych wersji programu WWWISIS powinni rozważyć przeprogramowanie swoich aplikacji na język IsisScript - poniesione w związku tym nakłady pracy mogą się szybko zwrócić, ponieważ będzie możliwe znacznie szybsze niż dotychczas dokonywanie zmian w parametrach sterujących programu. Na stronie o adresie www.bireme.br/wwwisis/I/download.ht m BIREME umożliwia pobranie programu WXIS do testowania oraz wysyłkę formularza licencyjnego, natomiast pod adresem www.bireme.br/wwwisis/I/reference/I /wxisRef.html udostępnia angielskojęzyczną dokumentację języka IsisScript w formacie HTML. Zbigniew Nowicki Istotną cechą programu WXIS jest jego znacznie większa odporność na błędy występujące w parametrach sterujących, które w starszych wersjach programu często powodowały że Strona 9 Biuletyn Klubu Użytkowników Pakietu Mikro CDS/ISIS Nowi użytkownicy W celu ułatwienia nawiązywania kontaktów między polskimi użytkownikami pakietu Mikro CDS/ISIS prezentujemy poniżej listę tych użytkowników, którzy uzyskali licencję na korzystanie z pakietu od grudnia 2000 do listopada 2001. Dane użytkowników zostały uporządkowane w kolejności otrzymywania licencji. Wiejski Ośrodek Kultury Konopnickiej 17 34-785 WYSOKA Osoba odpowiedzialna: Lidia Teper Zespół Szkół Zawodowych Kazimierza Wielkiego 11 38-340 BIECZ Osoba odpowiedzialna: Andrzej Dyląg Miejska Biblioteka Publiczna im. Marii Kozaczkowej Polna 13 33-200 DĄBROWA TARNOWSKA Osoba odpowiedzialna: Marta Stachura Szkoła Podstawowa nr 5 Lotnictwa 1 58-500 JELENIA GÓRA Osoba odpowiedzialna: Ewa Wojciechowska Miejska Biblioteka Publiczna Oświęcimska 3 32-500 CHRZANÓW Osoba odpowiedzialna: mgr Olga Nowicka Zgromadzenie Sióstr Ofiarowania Najśw. Maryi Panny św. Jana 7 31-017 KRAKÓW Osoba odpowiedzialna: S. Elekta Zofia Jamróz OBR Centrum Techniki Morskiej Dickmana 62 81-109 GDYNIA Osoba odpowiedzialna: Hanna Kicińska Gminna Biblioteka Publiczna 32-433 LUBIEŃ 34 Osoba odpowiedzialna: Danuta Skolarus XVII Liceum Ogólnokształcące Wojska Polskiego 119 70-490 SZCZECIN Osoba odpowiedzialna: Ewa Kocięcka Grupa Wydawnicza Infor Sp. z o.o. Okopowa 58/72 01-042 WARSZAWA Osoba odpowiedzialna: Anna StepnowskaKowalczyk Powiatowa i Miejska Biblioteka Publiczna w Miechowie Plac Kościuszki 7 32-200 MIECHÓW Osoba odpowiedzialna: Maria Słuszniak Wadowicka Biblioteka Publiczna Legionów 1 34-100 WADOWICE Osoba odpowiedzialna: Bożena Płonka Szkoła Podstawowa nr 1 im. M. SkłodowskiejCurie Bema 6 73-150 ŁOBEZ Osoba odpowiedzialna: Ilona Osieczko Polska Akademia Nauk Instytut Botaniki im. W. Szafera Lubicz 46 31-512 KRAKÓW Osoba odpowiedzialna: Magdalena Nowak Stowarzyszenie Misji Afrykańskich Borzęcin Duży Warszawska 826 05-083 ZABORÓW Osoba odpowiedzialna: Wojciech Lula Gimnna Biblioteka Publiczna 32-825 BORZĘCIN 562 Osoba odpowiedzialna: Elżbieta Kwaśniewska Strona 10 Instytut Podstaw Inżynierii Środowiska PAN M. Skłodowskiej-Curie 34 41-819 ZABRZE Osoba odpowiedzialna: dr inż. Jerzy Gołubowicz Wyższa Szkoła Biznesu Biblioteka Kochanowskiego 30 33-100 TARNÓW Osoba odpowiedzialna: Monika Kapka Miejska i Gminna Biblioteka Publiczna Rynek 20 38-340 BIECZ Osoba odpowiedzialna: Elżbieta Knapik MCS Michał Czartoryski Walecznych 28 m.3 03-916 WARSZAWA Osoba odpowiedzialna: Bożena Wujec Grudzień 2001 Fundacja Ośrodek Informacji Środowisk Kobiecych OŚKA Fałata 2 m. 48 02-534 WARSZAWA Osoba odpowiedzialna: Małgorzata Dymowska Gminna Biblioteka Publiczna 32-015 KŁAJ NR 652 Osoba odpowiedzialna: Lucyna Świętek I Liceum Ogólnokształcące im. E. Romera 1 Maja 41 34-700 RABKA Osoba odpowiedzialna: Beata Brycka Szkoła Podstawowa nr 95 im. Władysława Broniewskiego Wileńska 9 31-413 KRAKÓW Osoba odpowiedzialna: mgr Bogusława Kania Biblioteka Publiczna w Wierzbnie 32-104 KONIUSZA Osoba odpowiedzialna: Grażyna Witulska Gminna Biblioteka Publiczna 32-104 KONIUSZA Osoba odpowiedzialna: Anna Irzyk Miejska Biblioteka Publiczna w Gdyni Świętojańska 141/143 81-401 GDYNIA Osoba odpowiedzialna: Elżbieta Bodasiuk GRAMBET Technika Grzewcza s.c. Złotowska 68 60-189 POZNAŃ Osoba odpowiedzialna: Małgorzata MaternaGucia Biblioteka Miejska Piłsudskiego 25 34-240 JORDANÓW Osoba odpowiedzialna: Zofia Gwiazdonik Powiatowa i Miejska Biblioteka Publiczna Piłsudskiego 23 34-200 SUCHA BESKIDZKA Osoba odpowiedzialna: Adam Matuszyk Anna Sadoch Strona 11