Najważniejszym celem projektu MICHAEL jest stworzenie wielojęzycznego spisu dóbr kultury w Europie. Aby osiągnąć ten cel, dane ze spisów regionalnych i narodowych będą zbierane z użyciem standardowej platformy programowej i wspólnego modelu danych.
Platforma programowa MICHAEL składa się z dwóch modułów, które działają razem umożliwiając zarządzanie danymi i ich publikowanie:
- Moduł produkcji służy do tworzenia, modyfikowania, importowania i zarządzania rekordami, które opisują aspekty cyfrowych dóbr kultury. Wszystkie funkcje są dostępne za pomocą standardowej przeglądarki stron www. Dane są przechowywane z użyciem elastycznej bazy danych XML o dużych możliwościach, która jest oparta na modelu danych MICHAEL.
- Moduł publikacji jest intuicyjnym interfejsem dla użytkowników końcowych, którzy mogą poszukiwać cyfrowych dóbr kultury za pomocą przeglądarki stron www. Moduł ten używa do wyszukiwania i wyświetlania danych, silnika XML o dużych możliwościach, który może być dostosowany do konkretnych potrzeb współpracujących krajów i instytucji.
Narodowe instancje MICHAELA składają się z obu modułów – produkcji i publikacji
Usługi informacyjne
Obydwa moduły MICHAELA działają jako repozytoria danych, zgodne z protokołem Open Archive Initative do pobierania metadanych (OAI-PMH http://www.openarchives.org/), dzięki czemu metadane są dostępne zarówno w formacie Dublin Core jak i MICHAEL. Rekordy z dystrybuowanych źródeł mogą być zbierane w instancji MICHAEL i publikowane razem. Europejski serwis MICHAEL będzie korzystał z tych narzędzi do pobierania danych, aby zebrać razem treść opracowaną przez poszczególne instancje narodowe.
Moduł publikacji MICHAEL zawiera interfejs API oparty na podejściu REST do wyszukiwania i pozyskiwania rekordów z użyciem prostego zapytania HTTP i odpowiedzią w XML. Funkcje te pozwolą innym informacyjnym serwisom kulturalnym umieścić wyszukiwanie w MICHAEL-u na ich witrynach internetowych.
Oprogramowanie open source
Platforma MICHAEL jest oferowana na zasadach oprogramowania Open Source, jest też zbudowana na podstawie innych dobrze znanych składników Open Source. Najważniejsze składniki na których opiera sie platforma MICHAEL to:
- Apache Cocoon: infrastruktura XML do złożonych zastosowań w sieci Web. Pozwala ona na funkcjonowanie w elastycznym środowisku w którym rozdzielone są funkcje treści, logiki i stylu. Cocoon zapewnia platformie MICHAEL takie funkcje jak wydajny mechanizm wychwytujący, transformacje XSLT, środowisko skryptowe realizowane przez serwer i elastyczność tworzenia formularzy www, używanych w module produkcji do wprowadzania i modyfikowania danych.
- Apache Tomcat jest kontenerem web lub serwerem aplikacji. Implementuje on specyfikacje Java Servlet i JavaServerPages (JSP) zapewniające środowisko dla kodów Java uruchamianych we współpracy z serwerem. Tomcat zawiera własny wewnętrzny serwer HTTP
- Apache Lucene jest biblioteką do indeksowania i przeszukiwania napisaną w Javie. Używana jest ona w MICHAEL-u do indeksowania i przeszukiwania całego tekstu.
- eXist: system zarządzania bazą danych oparty na XML-u (http://sourceforge.net/projects/exist/). Baza danych może być dostępna za pomocą różnych standardów protokołów, takich jak WebDAV, XMLRPC i XMLDB bezpośrednio spod środowiska Cocoon. eXist posiada możliwość przechowywania danych wraz z zarządzaniem bazami użytkowników i prawami dostępu, a także łatwej obsługi usług XQuery i Xupdate.
- SDX: mechanizm wyszukiwawczy dla dużych zbiorów dokumentów XML (http://adnx.org/sdx/ and http://sourceforge.net/projects/sdx/), oparty na stabilnym i powszechnie używanym mechanizmie wyszukiwawczym Apache Lucene. Jest on łatwym w użyciu narzędziem, dzięki któremu można, używając interfejsu API, tworzyć usługi wyszukiwania i prezentowania dokumentów XML w środowisku Cocoon. Moduł publikacji MICHAEL bazuje na szablonach HTML, które używają interfejsu API. SDX wspiera protokoły OAI-PMH zarówno jako repozytorium jak i harwester.
- Xdepo: środowisko Cocoon do zarządzania danymi przechowywanymi w XML-owej bazie danych za pomocą formularzy www (http://sourceforge.net/projects/xdepo/). Xdepo zapewnia połączenie między Cocoon, eXist i przeglądarką www dla danych platformy produkcji MICHAEL lub tworzenie złożonych raportów. Dzięki Xdepo łatwe jest tworzenie aplikacji Web o wysokiej funkcjonalności, dostarczanych przez system zarządzania bazą danych eXist.
Dzięki użyciu technologii Java, platforma MICHAEL może być stosowana w różnorodnych systemach.
