Upload
temima
View
57
Download
1
Embed Size (px)
DESCRIPTION
文書資源の基礎: XML. 2006 年 6 月 2 日 COE21-LKR 認知的知識資源論 徃住研・松 本. 文書資源を扱う. 文字→記号→ 文書 →知識 文書を知識資源として扱うには... XML というものを使用する方法がある. 本日の講義では,文書を扱う枠組みとしての XML という視点で紹介をおこなう.. XML とは?. XML (E x tensible M arkup L anguage) 拡張性のある, テキストに印をつけるための言葉. - PowerPoint PPT Presentation
Citation preview
文書資源の基礎: XML2006年 6月 2日
COE21-LKR 認知的知識資源論徃住研・松本
2006/06/02 2
文書資源を扱う 文字→記号→文書→知識
文書を知識資源として扱うには...
XML というものを使用する方法がある.
本日の講義では,文書を扱う枠組みとしての XMLという視点で紹介をおこなう.
2006/06/02 3
XML とは? XML (Extensible Markup Language)
拡張性のある,テキストに印をつけるための言葉
参考:たのしい XML: http://www6.airnet.ne.jp/manyo/xml/index.html
2006/06/02 4
印をつけるための言語 印をつける=意味(印)付けをする markup の例
Tag: <name>Natsume</name>, [name] Natsume[name],…
Tab: name Natsume ← 左が意味,タブを挟んで内容
Colon: name: Natsume ← 左が意味,コロンを挟んで内容
2006/06/02 5
XML が採用した markup 方式 tag(タグ )方式→記号は,” <“, “>”
start tag(開始タグ), end tag(終了タグ)で挟む
end tagは,” /”を最初に付ける例: <name> 夏目漱石 </name>
開始タグ 内容 終了タグ
2006/06/02 6
歴史: XML ができるまで
HTMLを, XML処理系で扱えるように定義しなおした言語.
SGML
XML
HTML
XHTML
簡素化,改良インターネット用
1980年代
2006/06/02 7
SGMLStandard Generalized Markup Language
インターネット用ではない,汎用の文書処理. 例.自動車のマニュアルドキュメントなど
ドキュメントの「論理的な構造」をテキストで表現して交換する(「見栄え」については交換不可能.)
デメリット: 不要な機能が実装され理解が困難 レイアウト構造が反映されないSGML文書
マニュアルタイトル
はじめに製品概要
本文
図
2006/06/02 8
XML をつくる人たち 世界でネットワーク業界に力を持つ団体
ウェブの概念を作った W3C が開発 W3C:World Wide Web Consortium
WWW 技術の標準化と推進を目的とした、会員制の国際的な産業コンソーシアム
http://www.w3.org/ ホスト: MIT(USA), INRIA(Fr), Keio(Japan) 成果物: XML, HTML, XHTML, SVG, SOAP, RDF
,...
2006/06/02 9
XML は “ Internet standard”
XML 文書には, UTF-8 を使用→防文字化け・処理ミスhttp://www.unicode.org/
http://www.w3.org/TR/2003/NOTE-unicode-xml-20030613
文字コードを, UNICODE を標準採用することで,世界中の文字を利用可能
メタ言語方式として Tag 方式を採用した→<tag>contents</tag> 挟み込みで対応→ つまり XML では, tab, space, LF, CR は無視
世界規模・国際間・言語間データ通信エラーを潜在的に回避する仕様
2006/06/02 10
XML の “ Extensible”
XMLのデータ処理は, XML Parserを使う
→Parserは,”タグ名”で検索して内容を取得するため データの追加(拡張)は,問題なく対応できる データの順序変更も,問題なく対応できる
<?xml version="1.0" encoding="UTF-8"?><environment>
<weather>fine</weather><temperature>30.1</temperature>
</environment>
<?xml version="1.0" encoding="UTF-8"?><environment>
<temperature>30.1</temperature><humidity>68</humidity><weather>fine</weather>
</environment>データ拡張
2006/06/02 11
XML 文書の構成
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE personal [<!ELEMENT personal (name,age,sex,address)><!ELEMENT name (#PCDATA)><!ELEMENT age (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT address (#PCDATA)>
]>
<personal><name>Akutagawa Ryunosuke</name><age>31</age><sex>male</sex><address>Tokyo</address>
</personal>
→
→
→
XML Declaration (XML 宣言)
Schema (スキーマ)DTD (Document Type Definition)
XML Instance (XML インスタンス)
2006/06/02 12
XML 文書の構成
<?xml version="1.0" encoding="UTF-8"?>→XML Declaration (XML 宣言)
<!DOCTYPE personal [<!ELEMENT personal (name,age,sex,address)><!ELEMENT name (#PCDATA)><!ELEMENT age (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT address (#PCDATA)>
]>
<personal><name>Akutagawa Ryunosuke</name><age>31</age><sex>male</sex><address>Tokyo</address>
</personal>
→
→
Schema (スキーマ)DTD (Document Type Definition)
XML Instance (XML インスタンス)
XMLのバージョン宣言,文字コードの宣言などをおこなう.
2006/06/02 13
XML 文書の構成
<!DOCTYPE personal [<!ELEMENT personal (name,age,sex,address)><!ELEMENT name (#PCDATA)><!ELEMENT age (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT address (#PCDATA)>
]>
→Schema (スキーマ)
XML Instance (XML インスタンス) <personal><name>Akutagawa Ryunosuke</name><age>31</age><sex>male</sex><address>Tokyo</address>
</personal>
→
<?xml version="1.0" encoding="UTF-8"?>→XML Declaration (XML 宣言)
タグ付きデータに現れる要素,属性,エンティティなどの宣言をおこなう部分.文書構造の定義をおこなう.
2006/06/02 14
XML 文書の構成
<personal><name>Akutagawa Ryunosuke</name><age>31</age><sex>male</sex><address>Tokyo</address>
</personal>
→XML Instance (XML インスタンス)
<!DOCTYPE personal [<!ELEMENT personal (name,age,sex,address)><!ELEMENT name (#PCDATA)><!ELEMENT age (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT address (#PCDATA)>
]>
→Schema (スキーマ)DTD (Document Type Definition)
<?xml version="1.0" encoding="UTF-8"?>→XML Declaration (XML 宣言)
実際のタグ付き文書が書かれる部分
2006/06/02 15
Schema( スキーマ )
スキーマは, XML に固有のタグ名・構造などを与える文書構造の定義
XML はタグの設計を自由に行える <name> 芥川龍之介 </name> <namae> 芥川龍之介 </namae>
→ つまり,同意味に対して複数の定義が可能→ データ通信で複数定義があると問題
2006/06/02 16
Schema( スキーマ ) の種類 XMLのスキーマは複数存在する
DTD (Document Type Definition)→公式サイトなし SGML時代から使っており実績がある
W3C XML Schema W3C作成の為今後のスタンダード 複雑
Relax NG 国産スキーマ W3C XML Schemaが策定されるまで一時的に使うなど・・
2006/06/02 17
スキーマリポジトリ(一般) 同じ分野でスキーマが開発されていないか,独自開発する前に検索すべき
URL 説明
http://www.xml.org/ [Registry]より検索http://www.schema.net/ ジャンル毎別れているBizTalk Initiative http://www.biztalk.org/ 電子商取引OAG http://www.openapplicatoins.org/ 統合業務パッケージOASIS http://www.oasis-open.org 電子商取引RosettaNet http://www.rosettanet.org 電子商取引
2006/06/02 18
XML 文書の種類 整形式 XML文書 (well-formed XML document)
開始タグと終了タグの対応がある, 要素タグの論理構造が合っている,など
検証済み XML文書 (valid XML document) DTD(もしくは,スキーマ)の中の要素型宣言によって定義された要素の階層関係に従って,タグ付けがおこなわれている
ただのテキスト文書
整形式 XML文書
検証済みXML文書
2006/06/02 19
インスタンス部分:タグ付け
Element(要素)の書き方 Element(要素):タグで囲まれた文字列
例: <name>芥川龍之介 </name>
content
<要素名> (内容) </要素名>
Element (要素)
start-tag(開始タグ)
end-tag(終了タグ)
2006/06/02 20
XML の基本文法ルール 要素(タグ名)は自由に設計できる 大文字・小文字は区別 ルート要素は1つのみ 入れ子構造に厳格
○<a><b></b></a> ×<a><b></a></b>
終了タグは必ず必要 内容が無い空要素の場合
<break></break> <break /> ← 半角スペース
2006/06/02 21
例:テキスト講義名: COE21-LKR 認知的知識資源論 単位数: 2-0-0担当教員:徃住彰文講義のねらい知識資源の設計,収集,獲得,蓄積,利用に関する基本知識を整理する.特に,認知科学的観点から知識資源研究にアプローチするための基本技能の習得をめざす.知識資源を,文字,記号,文書,知識資源,大規模知識資源として扱う方法を概観し,電子的(ディジタル化した)表現法,計算的(プログラミング言語やツールによる)操作法の基礎を学ぶことが主たる内容である.
成績評価学期末までに提出するレポート一篇の成績に基づく
テキストなどなし.
担当教員から一言人間行動システム専攻における実習授業「 COE21-LKR知識資源活用実習」(中川・赤間)と相互補完的な関係にある.
2006/06/02 22
例:タグ付けをおこなう<?xml version=“1.0” encoding=“UTF-8” ?><lecture>
<name>COE21-LKR 認知的知識資源論 </name><tani>2-0-0</tani><lecturer> 徃住彰文 </lecturer> <aim> 知識資源の設計,収集,獲得,蓄積,利用に関する基本知識を整理する.特に,認知科学的観点から知識資源研究にアプローチするための基本技能の習得をめざす.知識資源を,文字,記号,文書,知識資源,大規模知識資源として扱う方法を概観し,電子的(ディジタル化した)表現法,計算的(プログラミング言語やツールによる)操作法の基礎を学ぶことが主たる内容である. </aim><evaluation> 学期末までに提出するレポート一篇の成績に基づく. </evaluation><text> なし. </text> <comment>人間行動システム専攻における実習授業「 COE21-LKR 知識資源活用実習」(中川・赤間)と相互補完的な関係にある. </comment>
</lecture>
2006/06/02 23
例:タグの意味
lecturename
講義全体講義名
tani 単位数lecturer 担当教員aim 講義のねらいevaluation 成績評価text テキストcomment 担当教員から一言
2006/06/02 24
DTD(Document Type Definition)をつくる(自分でつくる場合)
まずは必要なデータを考えてつくってみる(自由に設計することができる).
<lecture><name>COE21-LKR 認知的知識資源論 </name><tani>2-0-0</tani><lecturer> 徃住彰文 </lecturer> <aim> 知識資源の設計・収集・蓄積・利用に関する基本知識を整理する. </aim><evaluation> 学期末までに提出するレポート一篇の成績に基づく. </evaluation><text> なし </text> <comment>人間行動システム専攻における実習授業「 COE21-LKR 知識資源活用実習」(中川・赤間)と相互補完的な関係にある. </comment>
</lecture>
設計したデータ ( 構造 ) 以外を認めないようにスキーマ (DTD) を設計する
2006/06/02 25
XML 文書内に記述する方法(Internal Subset)
<?xml version=“1.0” encoding=“UTF-8” ?><!DOCTYPE lecture [
<!ELEMENT name (#PCDATA)><!ELEMENT tani (#PCDATA)><!ELEMENT lecturer (#PCDATA)><!ELEMENT aim (#PCDATA)><!ELEMENT evaluation (#PCDATA)><!ELEMENT text (#PCDATA)><!ELEMENT comment (#PCDATA)>
]>
<!DOCTYPE rootelement [ DTD 記述]>
DTD記述
基本形
2004/11/25 26
DTD まとめ XMLの文書構造を規定するスキーマ言語の1つ 将来は,W3C XML Schemaに置き換わる (というか現在進行形で置き換わりつつある)
DTDよりも細かくデータ型を指定できる. 名前空間が使用可能(本講義では説明略)
(しかしながら, XML Schemaも, DTDを理解していたほうが理解しやすい)
2006/06/02 27
Web Browser の XML 処理機能 最新ブラウザでは, XML 文書を簡易処理できる機
能が搭載されている well-formed XML 文書チェック XML 文書を Tree 表示(上記をクリアすると表示) 簡易 XSL 処理(本講義では説明略) その他, plugin機能により機能拡張可能
サンプル
2006/06/02 28
その他(本講義では説明略)
XHTML (Extensible HyperText Markup Language) Webページ記述言語である HTML を, XML 処理系
であつかるように変更したもの XSL (Extensible Stylesheet Language)
XML データをウェブページとして表示させるための言語
W3C XML Schema : XML 名前空間( Namespace in XML) 世界で一意の URI を使って,タグの重複を防ぐ
2006/06/02 29
XML の使用例1. 身近な XMLドキュメント
Messenger 各商品タグ,各文書
2. Corpus of Spontaneous Japanese (CSJ) プロジェクト
話し言葉コーパスのあつかい
3. TEI (Text Encoding Initiative) プロジェクト 人文科学的文書資源のあつかい
2006/06/02 30
1. 身近な XML ドキュメント Messenger
2006/06/02 31
2. Corpus of Spontaneous Japanese (CSJ) プロジェクト 話し言葉コーパス
開発は,国立国語研究所,通信総合研究所,東京工業大学(古井貞煕教授)
コーパス 電子化された自然言語の文章をおさめたテキストデータ
現代日本語の自発音声のデータベース 約 750 万語 [about 7,500,000 words] 約 600時間 [about 600 hours]
対象:主に講演 [Target: lecture, mainly] まとまった内容を持つ [definite contents] 全曲共通語 [a common language] モノローグ音声 [monologue]
サンプル音声
2006/06/02 32
音声を書き起こして, その後 XML文書化
2. Corpus of Spontaneous Japanese (CSJ) プロジェクト
2006/06/02 33
3. TEI (Text Encoding Initiative)
http://www.tei-c.org/ Text Encoding Initiative 文学的,言語学的文章のマークアップに特化
した XML スキーマ原文書の印刷上の特徴をマークアップする
ことに焦点を置いている.そのほかに,効果的な検索や索引作成、比較
なども可能.
2006/06/02 34
TEI の歴史 1987: ACH (the Association for Computers
and the Humanities) at Vassar College 1990: TEI P1 SGML 1994: TEI P3 1999: TEI P3 (1999 revised edition) 2002: TEI P4 XML 2004: TEI P5 (not yet) *** TEI LITE;;; for customization *** Pizza Chef
2006/06/02 35
そもそも文学とは...単語の意味や文章の構造はもちろん大切. でも,単語や文章の意味だけではない !!!⇒ 文章の意味を補助するものとして,印刷上の工夫がなされている. e.g. 強調(太字・斜体),字下げ,余白,改行な
ど 文章の深みを出したり,効果を高めたり... 例.小説,詩,脚本など
TEIでは,文章のこうした側面を区別できるマークアップ方法を提示している.
2006/06/02 36
<p>Oh speake againe bright Angel, for thou art <br>As glorious to this night being ore my head, <br>As is a winged messenger of heauen <br> Vnto the white vpturned wondring eyes, <br> Of mortalls that fall backe to gaze on him, <br> When he bestrides the lazie puffing Cloudes, <br> And sayles vpon the bosome of the ayre. <br> O Romeo, Romeo, wherefore art thou Romeo? <br> Denie thy father and refuse thy name: <br> Or if thou wilt not, be but sworne my loue, <br> And ile no longer be a Capulet. <br> Shall I heare more, or shall I speake at this? <br>...</p>
HTML ファイル
Shakespeare の Romeo and Juliet
2006/06/02 37
Shakespeare の Romeo and Juliet
Oh speake againe bright Angel, for thou art <lb/> As glorious to this night being ore my head, <lb/> As is a winged messenger of heauen <lb/> Vnto the white vpturned wondring eyes, <lb/> Of mortalls that fall backe to gaze on him, <lb/> When he bestrides the lazie puffing Cloudes, <lb/> And sayles vpon the bosome of the ayre. <lb/> <q type=“spoken” who=“Juliet”>O <persName key=“romeo”>Romeo</persName>, <persName key=“romeo”> Romeo</persName>, wherefore art thou <persName key=“romeo”> Romeo</persName>? <lb/> Denie thy father and refuse thy name: <lb/> Or if thou wilt not, be but sworne my loue, <lb/> And ile no longer be a <placeName key=“capulet”><persName key=“capulet”>Capulet</persName></placeName>. </q> <lb/> <q type=thought” who=“romeo”>Shall I heare more, or shall I speake at this? </q><lb/>
TEI の DTD を使うと...
→TEIにより、多くの意味を持った内容を付け足すことが可能. →たとえば, “ Julietの発話だけ斜体にしたい”といった要求に耐えうる.
2006/06/02 38
文学をあつかっている他プロジェクトとの比較 (e.g.) Project Gutenberg (http://www.gutenberg.org/)
文学的、歴史的作品 無料で一般に公開 目標:プレーンな ASCIIで文章を作成すること
どんな強調も → 太字 段落 → 空白行
これはこれで,テキスト利用者がテキストを自由に再構成できるという利点がある.
TEIでは文書作成側による明示的構成がされている 自動化されたツールでの処理や解析は容易になる.
2006/06/02 39
TEI にできること文書に対して,豊富な意味をもった
マークアップが可能.過去の出版物を表現可能
( e.g. ) 聖書 ( e.g. )カントの「純粋理性批判 」の「 A版」「B版」
TEIを用いたプロジェクト http://www.tei-c.org/Applications/index.html
2006/06/02 40
ほかに,文学をあつかうプロジェクト
Project Gutenberghttp://promo.net/pg/
Oxford Text Archivehttp://ota.ahds.ac.uk/
Electronic Text Center, UVahttp://etext.virginia.edu/
青空文庫http://www.aozora.gr.jp/
2006/06/02 41
XML 編集ソフト紹介◎XMLSPY (Windows のみ )
http://www.xmlspy.com/ XML統合開発環境.他の追撃を許さない.完璧.
○EmEditor (Windows のみ ) http://www.emeditor.com/ Text Editor としては高性能.シェアウェア.
○JEdit (Mac のみ ) http://www.artman21.net/product/Jedit4 Text Editor としては高性能.シェアウェア.
○Emacs (UNIX系 ) PSGML など http://db-www.aist-nara.ac.jp/xml/psgml/
2006/06/02 42
参考文献 XML 完全解説(上下)
技術評論社
2006/06/02 43
用語辞典 (Internet)
IT 用語辞典 e-Words
http://e-words.jp/ アスキーデジタル用語辞典
http://yougo.ascii24.com/ XML 用語辞典
http://www.atmarkit.co.jp/fxml/dictionary/indexpage/xmlindex.html
Webopedia from internet.com
http://webopedia.internet.com/
2006/06/02 44
参考サイト (XML 関連) World Wide Web Consortium (W3C)
http://www.w3.org/ アットマーク・アイティ ” XML, Web Services”
http://www.atmarkit.co.jp/fxml/ たのしい XML: XML/XHTML入門ページです http://
www.cityfujisawa.ne.jp/~yanai/xml/ XML Consortium (Japan)
http://www.xmlconsortium.org/ 日本 XMLユーザーグループ
http://www.xml.gr.jp/
2006/06/02 45
参考サイト (XSL/XSLT 関連) World Wide Web Consortium (W3C) XSL/XSLT
http://www.w3.org/Style/XSL/ 「サンプルで覚える XSLT プログラミング」(小山尚彦)
http://www.atmarkit.co.jp/fxml/tanpatsu/xslt/xslt00.html Arkサイト XML アカデミー(ジャストシステム)
http://www.justsystem.co.jp/ark/xml/ XSLT仕様(日本語訳)(インフォテリア)
http://www.infoteria.com/jp/contents/xml-data/REC-xslt-19991116-jpn.htm
Apache Software Foundation Cocoon 2 (Server Side XSLT)
http://cocoon.apache.org/
2006/06/02 46
参考サイト・文献 ( 文字コード) UNICODE
http://www.unicode.org/ 日本語文字コード: ASH Multimedia lab
http://ash.jp/code/ 文字コード超研究 深沢 千尋 (著 )
http://www.rutles.net/books/051.html
株式会社ラトルズ刊 ISBN4-89977-051-0
2006/06/02 47
参考サイト (XML Parser) DOM (Document Object Model) @ W3C
http://www.w3.org/DOM/ SAX (Simple API for XML)
http://www.saxproject.org/ XPP (XML Pull Parser)
http://www.extreme.indiana.edu/xgws/xsoap/xpp/ Sun XML Parser
http://java.sun.com/xml/ Microsoft XML Parser
http://msdn.microsoft.com/xml/ Expat (C++)
http://www.jclark.com/xml/expat.html Xerces (C++, Java2, Perl) Apache S/W Founda.
http://xml.apache.org