<4D F736F F F696E74202D2082B682F182E082F182B182F F97EF95CF8AB72E >

Similar documents
chapter5

Excel2013 ピボットテーブル基礎

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

年齢別人数計算ツールマニュアル


立ち読みページ

OFISTAR S3100取扱説明書

Jupyter Notebook を活用したプログラムライブラリ構築の検討 吹谷芳博 1, 藤澤正樹 1 ( 1 あすか製薬株式会社 ) Examination of the program library construction using Jupyter Notebook ASKA Pharm

Word2013基礎 基本操作

PowerPoint プレゼンテーション

スライド 0

IPA の提供する 縮退マップ に される MJ 字集合 JIS 字集合への縮退対応関係はある 字について 縮退先として 1 つの漢字が されるとは限らず 縮退先として複数の候補が される IPA としては縮退先の候補を さないの場合があります 2.2. 縮退マップの成り ち IPA の提供する縮退

(Microsoft PowerPoint - WQ21JDEadapter\215\\\220\254\216\350\217\207\217\221_ ppt)

第 1 節 関数とは 関数とは 与えられた文字や数値に対し 定められた処理を行って結果を返す命令のことです 例えば パンをホームベーカリーで作るには 最初に材料となる小麦粉などを入れ 次いでドライイースト 最後に水を入れるという順序があります そして スタートボタンを押すとパンが完成します ホームベ

