[14] 暦法は、年月日を構成する規則とその運用履歴です。 人間社会の根本を担うシステムであり、 人類の歴史の中で様々な暦法が考案され、利用されてきました。 広義の暦の中核をなすものです。
[12] 計算機システムにおける暦の指定を参照。
[20] ISO 19108 における暦すなわち
TM_Calendar
は、
日単位の時間位置を定義する離散的時間参照系です
>>19。
[30] TM_ReferenceSystem
を継承しています。
[21] 次の操作を利用可能としなければなりません。 >>19 5.3.2.3
dateTrans
は、
日付 TM_CalDate
と時刻 TM_ClockTime
を引数として受け取り、
相当するユリウス日 JulianDate
を返します。julTrans
は、
ユリウス日 JulianDate
を引数として受け取り、
本 TM_Calendar
において相当する日付 TM_CalDate
を返します。[24] グレゴリオ暦、和暦などいろいろな暦法を記述するために使うことができます。 附属書D (参考) に次の暦法の記述例が示されています >>19 D。
[27] 暦は、 年、月、日などの要素の集まりで暦日を構成するための規則の集合を規定するものです。 >>19 5.3.2.1 「典型的な暦」 >>19 D.1, 附属書D表1 の内部構造は次のようであると説明されています。すなわち、
... のような階層的な構造を持ち、下位の構造は1つ以上の実現値を持ち、 名称や順序数が一巡すると上位の構造の時間間隔となります。 年と日はほとんどの暦にあり、 月については他の構造があるかもしれません。 その他の構造や、並列の別の構造があるかもしれません。 Calendar - Calendar Year 構造と並列に Calendar Era もあります。 各時間間隔は複数の天体の周期を基準に決められますが、 互いに整数倍とならないため複雑化しており、 両者の同期のために閏が挿入されます。 更に詳しく見ると:
[28] 暦年代の基準となる事象の時期すなわち元期は
referenceFrame
で参照される各 TM_CalendarEra
により記述されます。暦法における日付は、提供される両操作によってユリウス日と相互変換できます。
この変換の具体的な方法は定められておらず、
元期とその適用期間以外の変換に必要な内部構造の情報にアクセスする手段も用意されていません。
記述された暦法を不透明な値ではなく何らかの形で利用したいときは、
暦法ごとの処理を実装する必要があります。
[36] TM_Calendar
はユリウス日との変換手段が存在することを要求しています。
JIS X 7108 はバビロン暦のように正確な対応関係が知られていないものにユリウス日の近似値を用いる例を示しています。
換算アルゴリズムの正確度の情報を含める必要がある >>19 D.2
とされていますが、 TM_Calendar
やその演算で機械的に正確度を判断する手段は用意されていません。
[38] OWL-Time は、 暦は clock のカウントを実用的な日常の日時であって天体の移動に関係するもの (日, 月, 年) に変換できるようにするアルゴリズムの集合 >>37 としています。 閏の一般の扱いは対象外とする >>37 としています。
[39] OWL-Time の時間参照系関連用語には ISO 19108
の影を感じますが、
暦だけ若干毛色が違っていて、
日付でなく時刻まで組み込まれている感が多少あります (が曖昧です)。
[18] 大正時代と古い本ですが、全文が Google Books で公開されています。 昭和時代以降の研究成果が取り入れられていないものの、 当時日本最高峰の天文学者によって著された、 日本語で暦法を総合的に知ることができる優れた書籍です。
[4] 暦法 - Wikipedia ( 版) http://ja.wikipedia.org/wiki/%E6%9A%A6%E6%B3%95
[5] RFC 7529 - Non-Gregorian Recurrence Rules in the Internet Calendaring and Scheduling Core Object Specification (iCalendar) ( 版) https://tools.ietf.org/html/rfc7529
[6] 紀元・暦法を集めるスレ ( 版) http://academy4.2ch.net/test/read.cgi/whis/1044889496/
[7] RFC 7529 - Non-Gregorian Recurrence Rules in the Internet Calendaring and Scheduling Core Object Specification (iCalendar) ( ()) https://tools.ietf.org/html/rfc7529
[16] 暦 - Uyopedia () https://web.archive.org/web/20160404020010/http://uyopedia.a.freewiki.in/index.php/%E6%9A%A6
[15] MenoData/Time4J: Advanced date, time and interval library for Java () https://github.com/MenoData/Time4J
[40] 暦の基礎知識 () https://web.archive.org/web/20120924025620/http://www.tulips.tsukuba.ac.jp/hon_kataru/katudou/012.html
[41] 「暦法」と「カレンダー」: suchowan's blog, https://suchowan.at.webry.info/201604/article_5.html
[42] 文明の「暦」史観 : 太陰暦、太陽暦、太陰太陽暦の相克と共存, 中牧 弘允, , , https://minpaku.repo.nii.ac.jp/index.php?active_action=repository_view_main_item_detail&page_id=13&block_id=21&item_id=234&item_no=1
[43] Calendar Wiki | Fandom, , https://calendars.fandom.com/wiki/Main_Page
[44] Fixed Arithmetic Calendar Cycle Jitter, Dr. Irv Bromberg, University of Toronto, Canada, , http://individual.utoronto.ca/intervalmath/jitter/
[45] Alpo Balognia: Calendar A, , http://the-light.com/cal/converter/calendarA.html
[46] Dove Calendar, , http://the-light.com/cal/kp_Dove.html
[47] Karl Palmen's Calendars, , https://www.hermetic.ch/cal_stud/palmen/index.html
[48] Karl's Fun Calendars, , http://the-light.com/cal/kp_funcalendars.html
[49] Lufkan Calendar Spoof, , http://the-light.com/cal/kp_Lufkan_spoof.html
[336] 43/450 Calendar, , http://the-light.com/calendar.html
[337] 28/293 Calendar, , http://the-light.com/cal/ve28293.htm