xpath2 | durations, date and time functions

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  関数 > 関数ライブラリレファレンス >

xpath2 | durations, date and time functions

XPath2 関数は XSLT2 または XQuery 言語が選択されている状態で利用することができます。

 

XPath 2 duration, date, and time functions 内にある関数を使用することで、タイムゾーンの日時を調整し、date-time データから特定のコンポーネントを抽出、複数ある日時の値から期間を取得することができます。

 

'Adjust-to-Timezone' 関数

これら関数はそれぞれ date、time、または dateTime データ型の値を最初の入力パラメーターとして受け取り、 2 番目のパラメーターから得られた値により、タイムゾーンの削除や編集を行います。

 

最初のパラメーターにタイムゾーン情報が含まれていない(例えば 2009-01 という日付や 14:00:00 という時刻)場合、adjust-to-timezone 関数を使った以下のような場合が考えられます:

 

(2番目の入力パラメーターである)timezone パラメーターが与えられている場合、 2 番目のパラメーターから得られた値がタイムゾーンとして使用されます。2 番目のパラメーターから得られたタイムゾーンが追加されます。
timezone パラメーターが与えられていない場合、システムのタイムゾーンである暗黙的なタイムゾーンが結果に含まれます。システムのタイムゾーンが含まれます。
timezone パラメーターが空の場合、結果にタイムゾーンは含まれません。

 

最初のパラメーターにタイムゾーン情報(例えば 2009-01-01+01:00 という日付や 14:00:00+01:00 という時刻)が含まれている場合、adjust-to-timezone 関数を使った以下のような場合が考えられます:

 

( 2 番目の入力パラメーターである)timezone パラメーターが与えられている場合、 2 番目のパラメーターから得られた値がタイムゾーンとして使用されます。オリジナルのタイムゾーンが、 2 番目のパラメーターから得られたタイムゾーンに置き換えられます。
timezone パラメーターが与えられていない場合、システムのタイムゾーンである暗黙的なタイムゾーンが結果に含まれます。オリジナルのタイムゾーンがシステムのタイムゾーンに置き換えられます。
timezone パラメーターが空の場合、結果にタイムゾーンは含まれません。

 

 

'From' 関数

これら from 関数は、(i) 日付や時刻のデータ、または (ii) 期間を表すデータから特定のコンポーネントを抽出するのに使用されます。xs:decimal データ型の結果が返されます。

 

日付または時刻のデータから、コンポーネントを抽出する例として、以下のスクリーンショットにあるようなマッピングを使用します。

FXdatesfrom

 

入力パラメーターには xs:date 型の日付 (2009-01-01) が与えられています。day-from-date 関数により、xs:decimal データ型の日付コンポーネントが抽出されます。

 

期間型のデータから時刻コンポーネントを抽出する場合、(年と月の抽出するには)期間を xs:yearMonthDuration または(日、時、分、秒の抽出には) xs:dayTimeDuration として指定する必要があります。xs:decimal 型の結果が得られます。P2DT0H という xs:dayTimeDuration 型の入力を days-from-duration 関数へ与えているマッピング例を以下のスクリーンショットに示します。結果は xs:decimal 型の 2 となります。

 

FXdatesfromduration

 

 

'Subtract' 関数

用意されている 3 個の subtraction 関数により、時間に関する値を他の値から差し引き、期間の値を得ることができます。subtract-dates、subtract-times、そして subtract-dateTimes という関数が用意されています。

 

subtract-dates 関数を使用することで、 2 つの日付を差し引いた期間(2009-10-22 - 2009-09-22)を求める例を、以下のスクリーンショットにて示します。xs:dayTimeDuration 型の P30D が結果として得られます。

 

FXdatessubtract


(C) 2019 Altova GmbH