Package google.type

索引

Date

誕生日などのように、カレンダーの日付全体またはその一部を表します。時間帯とタイムゾーンは、他の場所で指定されているか、重要ではありません。日付は西暦を基準にしており、次のいずれかを表します。

  • 年の値がゼロ以外である月と日の値を含む完全な日付
  • 年の値がゼロである月と日(記念日など)。
  • 月と日の値がゼロである単独の年。
  • 日の値がゼロである年と月(クレジット カードの有効期限など)

関連するタイプ:

フィールド
year

int32

その日付の年。1~9999、または年のない日付を指定する場合は 0 にする必要があります。

month

int32

1 年の中の月。1~12、または月と日のない年を指定する場合は 0 にする必要があります。

day

int32

1 月の中の日付。1~31 で、その年と月で有効な値にする必要があります。または、日が重要でない場合は年のみか年と月を指定するには 0 にする必要があります。

DateTime

常用時(または物理時間)を表します。

この型は、次のいずれかの方法で常用時を表すことができます。

  • utc_offset を設定し、time_zone を設定しない場合: UTC から特定のオフセットがある暦日の常用時。
  • time_zone を設定し、utc_offset を設定しない場合: 特定のタイムゾーンにおける暦日の常用時。
  • time_zone も utc_offset も設定しない場合: 暦日の常用時(現地時間)。

日付は先発グレゴリオ暦を基準にしています。

年、月、日が 0 の場合は、DateTime に具体的な年、月、日が指定されていないとみなされます。

この型は、すべての日付と時刻のフィールドが設定され、time_offset oneof のいずれかのケースが設定されている場合、物理時間を表すために使用されることもあります。代わりに、物理時間に Timestamp メッセージを使用することを検討してください。ユーザーのタイムゾーンも保存する場合は、別のフィールドで保存できます。

この型は、一部のアプリケーションが求めるよりも柔軟性が高い場合があります。アプリケーションの制限事項を文書化して検証してください。

フィールド
year

int32

省略可。日付の年。1~9999、または日時に年を指定しない場合は 0 にする必要があります。

month

int32

省略可。月。1~12、または日時に月を指定しない場合は 0 にする必要があります。

day

int32

省略可。日。1~31(年と月に対して有効な値)、または日時に日を指定しない場合は 0 にする必要があります。

hours

int32

省略可。時間(24 時間形式)。0~23 で指定します。デフォルトは 0(午前 0 時)です。API ではビジネスの終了時間などのシナリオにおいて、値 "24:00:00" を許可することもできます。

minutes

int32

省略可。分。0~59 で指定します。デフォルトは 0 です。

seconds

int32

省略可。秒。通常は 0~59 で指定します。デフォルトは 0 です。API がうるう秒を許可する場合、値 60 が許可されます。

nanos

int32

省略可。秒の小数部分(ナノ秒単位)。0~999,999,999 で指定します。デフォルトは 0 です。

共用体フィールド time_offset。省略可。DateTime の UTC オフセットまたはタイムゾーンを指定します。タイムゾーン データは将来変更される可能性があるため、慎重に選択してください(たとえば、国が夏時間の開始日と終了日を変更し、影響を受ける範囲の将来の DateTime がすでに保存されている場合など)。省略した場合、DateTime は現地時間とみなされます。time_offset は次のいずれかになります。
utc_offset

Duration

UTC オフセット。-18 時間から +18 時間の範囲で、秒数を整数で指定します。たとえば UTC オフセットが -4 時間の場合は、{ seconds: -14400 } と表します。

time_zone

TimeZone

タイムゾーン。

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

string

Common Expression Language 構文による式のテキスト表現。

title

string

省略可。式のタイトル。式の目的を説明する短い文字列です。たとえば、式を入力できる UI でこれを使用します。

description

string

省略可。式の説明。式を説明する長いテキストです。たとえば、UI で式にカーソルを合わせたときに表示されます。

location

string

省略可。エラー報告用に式の場所を示す文字列。たとえば、ファイル名とファイル内の位置です。

タイムゾーン

IANA タイムゾーン データベースのタイムゾーンを表します。

フィールド
id

string

IANA タイムゾーン データベースのタイムゾーン。たとえば、「America/New_York」。

version

string

省略可。IANA タイムゾーン データベースのバージョン番号。たとえば、「2019a」。