public abstract class DatatypeFactory extends Object
XML を Java Object
へ、あるいは Java Object からマップする新しい javax.xml.datatype
Object
を作成するファクトリです。
newInstance()
を使用して新しい DatatypeFactory
が作成されます。次の実装解決メカニズムが、次の順序で使用されます。
DATATYPEFACTORY_PROPERTY
によって指定されたシステムプロパティー、「javax.xml.datatype.DatatypeFactory
」が存在する場合は、そのプロパティー値の名前を持つクラスがインスタンス化されます。インスタンス化のプロセス中にスローされた例外は、DatatypeConfigurationException
としてラップされます。
Properties
Object
にロードされます。その後、Properties
Object
で、前のステップでドキュメント化され、前のステップでドキュメント化されたものとして処理されたプロパティーが照会されます。
META-INF/services/java.xml.datatype.DatatypeFactory
などのサービス解決メカニズムが使用されます。インスタンス化のプロセス中にスローされた例外は、DatatypeConfigurationException
としてラップされます。
DATATYPEFACTORY_IMPLEMENTATION_CLASS
で指定された Class
のインスタンス化を試みることです。インスタンス化のプロセス中にスローされた例外は、DatatypeConfigurationException
としてラップされます。
修飾子と型 | フィールドと説明 |
---|---|
static String |
DATATYPEFACTORY_IMPLEMENTATION_CLASS
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 で定義されているデフォルトの実装クラス名です。
|
static String |
DATATYPEFACTORY_PROPERTY
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 で定義されているデフォルトの実装クラス名です。
|
修飾子 | コンストラクタと説明 |
---|---|
protected |
DatatypeFactory()
パッケージ外部のインスタンス化を防ぐ protected コンストラクタです。
|
修飾子と型 | メソッドと説明 |
---|---|
abstract Duration |
newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
Duration を isPositive、年、月、日、時間、分、秒で指定する Duration の新しいインスタンスを取得します。 |
Duration |
newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
Duration を isPositive、年、月、日、時間、分、秒で指定する Duration の新しいインスタンスを取得します。 |
abstract Duration |
newDuration(long durationInMilliSeconds)
Duration をミリ秒で指定する Duration の新しいインスタンスを取得します。 |
abstract Duration |
newDuration(String lexicalRepresentation)
XML Schema 1.0 のセクション 3.2.6.1 に定義されているように、
Duration をその文字列表現「PnYnMnDTnHnMnS」で指定する Duration の新しいインスタンスを取得します。 |
Duration |
newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された
day 、hour 、minute 、および second を使用して、xdt:dayTimeDuration 型の Duration を作成します。 |
Duration |
newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された
day 、hour 、minute 、および second を使用して、xdt:dayTimeDuration 型の Duration を作成します。 |
Duration |
newDurationDayTime(long durationInMilliseconds)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された指定されたミリ秒を使用して、
xdt:dayTimeDuration 型の Duration を作成します。 |
Duration |
newDurationDayTime(String lexicalRepresentation)
String 表現、「PnDTnHnMnS」、「XQuery 1.0 and XPath 2.0 Data Model」の「xdt:dayTimeDuration」を構文解析することによって、xdt:dayTimeDuration 型の Duration を作成します。 |
Duration |
newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された
year および month を使用して、xdt:yearMonthDuration 型の Duration を作成します。 |
Duration |
newDurationYearMonth(boolean isPositive, int year, int month)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された
year および month を使用して、xdt:yearMonthDuration 型の Duration を作成します。 |
Duration |
newDurationYearMonth(long durationInMilliseconds)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された指定されたミリ秒を使用して、
xdt:yearMonthDuration 型の Duration を作成します。 |
Duration |
newDurationYearMonth(String lexicalRepresentation)
String 表現、「PnYnM」、「XQuery 1.0 and XPath 2.0 Data Model」の「xdt:yearMonthDuration」を構文解析することによって、xdt:yearMonthDuration 型の Duration を作成します。 |
static DatatypeFactory |
newInstance()
DatatypeFactory の新しいインスタンスを取得します。 |
static DatatypeFactory |
newInstance(String factoryClassName, ClassLoader classLoader)
クラス名から
DatatypeFactory の新しいインスタンスを取得します。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar()
XMLGregorianCalendar の新しいインスタンスを作成します。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
W3C XML Schema 1.0 recommendation で xsd:dateTime および関連するビルトインデータ型に許可されている完全な値空間を可能にするコンストラクタです。
|
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(GregorianCalendar cal)
GregorianCalendar から XMLGregorianCalendar を作成します。 |
XMLGregorianCalendar |
newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
java.util.GregorianCalendar インスタンスを XMLGregorianCalendar インスタンスに変換する必要がある値領域のコンストラクタです。 |
abstract XMLGregorianCalendar |
newXMLGregorianCalendar(String lexicalRepresentation)
字句表現として文字列を構文解析することによって、新しい XMLGregorianCalendar を作成します。
|
XMLGregorianCalendar |
newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
XML Schema ビルトインデータ型
date または g* の Java 表現を作成します。 |
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
XML Schema ビルトインデータ型 time の Java インスタンスを作成します。
|
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
XML Schema ビルトインデータ型
time の Java インスタンスを作成します。 |
XMLGregorianCalendar |
newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
XML Schema ビルトインデータ型 time の Java インスタンスを作成します。
|
public static final String DATATYPEFACTORY_PROPERTY
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 で定義されているデフォルトの実装クラス名です。
デフォルト値は javax.xml.datatype.DatatypeFactory
です。
public static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS
JSR 206:Java(TM) API for XML Processing (JAXP) 1.3 で定義されているデフォルトの実装クラス名です。
その他の実装解決メカニズムが成功しない場合、実装はインスタンス化される適切なクラスの名前を指定する必要があります。
ユーザーはこのフィールドを参照すべきではありません。ファクトリ実装の詳細を文書化することだけを目的としています。
protected DatatypeFactory()
パッケージ外部のインスタンス化を防ぐ protected コンストラクタです。
newInstance()
を使用して DatatypeFactory
を作成します。
public static DatatypeFactory newInstance() throws DatatypeConfigurationException
DatatypeFactory
の新しいインスタンスを取得します。
実装解決メカニズムは、この Class
のドキュメントで定義されています。
DatatypeFactory
の新しいインスタンスDatatypeConfigurationException
- 実装が使用できないかインスタンス化できない場合。newInstance(String factoryClassName, ClassLoader classLoader)
public static DatatypeFactory newInstance(String factoryClassName, ClassLoader classLoader) throws DatatypeConfigurationException
クラス名から DatatypeFactory
の新しいインスタンスを取得します。この関数は、クラスパスに複数のプロバイダがある場合に便利です。どのプロバイダがロードされるかを指定できるため、アプリケーションをさらに制御できます。
アプリケーションが DatatypeFactory
への参照を取得すると、ファクトリを使用して datatype のインスタンスを構成および取得することができます。
jaxp.debug
システムプロパティーを設定すると、このメソッドは実行中の処理や検索している場所に関する大量のデバッグメッセージを System.err
に出力します。
問題がある場合、次のようにします。
java -Djaxp.debug=1 YourProgram ....
factoryClassName
- javax.xml.datatype.DatatypeFactory
の実装を提供する完全修飾のファクトリクラス名。classLoader
- ファクトリクラスのロードに使用される ClassLoader
。null
の場合は、現在の Thread
のコンテキスト classLoader が、ファクトリクラスのロードに使用されます。DatatypeFactory
の新しいインスタンスDatatypeConfigurationException
- factoryClassName
が null
、またはファクトリクラスをロードまたはインスタンス化できない場合。newInstance()
public abstract Duration newDuration(String lexicalRepresentation)
XML Schema 1.0 のセクション 3.2.6.1 に定義されているように、Duration
をその文字列表現「PnYnMnDTnHnMnS」で指定する Duration
の新しいインスタンスを取得します。
XML Schema Part 2:Datatypes, 3.2.6 duration は、次のように duration
を定義します。
時間の長さを表すデュレーションです。デュレーションの値の空間は 6 次元であり、ここでは座標によって、それぞれ [ISO 8601] のセクション 5.5.3.2 で定義されているグレゴリオ暦の年、月、日、時間、分、および秒のコンポーネントが指定されます。これらのコンポーネントは、単位の大きさ順、すなわち年、月、日、時間、分、および秒の順序で並べられます。
6 つの値はすべて設定されており、作成された Duration
から使用できます。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
lexicalRepresentation
- Duration
の String
表現。lexicalRepresentation
の構文解析から作成された新しい Duration
。IllegalArgumentException
- lexicalRepresentation
が Duration
の有効な表現でない場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。NullPointerException
- lexicalRepresentation
が null
である場合。public abstract Duration newDuration(long durationInMilliSeconds)
Duration
をミリ秒で指定する Duration
の新しいインスタンスを取得します。
XML Schema Part 2:Datatypes, 3.2.6 duration は、次のように duration
を定義します。
時間の長さを表すデュレーションです。デュレーションの値の空間は 6 次元であり、ここでは座標によって、それぞれ [ISO 8601] のセクション 5.5.3.2 で定義されているグレゴリオ暦の年、月、日、時間、分、および秒のコンポーネントが指定されます。これらのコンポーネントは、単位の大きさ順、すなわち年、月、日、時間、分、および秒の順序で並べられます。
6 つの値はすべて指定されたミリ秒からそれぞれの値を計算することによって設定され、作成された Duration
の get
メソッドを使って使用可能となります。値は、次の項目に準拠し、それらによって定義されています。
XMLGregorianCalendar
XML Schema 1.0 と Java 表現の日時データ型フィールドの対応づけデフォルトの開始インスタンスは、GregorianCalendar
が元期の開始を使うことによって定義されます。例として、Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 などが挙げられます。グレゴリオ暦には変動があるため、これが重要となります。たとえば、うるう年では、month = Calendar.FEBRUARY
の日数が変わるため、Duration.getMonths()
と Duration.getDays()
の結果に影響が出る可能性があります。
durationInMilliSeconds
- ミリ秒で作成するデュレーション。durationInMilliSeconds
を表す新しい Duration
。public abstract Duration newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
Duration
を isPositive、年、月、日、時間、分、秒で指定する Duration
の新しいインスタンスを取得します。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
null
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。years
- この Duration
months
- この Duration
days
- この Duration
hours
- この Duration
minutes
- この Duration
seconds
- この Duration
Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。すべてのフィールド (years、months、...) が null またはいずれかのフィールドが負の場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。public Duration newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
Duration
を isPositive、年、月、日、時間、分、秒で指定する Duration
の新しいインスタンスを取得します。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。years
- この Duration
months
- この Duration
days
- この Duration
hours
- この Duration
minutes
- この Duration
seconds
- この Duration
Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。いずれかのフィールドが負の場合。newDuration( boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
public Duration newDurationDayTime(String lexicalRepresentation)
String
表現、「PnDTnHnMnS」、「XQuery 1.0 and XPath 2.0 Data Model」の「xdt:dayTimeDuration」を構文解析することによって、xdt:dayTimeDuration
型の Duration
を作成します。
データ型 xdt:dayTimeDuration
は、字句表現に日、時間、分、および秒コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 http://www.w3.org/2003/11/xpath-datatypes
にあります。
4 つの値はすべて設定されており、作成された Duration
から使用できます。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
lexicalRepresentation
- デュレーションの字句表現。lexicalRepresentation
を使用して作成された新しい Duration
。IllegalArgumentException
- lexicalRepresentation
が日および時間でのみで表されている Duration
の表現として無効である場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。NullPointerException
- lexicalRepresentation
が null
である場合。public Duration newDurationDayTime(long durationInMilliseconds)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された指定されたミリ秒を使用して、xdt:dayTimeDuration
型の Duration
を作成します。
データ型 xdt:dayTimeDuration
は、字句表現に日、時間、分、および秒コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 http://www.w3.org/2003/11/xpath-datatypes
にあります。
4 つの値はすべて指定されたミリ秒からそれぞれの値を計算することによって設定され、作成された Duration
の get
メソッドを使って使用可能となります。値は、次の項目に準拠し、それらによって定義されています。
XMLGregorianCalendar
XML Schema 1.0 と Java 表現の日時データ型フィールドの対応づけデフォルトの開始インスタンスは、GregorianCalendar
が元期の開始を使うことによって定義されます。例として、Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 などが挙げられます。グレゴリオ暦には変動があるため、これが重要となります。たとえば、うるう年では、month = Calendar.FEBRUARY
の日数が変わるため、Duration.getDays()
の結果に影響が出る可能性があります。
日、時間、分、および秒を決定したあとに残るミリ秒は破棄されます。
durationInMilliseconds
- 作成する Duration
のミリ秒。durationInMilliseconds
で作成された新しい Duration
。public Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された day
、hour
、minute
、および second
を使用して、xdt:dayTimeDuration
型の Duration
を作成します。
データ型 xdt:dayTimeDuration
は、字句表現に日、時間、分、および秒コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 http://www.w3.org/2003/11/xpath-datatypes
にあります。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
null
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。day
- Duration
の日。hour
- Duration
の時間。minute
- Duration
の分。second
- Duration
の秒。day
、hour
、minute
、および second
で作成された新しい Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。すべてのフィールド (day、hour、...) が null またはいずれかのフィールドが負の場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。public Duration newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:dayTimeDuration」で定義された day
、hour
、minute
、および second
を使用して、xdt:dayTimeDuration
型の Duration
を作成します。
データ型 xdt:dayTimeDuration
は、字句表現に日、時間、分、および秒コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 http://www.w3.org/2003/11/xpath-datatypes
にあります。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。day
- Duration
の日。hour
- Duration
の時間。minute
- Duration
の分。second
- Duration
の秒。day
、hour
、minute
、および second
で作成された新しい Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。いずれかのフィールド (day、hour、...) が負の場合。public Duration newDurationYearMonth(String lexicalRepresentation)
String
表現、「PnYnM」、「XQuery 1.0 and XPath 2.0 Data Model」の「xdt:yearMonthDuration」を構文解析することによって、xdt:yearMonthDuration
型の Duration
を作成します。
データ型 xdt:yearMonthDuration
は、字句表現に年および月コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 XMLConstants.W3C_XPATH_DATATYPE_NS_URI
にあります。
両方の値が設定されており、作成された Duration
から使用できます。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
lexicalRepresentation
- デュレーションの字句表現。lexicalRepresentation
を使用して作成された新しい Duration
。IllegalArgumentException
- lexicalRepresentation
が年および月でのみで表されている Duration
の表現として無効である場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。NullPointerException
- lexicalRepresentation
が null
である場合。public Duration newDurationYearMonth(long durationInMilliseconds)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された指定されたミリ秒を使用して、xdt:yearMonthDuration
型の Duration
を作成します。
データ型 xdt:yearMonthDuration
は、字句表現に年および月コンポーネントのみが含まれる xs:duration
のサブタイプです。このデータ型は、名前空間 XMLConstants.W3C_XPATH_DATATYPE_NS_URI
にあります。
両方の値は指定されたミリ秒からそれぞれの値を計算することによって設定され、作成された Duration
の get
メソッドを使って使用可能となります。値は、次の項目に準拠し、それらによって定義されています。
XMLGregorianCalendar
XML Schema 1.0 と Java 表現の日時データ型フィールドの対応づけデフォルトの開始インスタンスは、GregorianCalendar
が元期の開始を使うことによって定義されます。例として、Calendar.YEAR
= 1970、Calendar.MONTH
= Calendar.JANUARY
、Calendar.DATE
= 1 などが挙げられます。グレゴリオ暦には変動があるため、これが重要となります。たとえば、うるう年では、month = Calendar.FEBRUARY
の日数が変わるため、Duration.getMonths()
の結果に影響が出る可能性があります。
年および月を決定したあとに残るミリ秒は破棄されます。
durationInMilliseconds
- 作成する Duration
のミリ秒。durationInMilliseconds
を使用して作成された新しい Duration
。public Duration newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された year
および month
を使用して、xdt:yearMonthDuration
型の Duration
を作成します。
XML スキーマ仕様では、任意のサイズの値をとることができます。実装は、大きい値または小さい値、あるいはこの両方を任意にサポートしないか、あるいはサポート不可とするかを選ぶことができます。実装容量の限界を超えている場合は、実装限界を示すメッセージとともに UnsupportedOperationException
がスローされます。
null
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。year
- Duration
の年。month
- Duration
の月。year
と month
を使用して作成された新しい Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。すべてのフィールド (years、months) が null またはいずれかのフィールドが負の場合。UnsupportedOperationException
- 実装が要求された値をサポートできない場合。public Duration newDurationYearMonth(boolean isPositive, int year, int month)
「XQuery 1.0 and XPath 2.0 Data Model, xdt:yearMonthDuration」で定義された year
および month
を使用して、xdt:yearMonthDuration
型の Duration
を作成します。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
isPositive
- false
に設定すると、負のデュレーションが作成される。デュレーションの長さが 0 の場合、このパラメータは無視される。year
- Duration
の年。month
- Duration
の月。year
と month
を使用して作成された新しい Duration
。IllegalArgumentException
- 値が Duration
の表現として無効である場合。いずれかのフィールド (year、month) が負の場合。public abstract XMLGregorianCalendar newXMLGregorianCalendar()
XMLGregorianCalendar
の新しいインスタンスを作成します。
すべての日時データ型フィールドは、DatatypeConstants.FIELD_UNDEFINED
または null に設定されます。
DatatypeConstants.FIELD_UNDEFINED
または null に設定された新しい XMLGregorianCalendar
。public abstract XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)
字句表現として文字列を構文解析することによって、新しい XMLGregorianCalendar を作成します。
字句文字列表現の解析は、「XML Schema 1.0 Part 2 のセクション 3.2.[7-14].1 Lexical Representation」に定義されています。
文字列表現の先頭と末尾に空白を付けることはできません。
この解析はフィールドごとに実行されるため、次では字句上正しい任意の文字列 x を保持します。
newXMLGregorianCalendar(x).toXMLFormat().equals(x)
「XML Schema 1.0 errata のセクション 3.2.7.2」に記載された字句/正規表現の顕著な不一致を除きます。
lexicalRepresentation
- 8 つの XML Schema 日時データ型の字句表現のいずれか 1 つ。lexicalRepresentation
から作成された XMLGregorianCalendar
。IllegalArgumentException
- lexicalRepresentation
が有効な XMLGregorianCalendar
でない場合。NullPointerException
- lexicalRepresentation
が null
である場合。public abstract XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
GregorianCalendar
から XMLGregorianCalendar
を作成します。
GregorianCalendar から XMLGregorianCalendar へのフィールドごとの変換
|
|
---|---|
java.util.GregorianCalendar フィールド |
javax.xml.datatype.XMLGregorianCalendar フィールド |
ERA == GregorianCalendar.BC ? -YEAR : YEAR |
XMLGregorianCalendar.setYear(int year) |
MONTH + 1 |
XMLGregorianCalendar.setMonth(int month) |
DAY_OF_MONTH |
XMLGregorianCalendar.setDay(int day) |
HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND |
XMLGregorianCalendar.setTime(int hour, int minute, int second, BigDecimal fractional) |
(ZONE_OFFSET + DST_OFFSET) / (60*1000) (分単位) |
XMLGregorianCalendar.setTimezone(int offset) *
|
* 情報の変換ロス。XML Schema 1.0 日時データ型表現で、java.util.GregorianCalendar
サマータイムのタイムゾーン ID は表現できない。
戻り値の TimeZone
フィールドは次のように計算されます。
this.getTimezone() != FIELD_UNDEFINED
のとき、this.getTimezone()
を使用して、カスタムタイムゾーン ID で java.util.TimeZone
を作成する。java.util.TimeZone.getDefault()
によって指定されているように、ホストが定義されている場合に、GregorianCalendar
デフォルトタイムゾーン値を使用する。cal
- XMLGregorianCalendar
の作成に使われる java.util.GregorianCalendar
。java.util.GregorianCalendar
から作成される XMLGregorianCalendar
NullPointerException
- cal
が null
である場合。public abstract XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
W3C XML Schema 1.0 recommendation で xsd:dateTime および関連するビルトインデータ型に許可されている完全な値空間を可能にするコンストラクタです。year
パラメータは大きな数を任意でサポートしており、fractionalSecond には無限の精度があることに注意してください。
null
値は、フィールドが設定されていないことを示します。
year
- 作成される XMLGregorianCalendar
の年。month
- 作成される XMLGregorianCalendar
の年。day
- 作成される XMLGregorianCalendar
の年。hour
- 作成される XMLGregorianCalendar
の年。minute
- 作成される XMLGregorianCalendar
の年。second
- 作成される XMLGregorianCalendar
の年。fractionalSecond
- 作成される XMLGregorianCalendar
の年。timezone
- 作成される XMLGregorianCalendar
の年。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。public XMLGregorianCalendar newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
java.util.GregorianCalendar
インスタンスを XMLGregorianCalendar
インスタンスに変換する必要がある値領域のコンストラクタです。
XMLGregorianCalendar eon
および fractionalSecond
は null
に設定されます
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
year
- 作成される XMLGregorianCalendar
の年。month
- 作成される XMLGregorianCalendar
の年。day
- 作成される XMLGregorianCalendar
の年。hour
- 作成される XMLGregorianCalendar
の年。minute
- 作成される XMLGregorianCalendar
の年。second
- 作成される XMLGregorianCalendar
の年。millisecond
- 作成される XMLGregorianCalendar
の年。timezone
- 作成される XMLGregorianCalendar
の年。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。public XMLGregorianCalendar newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
XML Schema ビルトインデータ型 date
または g*
の Java 表現を作成します。
たとえば、gYear
のインスタンスは、month
および day
パラメータに DatatypeConstants.FIELD_UNDEFINED
を設定して、このファクトリを呼び出すと作成できます。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
year
- 作成される XMLGregorianCalendar
の年。month
- 作成される XMLGregorianCalendar
の年。day
- 作成される XMLGregorianCalendar
の年。timezone
- 分単位のオフセット。DatatypeConstants.FIELD_UNDEFINED
はオプションのフィールドが設定されていないことを示す。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
XML Schema ビルトインデータ型 time
の Java インスタンスを作成します。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
hours
- 時間数minutes
- 分数seconds
- 秒数timezone
- 分単位のオフセット。DatatypeConstants.FIELD_UNDEFINED
はオプションのフィールドが設定されていないことを示す。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
XML Schema ビルトインデータ型 time の Java インスタンスを作成します。
null
値は、フィールドが設定されていないことを示します。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
hours
- 時間数minutes
- 分数seconds
- 秒数fractionalSecond
- null
の値はこのオプションのフィールドが設定されていないことを示す。timezone
- 分単位のオフセット。DatatypeConstants.FIELD_UNDEFINED
はオプションのフィールドが設定されていないことを示す。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。DatatypeConstants.FIELD_UNDEFINED
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
XML Schema ビルトインデータ型 time の Java インスタンスを作成します。
DatatypeConstants.FIELD_UNDEFINED
値は、フィールドが設定されていないことを示します。
hours
- 時間数minutes
- 分数seconds
- 秒数milliseconds
- ミリ秒数timezone
- 分単位のオフセット。DatatypeConstants.FIELD_UNDEFINED
はオプションのフィールドが設定されていないことを示す。XMLGregorianCalendar
。IllegalArgumentException
- 個々のパラメータの値が、XMLGregorianCalendar
の「日時データ対応表」で決定されるようなフィールドの最大値制限外の場合、あるいは複合値によって XMLGregorianCalendar.isValid()
で判定される無効な XMLGregorianCalendar
インスタンスが構成される場合。DatatypeConstants.FIELD_UNDEFINED
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.