宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omekaオメカ Sエスもちいた日本にほん危機きき言語げんごのための
デジタルアーカイブの構築こうちく

デジタルヒューマニティーズにおける
世界せかい標準ひょうじゅん (TEIティーイーアイIIIFトリプルアイエフ・ダブリンコア) の適用てきよう


大学共同利用機関法人だいがくきょうどうりようきかんほうじん 人間文化研究機構にんげんぶんかけんきゅうきこう 国立国語研究所こくりつこくごけんきゅうじょ

宮川 (みやがわ) (そう)

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

発表の流れ

  • 第1節 デジタルアーカイブ
  • 第2節 デジタルアーカイブ専用のCMS・Omeka
  • 第3節 IIIF (トリプルアイエフ): 国際画像相互運用枠組み
  • 第4節 TEI: 人文学の資料を機械可読化する世界標準
  • 第5節 おわりに: Omeka S, IIIF, TEIを用いたデジタルアーカイブのこれから
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

第1節

デジタルアーカイブ

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

デジタルアーカイブ / digital archive (略称: DA)

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

内閣府によるデジタル・アーカイブの定義

デジタルアーカイブは、未来の利用者に対して、過去及び現在の社会的・学術的・ 文化的資産がどういったものかを示す、永く継承されるべき遺産であるとともに、その国・地域の社会・学術・文化の保存・継承や外部への発信のための基盤となるものである。

内閣府知的財産戦略推進事務局・デジタルアーカイブの連携に関する 関係省庁等連絡会・実務者協議会 「我が国におけるデジタルアーカイブ推進の方向性」

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

デジタルアーカイブのFAIR原則

  • Findable: 検索可能

  • Accessible: アクセス可能

  • Interoperable: 相互運用可能

  • Reusable: 再利用可能

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

第2節

デジタルアーカイブ専用のCMS・Omeka S

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omeka S

  • デジタルアーカイブのための CMS (コンテンツ・マネジメント・システム)
  • メタデータの世界標準である ダブリンコア のRDFが標準で用いられている(リンクト・オープン・データ)
  • 国際画像相互運用枠組みである IIIFの導入が容易
  • 人文資料のテキスト構造化の標準方式である TEI XML を工夫して表示可
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

チームでウェブサイトを効率よく作るためのCMS

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omeka Sの歴史

  • 米国 ジョージ・メイソン大学ロイ・ローゼンツヴァイク・歴史・ニューメディアセンター (CHNM) が提供している CMS (コンテンツ管理システム)
  • チームで開発するためのOmeka Sと個人用・教育用に使われるOmeka Classicがある
  • 日本でも東京大学学術資産等アーカイブズポータルなど導入例が増えてきている
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)


Omeka Sの使用例:東京大学学術資産等アーカイブズポータル
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omeka Sの管理画面
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omeka Sの開発中のトップページ
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

Omeka Sの開発中のアイテムページ

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

考えているコンテンツ

  • 既存の危機言語・方言資料
    • PB, CC BY, CC BY-SA のものは適切な表示をつけてファイルをアーカイブにアップロード
    • それ以外のものは、アーカイブにメタデータを記述した上でリンク
  • 新しい危機言語・方言資料
    • ウェブ沖縄語辞典
    • 『日本言語地図』 のIIIFバージョン
    • ベッテルハイムの琉球語訳聖書、バチェラーのアイヌ語訳聖書のデジタルエディション
    • その他、著作権の問題がない言語資料をデジタル化(IIIF・TEI)する
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

第3節

IIIF (トリプルアイエフ): 国際画像相互運用枠組み

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

IIIF トリプルアイエフの概略と歴史

  • International Image Interoperability Framework
  • 世界各地の有力な研究図書館により、既存の技術を効果的に組み合わせて始められた、高精細画像相互運用技術
  • 世界中の多くの著名なMLAKがデジタルアーカイブに採用
  • 日本でも 急速に普及中
  • ジャパンサーチ(デジタルアーカイブ横断検索)にフルに対応するためにはIIIFへの対応が必要
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

IIIFの5大ビューワ

すべてソースコードはGitHubで公開

  • UniversalViewer: イギリスのウェルカム図書館など
  • Mirador: アメリカのスタンフォード大学図書館など
  • IIIF Curation Viewer: 日本のROIS-DS人文学オープンデータ共同利用センター (CODH)
  • Tify: ドイツのゲッティンゲン州立大学図書館
  • OpenSeadragon: アメリカのCodePlex Foundation
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

国語研dglb01サーバ上のMiradorの例

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

言語データのための動画IIIF:「IIIFビューワ「Mirador動画アノテーション対応版」の改良:動画アノテーションツールELANとの連携を目指して」(高橋洋成・永﨑研宣・本間淳)より

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

