索引
DateTime
常用時(または時刻)を表します。
このタイプは、次のいずれかの方法で民間時間を表すことができます。
- utc_offset が設定され、time_zone が設定されていない場合: UTC からの特定のオフセットを持つ暦日における常用時。
- time_zone が設定され、utc_offset が設定されていない場合: 特定のタイムゾーンの暦日における常用時。
- time_zone と utc_offset のどちらも設定されていない場合: カレンダーの日付の常用時刻(ローカル時間)。
日付は先発グレゴリオ暦に基づき、
year、month、day が 0 の場合、DateTime には特定の年、月、日が設定されていないと見なされます。
この型は、すべての日時フィールドが設定され、time_offset
oneof のいずれかのケースが設定されている場合に、物理的な時刻を表すために使用することもできます。代わりに、物理的な時間には Timestamp
メッセージを使用することを検討してください。ユースケースでユーザーのタイムゾーンも保存する場合は、別のフィールドで保存できます。
このタイプは、一部のアプリケーションで必要とされるよりも柔軟性があります。アプリケーションの制限事項を必ず記録し、検証してください。
フィールド | |
---|---|
year |
省略可。日付の年。1 ~ 9999 の範囲で指定するか、年のない日時を指定する場合は 0 にする必要があります。 |
month |
省略可。月。1 ~ 12 の範囲で指定するか、月のない日時を指定する場合は 0 にする必要があります。 |
day |
省略可。日。1 ~ 31 で、その年と月に対して有効である必要があります。日を指定しない日時を指定する場合は 0 にする必要があります。 |
hours |
省略可。時間(24 時間形式)。0 ~ 23 の範囲で指定します。デフォルトは 0(午前 0 時)です。API ではビジネスの終了時間などのシナリオにおいて、値 "24:00:00" を許可することもできます。 |
minutes |
省略可。分。0 ~ 59 の範囲で指定します。デフォルトは 0 です。 |
seconds |
省略可。秒。通常は 0 ~ 59 の範囲で指定します。デフォルトは 0 です。API がうるう秒を許可する場合、値 60 が許可されます。 |
nanos |
省略可。秒の小数部分(ナノ秒単位)。0 ~ 999,999,999 の範囲で指定します。デフォルトは 0 です。 |
共用体フィールド time_offset 。省略可。UTC オフセットまたは DateTime のタイムゾーンを指定します。タイムゾーン データが将来変更される可能性があることを考慮して、慎重に選択してください(たとえば、ある国で夏時間の開始日または終了日が変更され、影響を受ける期間の将来の DateTime がすでに保存されている場合など)。省略した場合、DateTime はローカル時間と見なされます。time_offset は次のいずれかになります。 |
|
utc_offset |
UTC オフセット。-18 時間~+18 時間の整数秒を指定する必要があります。たとえば、UTC オフセットが -4:00 の場合は、{ seconds: -14400 } と表されます。 |
time_zone |
タイムゾーン。 |
Expr
Common Expression Language(CEL)構文のテキスト式を表します。CEL は C に似た式言語です。CEL の構文とセマンティクスは、https://github.com/google/cel-spec に記載されています。
例(比較):
title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"
例(同等):
title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"
例(論理):
title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"
例(データ操作):
title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"
式内で参照できる正確な変数と関数は、式を評価するサービスによって決定されます。詳細については、サービスのドキュメントをご覧ください。
フィールド | |
---|---|
expression |
Common Expression Language 構文による式のテキスト表現。 |
title |
省略可。式のタイトル。式の目的を説明する短い文字列です。たとえば、式を入力できる UI でこれを使用します。 |
description |
省略可。式の説明。式を説明する長いテキストです。たとえば、UI で式にカーソルを合わせたときに表示されます。 |
location |
省略可。エラー報告用に式の場所を示す文字列。たとえば、ファイル名とファイル内の位置です。 |
タイムゾーン
IANA タイムゾーン データベースのタイムゾーンを表します。
フィールド | |
---|---|
id |
IANA タイムゾーン データベースのタイムゾーン(例: "America/New_York")。 |
version |
省略可。IANA タイムゾーン データベースのバージョン番号(例: "2019a")。 |