Medeni zamanı (veya bazen fiziksel zamanı) temsil eder.
Bu tür, toplumsal bir süreyi birkaç olası şekilde temsil edebilir:
- utcOffset ayarlandığında ve saat dilimi ayarlanmadan bırakıldığında: Bir takvim gününde UTC ile belirli bir uzaklığa sahip günlük saat.
- Saat dilimi ayarlandığında ve utcOffset ayarı ayarlanmadan bırakılırsa: Belirli bir saat dilimindeki bir takvim gününde medeni saat.
- Saat Dilimi veya utcOffset ayarlanmadığında: Yerel saatteki bir takvim gününde günlük saat.
Tarih, Proleptik Miladi Takvime göredir.
Yıl, ay veya gün 0 ise DateTime'ın sırasıyla belirli bir yıl, ay veya gün olmadığı kabul edilir.
Bu tür, tüm tarih ve saat alanlarının ayarlanması ve time_offset
için bir ayarın ayarlanması durumunda fiziksel bir zamanı göstermek için de kullanılabilir. Bunun yerine fiziksel zaman için Timestamp
mesajı kullanabilirsiniz. Kullanım alanınız kullanıcının saat dilimini de kaydetmek istiyorsa bu işlem başka bir alanda yapılabilir.
Bu tür, bazı uygulamaların isteyebileceğinden daha esnektir. Başvurunuzun sınırlarını belgeleyip doğruladığınızdan emin olun.
JSON gösterimi |
---|
{ "year": integer, "month": integer, "day": integer, "hours": integer, "minutes": integer, "seconds": integer, "nanos": integer, // Union field |
Alanlar | |
---|---|
year |
İsteğe bağlı. Tarih yılı. 1 ile 9999 arasında olmalıdır. Yıl içermeyen bir tarih ve saat belirtilmişse 0 değer girilmelidir. |
month |
İsteğe bağlı. Yılın ayı. 1 ile 12 arasında olmalıdır. Ay içermeyen bir tarih ve saat belirtiliyorsa 0 değeri girilmelidir. |
day |
İsteğe bağlı. Ayın günü. 1 ile 31 arasında bir değer olmalı ve yıl ve ay için geçerlidir. Tarih, gün içermeyen bir tarih ve saat belirtiyorsa bu değer 0 olmalıdır. |
hours |
İsteğe bağlı. 24 saat biçiminde günün saatleri. 0 ile 23 arasında olmalıdır; varsayılan olarak 0 (gece yarısı) değerine ayarlanır. Bir API, "24:00:00" değerine izin vermeyi seçebilir. gibi senaryolar için oldukça yararlı olabilir. |
minutes |
İsteğe bağlı. Günün saatindeki dakikalar. 0 ile 59 arasında olmalıdır. Varsayılan değer 0'dır. |
seconds |
İsteğe bağlı. Saniye cinsinden dakika. Normalde 0 ile 59 arasında olmalıdır; varsayılan değer 0'dır. Bir API, artık saniyeye izin veriyorsa 60 değerine izin verebilir. |
nanos |
İsteğe bağlı. Nanosaniye cinsinden saniyenin kesirleri. 0 ile 999.999.999 arasında bir değer olmalıdır. Varsayılan değer 0'dır. |
Birleştirme alanı time_offset . İsteğe bağlı. UTC farkını veya DateTime'ın saat dilimini belirtir. Saat dilimi verilerinin gelecekte değişebileceğini (örneğin, bir ülkenin YS başlangıç/bitiş tarihlerini değiştirmesi ve etkilenen aralıktaki gelecekteki DateTime'ların zaten saklanmış olması) göz önünde bulundurularak bunlar arasında dikkatlice seçim yapın. Atlanırsa, DateTime öğesinin yerel saatte olduğu kabul edilir. time_offset şunlardan yalnızca biri olabilir: |
|
utcOffset |
UTC farkı. Tam saniye olmalıdır, -18 saat ile +18 saat arasında olmalıdır. Örneğin, -4:00'lık bir UTC saat farkı, { seconds: -14400 } olarak temsil edilir. En fazla dokuz kesir basamağı olan ve " |
timeZone |
Saat dilimi. |
TimeZone
IANA Saat Dilimi Veritabanı'ndan bir saat dilimini temsil eder.
JSON gösterimi |
---|
{ "id": string, "version": string } |
Alanlar | |
---|---|
id |
IANA Saat Dilimi Veritabanı saat dilimi, ör. "Amerika/New_York". |
version |
İsteğe bağlı. IANA Saat Dilimi Veritabanı sürüm numarası, ör. "2019a". |