Indice
Date
(messaggio)DayOfWeek
(enum)Interval
(messaggio)PhoneNumber
(messaggio)PhoneNumber.ShortCode
(messaggio)PostalAddress
(messaggio)TimeOfDay
(messaggio)TimeZone
(messaggio)
Data
Rappresenta una data di calendario intera o parziale, come un compleanno. L'ora del giorno e il fuso orario sono specificati altrove o non sono significativi. La data è relativa al calendario gregoriano. Può trattarsi di uno dei seguenti valori:
- Una data completa, con valori diversi da zero per anno, mese e giorno.
- Un mese e un giorno con zero anni (ad esempio, un anniversario).
- Un anno a sé stante, con uno zero mese e uno zero-day.
- Un anno e un mese, con zero day (ad esempio, la data di scadenza della carta di credito).
Tipi correlati:
google.type.TimeOfDay
google.type.DateTime
google.protobuf.Timestamp
Campi | |
---|---|
year |
Anno della data. Deve essere compreso tra 1 e 9999 oppure 0 per specificare una data senza anno. |
month |
Mese dell'anno. Il valore deve essere compreso tra 1 e 12 oppure 0 per specificare un anno senza mese e giorno. |
day |
Giorno di un mese. Deve essere compreso tra 1 e 31 e deve essere valido per l'anno e il mese oppure 0 per specificare un anno da solo o un anno e mese in cui il giorno non è significativo. |
DayOfWeek
Rappresenta un giorno della settimana.
Enum | |
---|---|
DAY_OF_WEEK_UNSPECIFIED |
Il giorno della settimana non è specificato. |
MONDAY |
Lunedì |
TUESDAY |
Martedì |
WEDNESDAY |
Mercoledì |
THURSDAY |
Giovedì |
FRIDAY |
venerdì |
SATURDAY |
Sabato |
SUNDAY |
domenica |
Intervallo
Rappresenta un intervallo di tempo, codificato come inizio timestamp (incluso) e fine timestamp (escluso).
L'inizio deve essere inferiore o uguale alla fine. Quando l'inizio corrisponde alla fine, l'intervallo è vuoto (non corrisponde a un orario). Quando non sono specificati entrambi i valori, l'intervallo può corrispondere a qualsiasi momento.
Campi | |
---|---|
start_time |
Campo facoltativo. Inizio inclusivo dell'intervallo. Se specificato, un timestamp corrispondente a questo intervallo dovrà essere uguale o successivo all'inizio. |
end_time |
Campo facoltativo. Fine dell'intervallo. Se specificato, un timestamp corrispondente a questo intervallo dovrà essere precedente alla fine. |
PhoneNumber
Un oggetto che rappresenta un numero di telefono, adatto come formato di cavo API.
Questa rappresentazione:
non deve essere utilizzato per la formattazione specifica di un numero di telefono, ad esempio "+1 (650) 253-0000 ext. 123"
non è progettato per un'archiviazione efficiente
- potrebbero non essere adatte per le chiamate: per analizzare il numero a questo scopo dovrebbero essere utilizzate librerie specializzate (vedi riferimenti)
Per fare qualcosa di significativo con questo numero, ad esempio formattarlo per vari casi d'uso, convertilo prima in un oggetto i18n.phonenumbers.PhoneNumber
.
Ad esempio, in Java si tratta di:
com.google.type.PhoneNumber wireProto = com.google.type.PhoneNumber.newBuilder().build(); com.google.i18n.phonenumbers.Phonenumber.PhoneNumber phoneNumber = PhoneNumberUtil.getInstance().parse(wireProto.getE164Number(), "ZZ"); if (!wireProto.getExtension().isEmpty()) { phoneNumber.setExtension(wireProto.getExtension()); }
Riferimenti: - https://github.com/google/libphonenumber
Campi | |
---|---|
extension |
L'interno del numero di telefono. L'estensione non è standardizzata nei suggerimenti ITU, ad eccezione di una serie di numeri con una lunghezza massima di 40 cifre. Oltre ai numeri, potrebbero essere memorizzati qui altri caratteri di composizione, come "," (che indicano un'attesa) o "#". Tieni presente che al momento nessuna regione utilizza estensioni con codici brevi, pertanto questo campo viene solitamente impostato solo in combinazione con un numero E.164. È conservato separatamente dal numero E.164 per consentire le estensioni di codice brevi in futuro. |
Campo unione kind . Obbligatoria. Un numero normale o un codice breve. In futuro potranno essere aggiunti nuovi campi a quello di seguito, quindi i clienti dovrebbero ignorare i numeri di telefono per i quali non è stato impostato nessuno dei campi utilizzati per la codifica. kind può essere solo uno dei seguenti: |
|
e164_number |
Il numero di telefono, rappresentato dal segno più ("+"), seguito da un numero di telefono in un formato informale ITU E.164 costituito dal prefisso internazionale (da 1 a 3 cifre) e dal numero dell'abbonato, senza spazi aggiuntivi o formattazione, ad esempio: - corretta: "+15552220123" - errata: "+1 (555) 222-01234 x123". Il formato ITU E.164 limita quest'ultimo a 12 cifre, ma in pratica non tutti i paesi lo rispettano, quindi allentiamo questa restrizione. Non sono consentiti numeri solo nazionali. Riferimenti: - https://www.itu.int/rec/T-REC-E.164-201011-I - https://en.wikipedia.org/wiki/E.164. - https://en.wikipedia.org/wiki/List_of_country_calling_codes |
short_code |
Un codice breve. Riferimenti: - https://en.wikipedia.org/wiki/Short_code |
ShortCode
Un oggetto che rappresenta un codice breve, ossia un numero di telefono generalmente molto più breve dei normali numeri di telefono e che può essere utilizzato per indirizzare messaggi nei sistemi MMS e SMS, nonché per le chiamate abbreviate (ad es. "Invia un SMS al 611 per sapere quanti minuti hai ancora a disposizione sul tuo piano").
I codici brevi sono limitati a una regione e non sono componibili a livello internazionale, il che significa che lo stesso codice breve può esistere in regioni diverse, con utilizzo e prezzi diversi, anche se le regioni condividono lo stesso prefisso internazionale (ad es. Stati Uniti e Canada).
Campi | |
---|---|
region_code |
Obbligatoria. Il codice regione BCP-47 della località in cui è possibile effettuare chiamate a questo codice breve, ad esempio "US" e "BB". Riferimenti: - http://www.unicode.org/reports/tr35/#unicode_region_subtag |
number |
Obbligatoria. Le cifre del codice breve, senza il segno più ("+") o il prefisso internazionale, ad esempio "611". |
PostalAddress
Rappresenta un indirizzo postale, ad esempio per gli indirizzi di consegna postale o di pagamento. Dato un indirizzo postale, un servizio postale può consegnare gli articoli a una sede, una casella postale o simili. Non è progettato per creare modelli di località geografiche (strade, città, montagne).
Nell'utilizzo tipico, un indirizzo verrebbe creato tramite l'input dell'utente o importando dati esistenti, a seconda del tipo di processo.
Consigli sull'inserimento / modifica di indirizzi: - Usa un widget degli indirizzi pronto per l'internazionalizzazione, come https://github.com/google/libaddressinput. - Agli utenti non dovrebbero essere mostrati elementi di interfaccia utente per l'inserimento o la modifica di campi al di fuori dei paesi in cui viene utilizzato quel campo.
Per ulteriori indicazioni su come utilizzare questo schema, consulta la pagina: https://support.google.com/business/answer/6397478
Campi | |
---|---|
revision |
La revisione dello schema di Tutte le nuove revisioni devono essere compatibili con le versioni precedenti. |
region_code |
Obbligatoria. Codice regione CLDR del paese o della regione dell'indirizzo. Ciò non viene mai dedotto e spetta all'utente assicurarsi che il valore sia corretto. Per informazioni dettagliate, visita le pagine https://cldr.unicode.org/ e https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html. Esempio: "CH" per la Svizzera. |
language_code |
Campo facoltativo. Codice lingua BCP-47 dei contenuti di questo indirizzo (se noto). Spesso è la lingua dell'interfaccia utente del modulo di input o dovrebbe corrispondere a una delle lingue utilizzate nel paese/nella regione dell'indirizzo o alle lingue equivalenti traslitterate. Questo può influenzare la formattazione in alcuni paesi, ma non è fondamentale per la correttezza dei dati e non influirà mai su convalida o altre operazioni correlate alla formattazione. Se questo valore non è noto, dovrebbe essere omesso (anziché specificare un valore predefinito potenzialmente errato). Esempi: "zh-Hant", "ja", "ja-Latn", "en". |
postal_code |
Campo facoltativo. Codice postale dell'indirizzo. Non tutti i paesi utilizzano o richiedono la presenza di codici postali, ma se vengono utilizzati, possono attivare un'ulteriore convalida con altre parti dell'indirizzo (ad es. convalida stato/codice postale negli Stati Uniti). |
sorting_code |
Campo facoltativo. Codice di ordinamento aggiuntivo specifico per il paese. Questa opzione non è utilizzata nella maggior parte delle regioni. Dove viene utilizzato, il valore è una stringa come "CEDEX", facoltativamente seguita da un numero (ad es. "CEDEX 7") o solo un numero, che rappresenta il "codice del settore" (Giamaica), "indicatore dell'area di consegna" (Malawi) o "indicatore dell'ufficio postale" (ad es. Costa d'Avorio). |
administrative_area |
Campo facoltativo. Suddivisione amministrativa di livello più elevato utilizzata per gli indirizzi postali di un paese o di una regione. Ad esempio, può essere uno stato, una provincia, un oblast o una prefettura. Nello specifico, per la Spagna si tratta della provincia e non della comunità autonoma (ad es. "Barcellona" e non "Catalogna"). Molti paesi non utilizzano un'area amministrativa negli indirizzi postali. Ad esempio, in Svizzera deve essere lasciato vuoto. |
locality |
Campo facoltativo. In genere si riferisce alla porzione di città dell'indirizzo. Esempi: città degli Stati Uniti, comune in Italia, città del Regno Unito Nelle regioni del mondo in cui le località non sono ben definite o non si adattano bene a questa struttura, lascia la località vuota e utilizza le righe dell'indirizzo. |
sublocality |
Campo facoltativo. Quartiere dell'indirizzo. Ad esempio, possono essere quartieri, quartieri e distretti. |
address_lines[] |
Righe di indirizzo non strutturate che descrivono i livelli inferiori di un indirizzo. Poiché i valori nelle righe indirizzo non hanno informazioni sul tipo e a volte possono contenere più valori in un singolo campo (ad es. "Austin, TX"), è importante che l'ordine delle linee sia chiaro. L'ordine delle righe dell'indirizzo deve essere "ordine busta" per il paese o la regione dell'indirizzo. Nei luoghi in cui questo valore può variare (ad es. in Giappone), viene utilizzato address_language per renderlo esplicito (ad es. "ja" per ordinamenti di grandi dimensioni e "ja-Latn" o "en" per valori di piccole dimensioni). In questo modo, è possibile selezionare la riga più specifica di un indirizzo in base alla lingua. La rappresentazione strutturale minima consentita di un indirizzo è composta da un valore regional_code con tutte le informazioni rimanenti inserite in address_lines. Sarebbe possibile formattare un indirizzo del genere in modo molto approssimativo senza geocodifica, ma non è stato possibile effettuare alcun ragionamento semantico su nessuno dei componenti dell'indirizzo fino a quando non è stato almeno parzialmente risolto. Creare un indirizzo che contiene solo country_code e address_lines; in seguito, la geocodifica è il metodo consigliato per gestire indirizzi completamente non strutturati (anziché indovinare quali parti dell'indirizzo devono essere località o aree amministrative). |
recipients[] |
Campo facoltativo. Il destinatario all'indirizzo. In determinate circostanze, questo campo può contenere informazioni su più righe. Ad esempio, potrebbero contenere informazioni relative alla "cura di". |
organization |
Campo facoltativo. Il nome dell'organizzazione all'indirizzo. |
TimeOfDay
Rappresenta un'ora del giorno. La data e il fuso orario non sono significativi o sono specificati altrove. Un'API può scegliere di consentire i secondi intercalari. I tipi correlati sono google.type.Date
e google.protobuf.Timestamp
.
Campi | |
---|---|
hours |
Le ore del giorno nel formato 24 ore. Deve essere compreso tra 0 e 23. Un'API può scegliere di consentire il valore "24:00:00" per scenari come l'orario di chiusura dell'attività. |
minutes |
Minuti dell'ora del giorno. Il valore deve essere compreso tra 0 e 59. |
seconds |
Secondi di minuti del tempo. Normalmente deve essere compreso tra 0 e 59. Un'API potrebbe consentire il valore 60 se consente i secondi intercalari. |
nanos |
Frazioni di secondi in nanosecondi. Deve essere compreso tra 0 e 999.999.999. |
TimeZone
Rappresenta un fuso orario del database dei fusi orari IANA.
Campi | |
---|---|
id |
Fuso orario del database di fusi orari IANA, ad esempio "America/New_York". |
version |
Campo facoltativo. Numero di versione di IANA Time Zone Database, ad esempio "2019a". |