CODHのIIIF Curation Viewer

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

例: 私のコレクション by Cultural Japan

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

第4節

TEI: 人文学の資料を機械可読化する世界標準

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

はじめに: TEI とは

  • TEIティーイーアイ (Text Encoding Initiative) とは
    • 人文学資料のテキストを構造化機械可読にすることを目指した団体
    • その団体が制定したガイドラインがTEIガイドライン
    • TEIガイドラインで定められたXMLがTEI XMLか単にTEIと呼ばれる
  • TEIの歴史
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEIの例① FaustEdition

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

FaustEditionのソースコードはTEI

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEIの例② Theodor Fontane: Notizbücher

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEIの例③British National Corpus

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEI協会が認知するTEI使用プロジェクト一覧 (⚠氷山の一角)

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

日本語文献へのTEI適用の例:「デジタル源氏物語」

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

ウェブサイト・ウェブアプリの基礎

  • フロントエンド: ブラウザ側、ユーザの手元
    • 基本構成:HTML中身 + (CSSデザイン + JavaScriptプログラム )
    • 最近はSPAを作るJavaScriptフレームワークの使用多
      • Single Page Application:ページ1枚に様々なコンテンツを切替表示
      • 三大フレームワーク:Angular・React・Vue.js(+Svelte)
  • バックエンド: サーバ側
    • WebサーバソフトウェアApacheやNGINX、バージョン管理システムGit等
    • プログラミング言語を用いたフレームワーク: PythonではDjangoやFlask、PHPではLaravel、RubyではRuby on Railsなど
    • データベース: MySQL、eXistなど、データ:SQL、JSON、XML等
  • 動的ページと静的ページ
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEIをウェブサイトにする方法

  • XSLTエックスエスエルティー (Extensive Stylesheet Language Transformations)
    • XMLを様々なフォーマットに変換、ウェブサイトにも変換できるし、CSVやJSON形式など何にでも変換できる
    • XMLを変換することに特化した言語
  • CETEIceanシーティーシャン:JavaScriptを使ったTEIをデータとするウェブサイトが構築できる
    • 慣れればXSLTよりも手軽にTEI XMLからウェブサイトが構築できる
  • Python などのプログラミング言語で変換プログラムを作る
    • 各言語にXMLに特化したライブラリがある
    • Pythonでは ElementTree やlxmlやBeautifulSoupなどを使う
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

XSLTでTEI XMLを静的ウェブサイトに変換した例

  • 宮川が科研費「研究活動スタート支援」の古ヌビア語研究のために作った、LaTeXのgb4e.styで作られたインターリニアコーパスをTEI XMLにして、さらにブートストラップのウェブサイトに変換するもの
<ab xml:id="SC4">
    <s type="orig">ⳟⲁⲉⲓⲁ̄ ⲟⲩⲕ ⲟ̄ⲕⲓⳝⲁⲣⲣⲉ·</s>
    <s type="parse">ⳟⲁⲉⲓ-ⲁ̄ ⲟⲩ-ⲕ ⲟ̄ⲕ-ⲓⳝ-ⲁⲣ-ⲣ-ⲉ</s>
    <s type="roman">ŋaei-a ou-k ok-ij-ar-r-e</s>
    <s type="gloss">who-QUOT 2PL-ACC call-PLACT-INTEN-PRS-1SG.PRED</s>
    <s type="trans" xml:lang="en">‘What shall I call you?’</s>
    <note>Notes The following affirmative forms in -ⲙⲁ are all 
    dependent on the verb ⲟ̄ⲕⲓⳝⲁⲣⲣⲉ.</note>
</ab>
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

インターリニアテキスト部分のXSLTコード

<xsl:for-each select="TEI/text/body/ab">
<div class="div-1">
    <div id="oldnubian" class="div-3">                     
        <p><big><xsl:value-of select="s[@type='orig']"/></big></p>
        <p><big><xsl:value-of select="s[@type='parse']"/></big></p>
        <p><xsl:value-of select="s[@type='roman']"/></p>
        <p><xsl:value-of select="s[@type='gloss']"/></p>
        <p><xsl:value-of select="s[@type='trans']"/></p>
    </div>
</div>   
  • JavaScriptはleipzig.jsを使用
<script src="dist/leipzig.js"></script>
<script>
    document.addEventListener('DOMContentLoaded', function() {Leipzig
    ('#oldnubian', { firstLineOrig: true }).gloss();});
</script>
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

できたウェブサイト

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

WordPressへの応用

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

ウェブ版『沖縄語辞典』

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

国立国語研究所「沖縄語辞典 データ集」

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

