概要 Alfrescoのファイルに対して、Archivematicaを使ってAIPを作成する方法の一例です。
以下が成果物のデモ動画です。
https://youtu.be/7WCO7JoMnWc
システム構成 今回は以下のようなシステム構成とします。複数のクラウドサービスを利用していることに特に意味はありません。
Alfrescoは、以下の記事を参考に、Azure上に構築したものを使用します。
Archivematicaとオブジェクトストレージはmdx.jpを使用し、分析環境はGakuNin RDMを使用します。
オブジェクトストレージへのファイルアップロード Alfrescoからファイルをダウンロード Alfrescoからのファイルダウンロードにあたっては、REST APIを使用します。
https://docs.alfresco.com/content-services/6.0/develop/rest-api-guide/
OpenAPIに準拠しており、以下などを参考にしました。
https://api-explorer.alfresco.com/api-explorer/
例えば以下により、Alfrescoのユーザ名とパスワード、およびホスト名を環境変数から読み込み、メタデータの取得やコンテンツのダウンロードを行うことができました。
# f i i f # c r m m r l % o p p o % a % m o o m % s r r s d d d d d t t b e e e e a A f f f f t o r s / p n e s e e n i " A " s # l # s s s s } # c e s } s } _ " A " i g " A R " u s t e e g " A " u s } r b o w s } b n q 6 b C _ " r " e o e e e e ) r n e e ) d " r " f e " r e " r e r x x e " r " r e ) e i s i e ) s u 4 s l i " g " l . a 環 l l l l B e c l l e " g " t " g t " l l y c c t " g " l l s n . t l / e / i n A s f e d 境 f f f f a d o f f b デ s s _ ノ s u f : e e _ ノ s f p a m h f 0 i s i 0 e i l : v . n _ 変 . . . . " " " s e d . ' ' . " " u バ : m d e p i n ー : n r d = . r r r p s r p s r n ー : n o = . " " o r a f . " " 0 m t m 0 n t f e v v d 数 u p t _ u p t i n e h a a _ a a g ッ e a l r f o ド o n i _ e e e t e e t e e o ド o u _ u o n y k o i _ s p _ p s p _ t _ r r e の o の s a a d s a a c t d e c u d c u ( グ s t f i d I d s c f d s s t l t l t d の d t f d r u s _ e p l d i a c o o c : _ e b r 読 t 取 e s r e e s r 認 i _ a c t e c t s 情 s a . n d e D e : t " e p p u r f u r f u e コ e p " e l t e d d e e e z t o r r o ( s o b み e 得 r s g b r s g 証 a c d e h b e h e 報 a v t a f s で _ : { b o u h t o r e . r e . r s ン _ u { b " p a i n . b e h r t t r s c s o 込 n w e u " w e の l r e p o u p o l を g ( e ( t o _ ノ i s u n r e i n n q _ n q _ n _ テ i t s u : u = t r ( w u " " e e e o e s み v = o t g : o t ヘ s e r t r g t r f 出 e d r f a r n ー d ノ e g s l a m s u d u d n ン d _ e g t a s o r g : : . l b . l e ( r _ ( r _ ッ d s ' i ( " i , 力 i b " : o ド ー l ( e , d e e r e e N e e N o ツ p l ( u _ r ( u i ( i o 6 i f A ( o o d h " s d h ダ = e : z " : z す ( c o 🔍 k p d 情 ( ド f " e o . e s b o s b o d を ( a f " r p e = o t t " l o p a 4 p , P b = v s o 環 e " o ー n = a ヘ a m る s t s e r e 報 s 情 . A = r u r s t u n t u n e 取 s t . A l a q s p e フ e u y d e y I o e . = s 境 l : s を f t ' t ッ s t e t , e { y i I を t 報 t P s t a p s g e s g e I 得 t h t P , t u r . u ( ァ n t n _ n n v o v r g t 変 f t 作 " i { a i ダ e i s r : m , n d 取 r a I r = = i o . ( . ( d す r a I h e e p t b イ ( p b d c b e C l e r e o 数 . " " 成 { a p o ー l o s ) o e t ( 得 ) r リ e s f s n e " e " _ る ) ( r リ " s s a _ i ル b u o o r l ) r i t s = の u * : s l p n の f n a : p s v ( s す : g ク q e l e s x エ x エ c : s g ク : t p t p n 保 i t 3 t d 4 b i : b d e . 設 s " e s l ' 設 . " g t s a f e る e エ u l o _ e c ラ c ラ o t e エ s o h a a 存 n _ e e o e o e n g o 定 e s l i : 定 h : e メ i a l " l ノ t ス e f a f . e ー e ー n ノ r t ス o . n . t r 完 a p n s n デ s = v e s : r e f = c : e : ッ o g u f ー _ ト s . t o j p : p : t ー ) _ ト u g s d h y 了 r a v e t バ e T ( t . " , l . a f " a " セ n e e , ド h : t h ( r s t " t " e ド : h : t e e i , _ : y t = ッ r ' e g , l f u b t ' , d B s ー a } - I o " s e 3 _ o i , i , n I o " p t . r d " _ h F グ u A n e e . s 6 i B e a t ジ l " i n D s , . a 0 s n o o t D 出 s , u ( c n " a , d a 情 e L v t { n t e 4 o a { r s r ) ) n { o t g d ) t ( n { n { ( 力 t t u o a w t a l 報 ) F ( e ( a r e n s s i , : k d } { e e a ) s " s " s パ } { _ r n m b a { t s を _ ' n s r } n / i [ c d e e / " t r t . t . t e ス / p l t e " ) a e 出 U A v e g : c j c ' d 追 a y _ a u ( s u T y R y l a a , e ( ) ) ) 力 S L ( l e { o s a a 加 t } i l r , s i p e p f l t n o , : す E F ' f t s d o { c t の a : d f l ( m e q e , f h h t u a る R _ A . _ e e n e c * a デ . : r " ) e " u " r e t s か ' P L p h l ( ' n e " : ー i { e : o : e : n e a p ど ) A F a o f c , c p タ t v s s u s o s d u f う S _ s s . r o t d e a t c u t " t " d c e t i か S T s t p e d ' i m l r o r : t E r e o r _ l W A w a d e ] c s u ) / l i x e _ / s p e O R o s e d , t ( e : a } m c q i a = a : R G r s n _ ) } p ) e e u d p s t D E d w t c = : " i o p e : i e h ' T ) o i r ) / u t s / l ) ) _ r a e N - t i t s - f , H i d l d o d " o " t d . O f } s e n e , n , r e h e S " . n e f , f e x T s e t ) a " a " a a i ' e n i : u m s m o u d s ) l c a l e e u l e t f o l t s e s t t r _ . d s - s : s p - s o p e } / a a u / ) k a ( ' p g g t p = s ) u e e _ u T s ) b " " p b r w . l : : a l u o d i t i e r e c " s h c ) d c / リ t : / o a ク r a e d l エ ( s l l e f ス e t f s ( r ト ) r r e ) e が } ) e s タ ) : s N c イ c o o ム o n / ア / e v ウ v , e ト e r し r s ま s i し i o た o n " n s } s / ) / 1 1 / / n n o o d d e e s s / / { { n n o o d d e e _ _ i i d d } } " / c o n t e n t " オブジェクトストレージにファイルをアップロード boto3と、オブジェクトストレージのENDPOINT_URL、ACCESS_KEY、SECRET_KEYおよびBUCKET_NAMEなどを使用して、ファイルのアップロード(とダウンロード)を行います。
...