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のユーザ名とパスワード、およびホスト名を環境変数から読み込み、メタデータの取得やコンテンツのダウンロードを行うことができました。
オブジェクトストレージにファイルをアップロード#
boto3と、オブジェクトストレージのENDPOINT_URL、ACCESS_KEY、SECRET_KEYおよびBUCKET_NAMEなどを使用して、ファイルのアップロード(とダウンロード)を行います。
ただし、本記事執筆時点の最新のboto3を使用すると、以下のエラーが発生してしまいました。
https://github.com/boto/boto3/issues/4401
boto3==1.35.99のバージョンを使用することで、とりあえずエラーを回避できました。
Archivematicaを用いたAIPの作成と保存#
以下の記事を参考に、指定したprocessing_configオプションに基づき、transferを開始します。
例えば以下のように、ArchivematicaのHOST, USER, API_KEYを用い、さらに/api/v2beta/package/メソッドを用いることで実現できます。
AIPの可視化#
作成されたAIPに対する可視化処理は、以下の記事で紹介したツールを使用しました。
ウェブアプリ化#
上記の一連の処理を使用するGradioアプリの例は以下です。
まとめ#
考慮不足の点が多いかと思いますが、APIを用いたArchivematicaの利用にあたり、参考になりましたら幸いです。