Duration

Czas trwania reprezentuje podpisany, stały przedział czasu wyrażony jako liczba sekund i ułamków sekund w rozdzielczości nanosekundy. Jest niezależny od kalendarza i pojęć takich jak „dzień”. lub „miesiąc”. Wiąże się to z tym, że różnica między 2 wartościami sygnatury czasowej jest czasem trwania, którą można dodać do sygnatury czasowej lub od niej odjąć. Zakres wynosi około +-10 000 lat.

Zapis JSON
{
  "seconds": string,
  "nanos": integer
}
Pola
seconds

string (int64 format)

Podpisane sekundy z przedziału czasu. Musi mieścić się w przedziale od -315 576 000 000 do +315 576 000 000 włącznie. Uwaga: te progi oblicza się w następujący sposób: 60 s/min * 60 min/h * 24 godz./dzień * 365,25 dni/rok * 10 000 lat.

nanos

integer

Podpisane ułamki sekundy w rozdzielczości nanosekundowej zakresu czasu. Czasy krótszy niż 1 sekunda są przedstawiane za pomocą pola seconds o wartości 0 i wartości dodatniej lub ujemnej nanos. Jeśli czas trwania wynosi co najmniej 1 sekundę, wartość inna niż 0 w polu nanos musi być taki sam jak w polu seconds. Musi mieścić się w przedziale od -999 999 999 do +999 999 999 włącznie.