いめゆんな (2015-07-24)[「オススメの勉強法 【うちなーぐち(沖縄方言)講座・じゅん選手】」沖縄芸人じゅん選手のネタで!● ゼロから学ぶうちなーぐち講座](https://imeyunkana.blogspot.com/2015/05/blog-post_51.html)
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

沖縄語版Wikipedia: 沖縄語の漢字かな混じり表記

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

『沖縄語辞典』をTEI XMLに変換するプログラム

  • 『沖縄語辞典』(CC BY、国語研)のCSVファイルをTEIにしてからウェブサイトにしたい
  • 加藤幹治氏に、宮川が指定したTEIスキーマに準拠したTEIファイルになるようPythonでコーディングしてもらった(Coptic Dictionary Onlineを参考にしたs)
  • 現在「漢字かな表記」を追加中
    • 例文にもグロスを振る
    • UPOSも追加
  • 改造すれば他のExcel形式の辞書データに対応できる
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

加藤氏のPythonスクリプト(一部)

#!/usr/bin/env python3
# 作成者: 東京外国語大学大学院 加藤幹治 (jiateng.ganzhi(at)gmail.com)
# 作成日: 2022年4月28日
# 依頼者: 国立国語研究所研究系助教・宮川創、および、教授・高田智和
import pandas as pd
import re
from xml.etree.ElementTree import Element, SubElement, ElementTree
import xml.etree.ElementTree as ET

# なぜかElementTreeのwriteメソッドにはインデントを装飾するオプションがないので、
# インデントを適切に設定する関数を定義する
def _pretty_print(current, parent=None, index=-1, depth=0):
    for i, node in enumerate(current):
        _pretty_print(node, current, i, depth + 1)
    if parent is not None:
        if index == 0:
            parent.text = '\n' + ('\t' * depth)
        else:
            parent[index - 1].tail = '\n' + ('\t' * depth)
        if index == len(parent) - 1:
            current.tail = '\n' + ('\t' * (depth - 1))
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

## 加藤幹治氏のスクリプトでできた『沖縄語辞典」のTEI XMLの「叫びー声」の例

<entry>
  <cit>
    <bibl>『沖縄語辞典』国立国語研究所資料集5第9刷 (2009), p.100</bibl>
  </cit>
  <form>
    <orth xml:lang="ryu-Hira">あびーぐぃー</orth>
    <orth xml:lang="ryu-Jpan" n="1">叫びー声</orth>
    <orth xml:lang="ryu-Jpan" n="2">叫声</orth>
    <orth xml:lang="ryu-Latn" n="1">ʔabiigwii</orth>
    <orth xml:lang="ryu-Latn" n="2">abiigwii</orth>
    <pron notation="ipa">ʔabiigwii</pron>
    <pron notation="accent">0</pron>
  </form>
  <gramGrp>
    <pos>NOUN</pos>
    <subc></subc>
  </gramGrp>
  <sense xml:lang="jp-Jpan" n="1">
    <def>叫び声。kaamakara~nu cikariiN.遠くから叫び声が聞こえる。</def>
  </sense>
  <usg></usg>
</entry>
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEI XMLをXSLTでウェブサイトに

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

TEI XMLをXSLTでウェブサイトに

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

ベッテルハイム琉球語訳聖書(1850年代)デジタルエディション

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

第5節

おわりに: Omeka S, IIIF, TEIを用いたデジタルアーカイブのこれから

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)
  • Omeka S という デジタルアーカイブ専用のCMS を用いて、FAIR原則に基づいた消滅危機言語資料のためのデジタルアーカイブを構築
  • 地図や画像、書き起こしや注釈付きのELANデータ、動画は、 IIIF化
    • 高精細画像・動画を提供、動画は字幕付きで翻訳やグロスも表示
    • ジャパンサーチなどで横断検索可能、かつ、ジャパンサーチ上でIIIF画像を表示、その他、他サイトで相互運用
  • テキスト、ELANの書き起こしや注釈は TEI化: XSLTやPythonなどを使って、静的、あるいは動的(一旦JSONに変換)なウェブサイトを生成し、コンテンツ化
  • 元データは可能な限りデジタルアーカイブやリポジトリ上でオープンなライセンス(CC BYやPublic Domainなど)で公開し、 相互運用・再利用可能
    • TEIは デジタルヒューマニティーズのテキスト構造化の世界標準形式 → 二次利用・相互運用のしやすさUp
宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)

御礼にふぇーでーびたん / 尊尊とーとぅなし / みへでぃろ / おぼらだれん / うふくんでーた / ありがっさまりょーた

たんでぃがーたんでぃ / すでぃがふー / しかいとぅ三拝云みーふぁいゆー / あらーぐふがらっさ!

(すみません、私の力だけではすべての琉球諸語で書けません・・・)

ありがとうございました。(so-miyagawa@ninjal.ac.jp)

宮川創 (https://somiyagawa.com/, so-miyagawa@ninjal.ac.jp)