クラスXMLGregorianCalendar

java.lang.Object
javax.xml.datatype.XMLGregorianCalendar
すべての実装されたインタフェース:
Cloneable

public abstract class XMLGregorianCalendar extends Object implements Cloneable

W3C XML Schema 1.0日時データ型の表現です。 特にこれらの日時データ型は、XML名前空間"http://www.w3.org/2001/XMLSchema"に定義されているDatatypeConstants.DATETIMEDatatypeConstants.TIMEDatatypeConstants.DATEDatatypeConstants.GYEARMONTHDatatypeConstants.GMONTHDAYDatatypeConstants.GYEARDatatypeConstants.GMONTH、およびDatatypeConstants.GDAYです。 これらのデータ型は標準として「W3C XML Schema 1.0 Part 2」のセクション3.2.7 - 3.2.14に定義されています。

下の表に、XML Schema 1.0の日時データ型フィールドとこのクラスのフィールドの対応づけを定義します。 さらに、「W3C XML Schema 1.0 Part 2」の付録D「ISO 8601 Date and Time Formatsに定義されている日時フィールドの値の制約についてもまとめています。

XML Schema 1.0とJava表現の日時データ型の対応づけ
XML Schema 1.0
データ型
フィールド
Related
XMLGregorianCalendar
Accessor(s)
値の範囲
year getYear() + getEon()または
getEonAndYear()
getYear()は、-(10^9-1)から(10^9)-1の値またはDatatypeConstants.FIELD_UNDEFINED
getEon()は、数十億年単位の大きい桁の年の値。
getEon()は、(10^9)以上または -(10^9)以下の値を格納する。
nullの値はフィールドが定義されていないことを示す。
「XMLスキーマ1.0エラッタ」で、XMLスキーマの将来のバージョンで年0が有効な字句値であると指定されている場合、このクラスでは年フィールドをゼロに設定できます。
そうでない場合は、yearフィールドの値は正誤表および「SO-8601-1988」に記載されているとおりに処理される。 W3C XML Schema 1.0検証は、yearフィールドの値がゼロになることを許可しない。
month getMonth() 1 - 12またはDatatypeConstants.FIELD_UNDEFINED
day getDay() 月と関係なく、最大の範囲は1から31、またはDatatypeConstants.FIELD_UNDEFINED
月フィールドの値に対する基準値制約は、「W3C XML Schema 1.0 Part 2、付録D 」にあります。
hour getHour() 0 - 23またはDatatypeConstants.FIELD_UNDEFINED minuteフィールド値とsecondフィールド値がゼロの場合、字句領域でhour値24を設定できる。 ただし、hour値24は値領域では許可されず、「XML Schema Part 2: Datatypes Second Edition」のプリミティブ・データ型に関する3.2に従って次の日の最初のインスタンスの値を表すよう変換される。
minute getMinute() 0 - 59またはDatatypeConstants.FIELD_UNDEFINED
second getSecond() + getMillisecond()/1000または
getSecond() + getFractionalSecond()
0 - 60のgetSecond()またはDatatypeConstants.FIELD_UNDEFINED
(Note: 60 only allowable for leap second.)
getFractionalSecond()は、getSecond()が定義されている場合に、0.0から1.0までの範囲で無限の精度を可能にします。

FractionalSecondはオプションであり、未定義の場合はnullの値を持ちます。
getMillisecond()は、getFractionalSecond()の値のミリ秒単位の精度です。
timezone getTimezone() 分数またはDatatypeConstants.FIELD_UNDEFINED -14時間(-14 * 60分)から14時間(14 * 60分)の範囲の値。

前述の表内のフィールドにリストされているすべての最大値領域制約は、このクラスのファクトリ・メソッド、DatatypeFactory、setterメソッドおよび解析メソッドによってチェックされます。 パラメータの値がフィールドの値制限外の場合、あるいは複合値によって無効なXMLGregorianCalendarインスタンスが構成される場合は、IllegalArgumentExceptionがスローされます(たとえば、6月31日が指定された場合などです)。

このクラスでは、次の処理が定義されます。

導入されたバージョン:
1.5
関連項目: