Tvorba AIP balíčka
Archívny modul
O generovanie AIP balíčkov sa vo FF stará Archívny modul. Tento modul definuje 7 repozitárov, nad ktorými sú spúšťané jednotlivé služby. Každá služba vykoná s položkou repozitára predpísanú akciu a presunie položku do ďalšieho repozitára. Procesu transformácie vstupných dokumentov do AIP balíčka sa hovorí Ingest proces, ktorý je popísaný v nasledujúcej podkapitole.
Ingest proces
Ingest proces možno graficky znázorniť nasledujúcim obrázkom. Skladá sa zo siedmich repozitárov a piatich služieb. Tieto služby bežia pod jednou FF službou (am_ingest).
Služba Získania SIP
Jej úlohou je získanie dokumentov z vonkajšieho zdroja. Vonkajší zdroj môže byť webová služba, Priečinok na disku, 602XML formulár atď. Služba získa dokument, zabalí ho do interného SIP balíčka a uloží ho do repozitára „Karanténa“.
Služba Antivírusová kontrola
Vstupom služby je repozitár „Karanténa“. Služba vykoná antivírusovú kontrolu nad prílohami SIP balíčka a v prípade detekcie vírusu odsunie balíček do repozitára „Vylúčených SIP balíčkov“. V opačnom prípade presunie SIP do repozitára „Kontrola podpisov“.
Služba Kontrola podpisov SIP
Vstupom je repozitár „Kontrola podpisov“. Služba preverí platnosť podpisu SIP balíčka. Ak je podpis v poriadku, je SIP presunutý do repozitára „Generovanie AIP“. V opačnom prípade je SIP presunutý do repozitára „Vylúčených SIP“.
Služba Generovanie AIP
Vstupom je repozitár „Generovanie AIP“. Služba vygeneruje základnú štruktúru AIP balíčka a uloží ho do repozitára „Konverzia príloh“. Ak sa službe nepodarí transformovať SIP balíček na AIP balíček, je SIP balíček presunutý do repozitára „Vylúčených SIP“.
Služba Finalizácie AIP
V repozitári „Konverzia príloh“ leží AIP balíček, kým konverzná služba neskonvertuje všetky prílohy patriace k tomuto balíku. Potom dôjde k finalizácii AIP balíčka a jeho trvalé uloženie v archíve. Od tejto chvíle je balíček viditeľný pre službu dlhodobej údržby dokumentov a môže k nej byť registrovaný.
Toto je len jeden z možných scenárov generovania AIP balíčka. Jediný povinný repozitár, v ktorom musí skončiť AIP balíček, je repozitár „Trvalé uloženie“.
Predvolená implementácia procesu vyťahovanie príloh formulárov
Vo FormFlow je predvolená implementácia Ingest procesu. Vstupom je archivovaný formulár, u ktorého už došlo k vytiahnutiu príloh pomocou udat služby. Služba udat pre vyťahovanie príloh pracuje len s dátovou vetou uloženou v RECEIVED_DATA_UFRM či RECEIVED_XSLFO_UFRM. Nespúšťa žiadne pluginy. Napr. teda nezareaguje na zmeny, ktoré vykoná form_download_plugin. S týmto treba počítať a modifikovať prílohy a ich atribúty ako ltv_accept_udat pred uložením dátovej vety do databázy. Vytvorené AIP balíčky budú pripojené ako prílohy formulárov, z ktorých vznikli.
Štruktúra AIP balíčka
AIP balík je v archíve uložený ako ASIC-e kontajner. Tento kontajner má nasledovnú štruktúru.
/
├── META-INF/ ← adresár s informáciami o balíčku
│ ├── mets.xml ← nepodpísané metadáta k súborom
│ ├── signatures.xml ← súbor s externými podpismi
│ └── transaction.log ← záznam, čo sa s balíčkom robilo
├── contents.xml ← METS kontajner
├── DOCUMENT_ID.pdf ← príloha x
├── DOCUMENT_ID.doc ← príloha y
├── DOCUMENT_ID.txt ← príloha z
└── mimetype
META-INF/mets.xml & contents.xml
Súbor META-INF/mets.xml obsahuje nepodpísané metadáta. Tieto metadáta sa v priebehu života balíčku môžu meniť. Ak dôjde k úpravám metadát v archivovanom formulári stavba alebo dokument, prejaví sa zmena aj v tomto súbore.
Súbor contents.xml obsahuje odkazy na prílohy. Ďalej obsahuje metadáta stavby a jednotlivých príloh v dobe vzniku balíčku. Táto časť je podpísaná a nie je ju teda možné ďalej upravovať.
signatures.xml
Súbor signatures.xml obsahuje externé podpisy súborov, ležiace v roote balíčku. V tomto prípade obsahuje súbor signatures.xml externé podpisy súborov contents.xml, DOCUMENT_ID.pdf, DOCUMENT_ID.doc, DOCUMENT_ID.txt.
Popis fungovania AIP balíčka
Nastavenie šablóny formulára
Aby bolo možné vytvárať AIP balíčky, je nutné v šablóne formulára nastaviť, že sa majú generovať z príloh archívnych formulárov.
Vytvorenie AIP balíčka
Služba AIP service vezme daný formulár a vytvorí k nemu obálku pomocou funkcie Create AIP repository (AM_SIPCreateAIPRepository).
Výsledok tejto operácie sa prejaví v tabuľke XG_AMRR, kde v stĺpci ID_AMRE_AMRR nájdete ID zodpovedajúce vytvoreniu AIP repository (AM_SIPCreateAIPRepository).
Riešenie chýb pri vytváraní
Ak v tejto fáze nastane chyba, formulár bude mať v tabuľke XG_AMRR hodnotu ID_UFRM_AMRR, ktorá zodpovedá ID_UFRM v XG_UFRM.
V poli ID_AMRE bude nastavené ID SIP exclude repository (AM_SIPExcludeRepository).
Opätovné zaradenie formulára do procesu
Ak nastane vyššie uvedená situácia, je vhodné počkať, až hodnota NUMBER_OF_READ_AMRR dosiahne 5.
Ak má formulár v ID_AMRE_AMRR hodnotu zodpovedajúcu SIP exclude repository (AM_SIPExcludeRepository), je možné ho znovu zaradiť do procesu tým, že sa zmaže príslušný záznam v tabuľke XG_AMRR podľa ID_AMRR.
Kontrola príloh a konverzie
-
V ďalšej fáze sa kontroluje, či má daný AIP balíček všetky prílohy, či tieto prílohy existujú a či daný formulár nebol medzitým zmazaný.
-
Po skončení tejto fázy je v tabuľke XG_AMRR pre daný formulár hodnota ID_AMRE_AMRR nastavená na ID pre AIP normalization files repository (AM_AM_AIPNormalizationFilesRepository).
-
Súčasne sa kontroluje, či boli všetky prílohy úspešne skonvertované pomocou služby LTA. Je potrebné zabezpečiť, aby služba LTA bežala.
Uloženie do permanentného úložiska – dokončený AIP
Pokiaľ všetko prebehne v poriadku, bude mať daný AIP balíček v tabuľke XG_AMRR hodnotu ID_AMRE_AMRR = ID pre Permanent repository for AIP packages (AM_AIPPermanentRepository).
Postup při chybe konverzie
-
Ak nastane chyba, bude v ID_AMRE_AMRR nastavené ID pre AIP exclude repository (AM_AIPExcludeRepository).
-
Je potrebné počkať, až bude NUMBER_OF_READ_AMRR na hodnote 5.
-
Ak táto situácia nastane, odporúča sa skontrolovať tabuľku XG_CONV a zistiť, ktoré prílohy sa neskonvertovali, aké majú chybové hlásenie PDFA_ERROR_MESSAGE_CONV a prípadne kód výstupu PDFA_RESULT_CODE_CONV.
Stav konverzie dokumentu (AIP balíček)
- CONVERSION_OK = 2000
-
Konverzia prebehla úspešne.
- CONVERSION_FAILED_TEMP = 2001
-
Konverzia dočasne zlyhala (napr. kvôli dočasnému problému, možno skúsiť znova).
- CONVERSION_FAILED = 2002
-
Konverzia trvalo zlyhala (nie je možné ju dokončiť).
- CONVERSION_NOT_NEED = 2003
-
Konverzia nie je potrebná (dokument je už v správnom formáte).
- CORRUPTED_DOCUMENT = 2004
-
Dokument je poškodený a nie je možné ho spracovať.
- CONVERSION_HAS_NOT_YET_BEEN_MADE = 2005
-
Konverzia zatiaľ nebola vykonaná.
- CONVERSION_IN_PROCESS = 2006
-
Konverzia práve prebieha.
- PREPARE_FOR_INPLACE_CONVERSION = 3000
-
Príprava na konverziu priamo na mieste (in-place).