…_…C…L…fi…J…o†[fiü“ePDF/−mflF™ƒ

WINS クラブ ニュース

付録 CSV エントリフォーマット 2( 記事 6 行 ) 最大入力文字数 1 A 荷受人コート ( お届け先コート ) 1 英数字 15 is-2 で登録されているお届け先コード 2 B 電話番号 1 3 C 住所 1 英数カナ 20 4 D 住所 2 英数カナ 20 5 E 住所 3

◎phpapi.indd

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

試作ツールは MIT ライセンスによって提供いたします その他 内包された オープンソース ソフトウェアについてはそれぞれのライセンスに従ってご利用ください

FASS ベーシックサンプル問題 財務モデリング Financial Modeling 日本 CFO 協会 FASS 運営委員会 0

メタデータスキーマレジストリ MetaBridge の概要

クイックマニュアル(利用者編)

テキスト固定長ファイル概要 固定長テキストファイル フォーマット一覧固定長テキストファイルのレコード長およびフォーマットは以下の通りです 項番 ファイル レコード長 (byte) 1 一括記録請求ファイル 一括記録請求結果ファイル 開示結果ファイル 共通フォーマッ

PowerPoint Presentation

エクセル応用 2016 第 1 章関数の利用 1 作成するブックを確認する 2 関数の概要 3 数値の四捨五入 切り捨て 切り上げを使う 4 順位を求める 5 条件で判断する 6 日付を計算する 7 表から該当データを参照する 第 2 章表作成の活用 1 作成するブックを確認する 2 条件付き書式を

クエリの作成が楽になるUDF

PowerPoint Presentation

商標類 Microsoft は, 米国およびその他の国における米国 Microsoft Corp. の登録商標です Microsoft Office は, 米国 Microsoft Corp. の商品名称です Microsoft Excel は, 米国 Microsoft Corp. の商品名称です

OSSTechプレゼンテーション

Microsoft Word - HOBO雨量専用説明書_v1.1.doc

5-2. 顧客情報をエクスポートする 顧客管理へのアクセス手順 メールディーラーで管理する顧客情報に関する設定を行います 1. 画面右上の 管理設定 をクリックする 2. 管理設定 をクリックする 3. ( タブ ) 顧客管理 をクリックする 2

Xperia™ XZ ユーザーガイド

スライド 1

オートマトン 形式言語及び演習 1. 有限オートマトンとは 酒井正彦 形式言語 言語とは : 文字列の集合例 : 偶数個の 1 の後に 0 を持つ列からなる集合 {0, 110, 11110,

IGESデータの基礎知識

eYACHO 管理者ガイド

PowerPoint Presentation

9 WEB監視

とろろこんぶ電子印鑑は セキュリティー機能を備えた お客様 ( 管理者 ) が印影を作成できる電子印鑑です とろろこんぶシステム工房 2

PowerPoint プレゼンテーション

かんたん携帯9 ユーザーガイド

口腔ケア アセスメント解析データベース 平成 23 年度に作成した, 口腔ケア アセスメント票 の結果を効率的に管理, 分析できるソフトです 平成 24 年度, 仙台保健福祉事務所が介護老人保健施設ももせ塩竈において実施した, 口腔ケアの取組強化を目的としたモデル事業において, 仙台保健福祉事務所と

vi 目次 画像のサイズ設定 画像の効果 画面の取り込みとトリミング Office の共通基本操作 図形 図形の挿入と削除 図形の編集 図形の背景色の透過 Office

AQUOS ケータイ ユーザーガイド

目次 1. 変換の対象 砂防指定地 XML 作成メニュー シェープファイルからXMLへ変換 砂防指定地 XMLとシェープファイルの対応.csv 変換処理 CSVファイルによる属性指定... 5


第 12 講データ管理 1 2 / 14 ページ 12-1 データベースソフトの概要 データベースとは集められた様々なデータをテーマや目的に沿って分類 整理したものです データベースソフトでは データベースを作成し その管理を行います 何種類ものファイルや帳簿で管理していたデータをコンピュータ上で互

平成9年度水道事業年報 1概況 2施設

PowerPoint プレゼンテーション

슬라이드 1

<4D F736F F F696E74202D20352D335F8D5C90AC CF909482CC90B690AC82C695D28F572E707074>

SQL インジェクションの脆弱性

SPREAD-プラットフォーム間機能比較

文字の装飾 / 配置について 文字の装飾 ( ボールド / イタリック / アンダーライン等 ) 網掛けは行わないでください 背景色は バーコード部分とのコントラストが低下する色を避けてください 文字の回転を行う場合 回転角度は 90 度 180 度 270 度以外は指定しないでください 文字間隔の

Fujitsu Standard Tool

PowerPoint プレゼンテーション

InputMan for Windows Forms バージョン比較表

はじめに Microsoft Forms( 以下フォーム ) は 九州産業大学の学生及び教職員が利用できる Office365 の機能の一つです アンケートやクイズ ( テスト ) を簡単な操作で作成することができます 作成したアンケートやクイズは マルチデバイスでの回答が可能で 回答は即時集計され

このルールをそのまま正規表現として書くと 下記のようになります ^A[0-9]{2}00[0-9]{3}([0-9]{2})?$ ちょっと難しく見えるかもしれませんが 下記のような対応になっています 最初 固定 年度 固定 通番 ( 枝番 ) 最後 ルール "A" 数字 2 桁 0 を 2 桁 数字

生存確認調査ツール

操作マニュアルアテンダント

Microsoft Word - ehondbonXAMPPについて ver.1.1

Transcription:

日付を表す文字列の解釈と暦の変換 - 暦に関する統合基盤の構築に向けて 関野樹 ( 総合地球環境学研究所 ) 山田太造 ( 東京大学史料編纂所 ) 1 時間情報の解析環境 時間を専門に扱うソフトウェアの登場時間に関する基盤情報を充実させる取り組み GISとの連携による本格的な時空間解析 HuTime 検索 2 1

時間情報のための知識 技術の集積 - 時間情報学 地域研究年代学歴史学書誌学 統計学位相幾何学 3 基盤情報 - 時間情報解析のための 3 種類の知識 時間基盤情報 (1) 基本年表 (2) 時間名辞書 (3) 暦法変換 ベース地図 地名辞書 測地系変換 4 2

暦に関する知識が必要な例 ドナティ彗星 (C/1858 L1) 日本での出現記録勘申彗星出現之事安倍晴雄著 安政戊午仲秋聞書 http://library.nao.ac.jp/kichou/open/009/index.html Kometa Donati nad pařížským ostrovem Ile de Cité s Justičním palácem a Conciergerií 5. října 1858 (z desky v The World of Comets 1877, Amedée Guillemin) http://www.komety.cz/article.php3?sid=259 ハーバードでの観測記録 The page from Bond's observing notebook at the Great Refractor at Harvard. http://www.komety.cz/article.php3?sid=259 5 暦に関して必要な知識 八月十六日 月 日の表現を知っていること漢数字が読めること 年号 : 安政年号を伴っていること 安政 が年号であること 年 : 戊午 戊午 が干支による年であること安政戊午書名 安政戊午仲秋聞書 より 年月日の表現の順序を知っていること Sept が9 番目の月であること 1858 Sept 28 年 :1858 月 :9 日 :28 月 :8 日 :16 和暦 ( 天保暦 ) であること 1858-09-22 1858-09-28 米国がグレゴリオ暦を用いてること 6 3

暦に関して必要な知識 日付の表記に関する知識 年月日の表現順序や区切り文字 使用される文字 月などの名前や略称 特定の日を表す用語 暦そのものに関する知識 どの地域 どの時代にどの暦が使われたか? 暦の運用方法の違い 暦同士の関係に関する知識 それぞれの暦を基準の暦に置き換える方法 ( 暦変換 ) データの入出力に関する知識 データ入出力の仕様 材料からのデータの抽出方法 暦に関する知識を集約する 暦に関する統合基盤 単なる暦変換を超えて 日付の表現や暦そのもの関する知識も含めて再利用できるようにするデータの入出力を共通化する 7 暦に関する統合基盤 8 4

本研究での範囲 統合基盤の基本機能の構築と検証 日付文字列の解釈 ユリウス / グレゴリオ暦 和暦 ユリウス通日 暦の変換機能 漢字の読み取り 年月日の様々な表現 ユリウス / グレゴリオ暦 和暦 ユリウス通日 基本的な解釈の仕組み 年月日によらない日付表現 不規則な例外を含む変換 ( データベースによる変換 ) 基準軸となる暦 計算式による変換 実用レベルのサービス提供 Web ページでのサービス提供検証 技術的要件.NET Frameworkをベース Excel のマクロとしての利用を見込む 9 日付文字列の解釈 - 書式指定の方法 日付文字列の書式指定 書式指定子と任意の文字の組み合わせて指定 4 ケタの年の指定子 2 ケタの月の指定子 2 ケタの日の指定子 ISO8601 形式の場合 yyyy-mm-dd 区切り文字 入力時指定された書式に従っているものとして日付文字列を解釈出力時指定された書式に従って日付文字列を出力 yyyy-mm-dd 2013-12-13 2013/12/13 解釈可能 解釈不可 10 5

日付文字列の解釈 - 書式指定子 書式指定子 基本的な指定子 ( 例 ) yyyy 4 桁の年 MM 2 桁の月 dd 2 桁の日など (.NET Framework の仕様に準拠 ) 暦ごとに拡張された指定子 ユリウス / グレゴリオ暦 ( 西暦 ) ( 例 ) Y 紀元前の表記に対応した年 : 紀元 1 年は1 ; 紀元前 1 年は1 A.D.", "B.C." を伴って使うことを前提 ( 基本の y は 連続した数値としての年 : 紀元 1 年は 1; 紀元前 1 年は 0) 和暦数字 干支 月名などに対応 ( 例 ) yk MJ dk de 一, 元,, 一〇, 十,, 二〇, 二十, 廿,, 三〇, 三十, 卅睦月, 如月, 弥生,, 霜月, 師走一, 朔,, 一〇, 十,, 二〇, 二十, 廿,, 三〇, 三十, 卅,, 晦甲子, 乙丑, 丙寅, 丁卯,, 壬戌, 庚亥 11 日付文字列の解釈 - 書式指定子 書式指定子 ( 続き ) ワイルドカード日付文字列の解釈に柔軟性を持たせる年月日のワイルドカード ( 例 - 和暦の日の書式 ) dk 日の漢数字によるあらゆる表現一, 朔,, 一〇, 十,, 二〇, 二十, 廿,, 三〇, 三十, 卅,, 晦 da 日のすべての表現 d (1, 01,, 30) + de ( 甲子,, 癸亥 ) + dk 任意の文字のワイルドカード * 0 文字以上の任意の文字? 任意の1 文字ワイルドカードの適用例 gg*ya*ma*da* 平成二五年一二月一三日 平成廿五年十二月十三日 平成癸巳師走癸丑 平成 25 年 12 月 13 日 平成 25/12/13 12 6

日付文字列の解釈 - 処理の流れ 入力データ平成弐伍年壹弍月壱参 異体字等処理後平成二五年一二月一三 東京大学史料編纂所のデータより 解釈の結果 年号 : 平成年 : 25 月 : 12 日 : 13 ( 切り分けられた状態 ) 暦変換などの処理へ 可能性のある書式を複数指定最初に解釈に成功したものを採用 13 暦変換 基準軸ユリウス通日 紀元前 4713 年 1 月 1 日正午からの日数 不連続が無い 2つの変換方法計算式による変換 データベースによる変換 ユリウス / グレゴリオ暦 ( 西暦 ) 恣意的な変更や変異が少ない ( ユリウス暦からグレゴリオ暦の改暦のみ ) 仕組み ( 月の日数 置閏法 ) が比較的単純で一定 和暦 恣意的な変更が多い ( 月の大小 ) 変異がある ( 南朝 北朝 ) 仕組みが複雑で変化する ( 天保暦 宣明暦 儀凰暦 ) 暦 A ユリウス通日 暦 B 各暦はユリウス通日との相互変換を実現できるようにする 和暦で使われているデータベース 月テーブル各月の朔日のユリウス通日と年の年番号 ( 皇紀に相当 ) を記録年号テーブル各年号が使われた期間をユリウス通日で記録 14 7

暦変換 - 実装 基本機能暦変換にかかる全体の調整 API 外部からの利用を共通化する 今回は見送り 暦カタログ暦そのものに関する情報 使用地域や期間 実装されているモジュール名 今回は見送り ( 対応する暦が増えたら構築 ) 暦モジュール 暦に応じた日付文字列の解析機能 ユリウス通日との相互変換機能を実装 今後 他の暦へも対応してゆく予定 15 結果の出力 結果は日付文字列として出力書式指定 文字列解析 ( 入力時 ) を基本的に同じ 使用できない書式指定子 ( ワイルドカードなど ) がある 出力だけで使える書式指定子 ( 漢数字の表現など ) がある 出力例 ( 例 ) dk1 dk1b dk2 dk3 一,, 一〇 一一,, 二〇, 二一,, 三〇, 三一朔,, 一〇, 一一,, 二〇, 二一,, 晦一,, 十, 十一,, 二十, 二十一,, 三〇, 三一一,, 十, 十一,, 廿, 廿一,, 卅, 卅一 ユリウス / グレゴリオ暦 ( 西暦 ) 1703 年 1 月 30 日 年号和暦に対応した年年の干支 ggyk2 年 (yw/ye)mk2 月 dk2 日 出力書式 和暦 漢数字の年漢数字の月元禄十五年 (1702/ 壬午 ) 十二月十四日 ( 赤穂浪士討ち入り ) 漢数字の日 16 8

サービスの提供 暦変換フォーム HuTime 検索 既定の書式和暦 ( 入力 ) gg*ya*ma*da* gg*ya*ma* 朔 da* ( 出力 ) ggy 年 MMM 月 d 日 ユリウス / グレゴリオ暦 ( 西暦 ) ( 入力 ) gg*y-m-d ya*ma*da* ( 出力 ) gg YYYY-MM-dd http:///basicdata/calendar/form.html 入力方法 改行で区切って複数のデータを入力可能 17 検証 (1) どれだけの史料に対応できるか - 和暦 東京大学史料編纂所のデータベースに含まれる日付の表現がどの程度変換できるか? 寶亀宝亀寳亀寳龜宝龜寶龜天應天応延暦大同 平成 25 年 12 月 13 日 元年壱年々年一年 1 年貮年 2 年弐年貳年 2 年 孟冬初冬拾月 10 月十月小春応鐘閏 10 月後小春閏拾月 廿壱日貳拾壱日二拾壱日貮拾壱日念壱日念一日廿一日貮拾一日弐拾弐日弐十弐日 結果年号正解率 317/333 年正解率 1165/1167 月正解率 214/395 日正解率 363/372 大半の史料に対応できると考えれる 年号 年 月 日をそれぞれ置き換えて変換する 必要に応じて ほかの要素も調整 ( 閏月など ) 和暦から和暦への変換を実施し 同じ日付を返すかを確認 18 9

検証 (2) 処理速度同じデータ 平成二五年八月二八日 を複数件入力し変換 平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日平成二五年八月二八日 サーバと同一 LAN で実施 ( ネットワーク遅延の影響を抑える ) 和暦から西暦への変換 書式は既定のまま 結果 3,000 件までであれば1 秒以内に結果を出力 実用的な処理速度を実現 実用上はネットワーク環境や書式指定 入力データの複雑さの影響を受けると考えられる 19 統合基盤の応用と今後の課題 応用 Webページや他のアプリケーション (HuTimeなど) への組み込み (APIの実装) 史料からの日付文字列の抽出構造化されたテキストでの応用 セマンティックWeb - 異なる暦法による同じ日付の関係 課題 対応する暦を増やす 暦や日付の表現に関する知識の蓄積 時間名辞書との連携 20 10