Extensible Weather Data Protocol
Attenzione: il presente documento non è stato ancora approvato come UFFICIALE!
Indice
Introduzione
L'eXtensible Weather Data Protocol è un formato proposto e adottato dall'Associazione MeteoNetwork ONLUS per il trasferimento di dati realtime (puntuali)
Licenza
Il protocollo, quindi anche questo documento, è completamente libero, privo di alcun vincolo commerciale.
Sintassi
Il protocollo utilizza come formato JSON (JavaScript Object Notation)
Revisioni
Revisione 1.1 (prima versione)
Campi e formato dati
Di seguito viene elencata la stringa completa:
Attenzione: per i numeri è specificata la dimesione intera e decimale.
Esempio: number(2,1): 2 numeri interi e 1 decimale: 12.6
{
"code": "string",
"protocol": "string",
"software": "string",
"data": [
{"datetime": "datetime ISO 8601",
"values": {
"temperature": {
"current": number(2,1),
"dailymax": number(2,1),
"dailymin": number(2,1),
"dailymaxtime": "datetime ISO 8601",
"dailymintime": "datetime ISO 8601"
},
"humidity": {
"current": number(3,0),
"dailymax": number(3,0),
"dailymin": number(3,0),
"dailymaxtime": "datetime ISO 8601",
"dailymintime": "datetime ISO 8601"
},
"rain": {
"total": number(4,2),
"currentrate": number(4,2),
"maxdailyrate": number(4,2),
"maxdailyratetime": "datetime ISO 8601"
},
"wind": {
"currentmed": number(3,1),
"currentmax": number(3,1),
"currentdirmed": "string",
"currentdirmax": "string"
"dailymed": number(3,1),
"dailymax": number(3,1),
"dailydirmed": "string",
"dailydirmax": "string",
"dailymaxtime": "datetime ISO 8601"
},
"pressure": {
"current": number(4,1),
"dailymax": number(4,1),
"dailymin": number(4,1),
"dailymaxtime": "datetime ISO 8601",
"dailymintime": "datetime ISO 8601"
},
"solar": {
"current": number(4,1),
"dailymax": number(4,1),
"dailymin": number(4,1),
"dailymaxtime": "datetime ISO 8601",
"dailymintime": "datetime ISO 8601"
},
"uv": {
"current": number(4,1),
"dailymax": number(4,1),
"dailymin": number(4,1),
"dailymaxtime": "datetime ISO 8601",
"dailymintime": "datetime ISO 8601"
}
}
}
]
}
Considerazioni
Code
E' il codice stazione, non vincolante a un massimo di caratteri. Per la rete MeteoNetwork è in formato cccxxx (es. lmb999).
Protocol
Formato stringa. Fa riferimento alla versione del protocollo (es. 2.1).
Non è in formato numerico per compatibilità con formati futuri
Software
Stringa di massimo 5 caratteri che identifica il software utilizzato (3 caratteri per il software + 2 per la versione del software).
Qui una tabella di riferimento:
| WeatherLink | WLX |
| Virtual Weather Station | VWS |
| Weather Display | WDX |
| MeteoLog | MLX |
| GraphWeather | GWX |
Data
Array JSON che contiene un sub-array diviso per dato puntuale
Datetime
Contiene il timestamp dell'array con i dati puntuali.
E' in formato ISO 8601 o formato SQL.
E' nel formato
aaaa-mm-gg hh:mm:ss[tt]
dove tt è il timestamp in formato +[-]0000 che fa riferimento a UTC (notazione sempre solare).
Esempio:
per i dati adattati con l'ora locale italiana, che fa riferimento alla data 2010-04-02 12:23:00 UTC:
- In inverno dovrà avere: 2010-04-02 12:23:00+0100 - In estate dovrà avere 2010-04-02 12:23:00+0200
Attenzione
E' prevista nella norma ma NON AMMESSA nel presente protocollo la notazione ZULU (z) per indicare l'UTC +0000
Temperature
Formato numerico di max 2 cifre intere e max 1 cifra decimale.
Utilizza il formato GRADI CENTIGRADI senza notazione °C
La separazione decimale è prevista con il Punto e NON la virgola
Esempio: per indicare, in formato "italiano" 14,6°C verrà inserito 14.6
Humidity
Formato numerico di max 3 cifre intere e NESSUNA cifra decimale.
Utilizza il formato PERCENTUALE per l'UMIDITA' RELATIVA
Esempio: per indicare 67% di UR verrà inserito 67
Rain
Total
Pioggia accumulata giornaliera (quindi, NON singolo scatto del pluviometro)
Formato numerico di max 4 cifre intere e 2 cifre decimali.
Utilizza il formato METRICO in MILLIMETRI La separazione decimale è prevista con il Punto e NON la virgola
Esempio: per indicare 65,3mm di pioggia verrà inserito 65.3
Rate
Rateo Pioggia (Rain Rate) MASSIMA del dato puntuale
Formato numerico di max 4 cifre intere e 2 cifre decimali.
Utilizza il formato METRICO in MILLIMETRI La separazione decimale è prevista con il Punto e NON la virgola
Esempio: per indicare 165,3mm/h di pioggia verrà inserito 165.3
Wind
Med
Indica la velocità media del vento.
Formato numerico di max 3 cifre intere e max 1 cifra decimale.
Utilizza il formato CHILOMETRI ORARI senza notazione km/h
La separazione decimale è prevista con il Punto e NON la virgola
Esempio: per indicare, in formato "italiano" 43,6km/h verrà inserito 43.6
Max
Indica la raffica massima del vento.
Formato numerico di max 3 cifre intere e max 1 cifra decimale.
Utilizza il formato CHILOMETRI ORARI senza notazione km/h
La separazione decimale è prevista con il Punto e NON la virgola
Esempio: per indicare, in formato "italiano" 43,6km/h verrà inserito 43.6
Dirmed
Indica la direzione media del vento.
Formato stringa di max 3 caratteri.
Tabella di conversione da GRADI a formato STRINGA:
N 0 NNE 22.5 NE 45 ENE 67.5 E 90 ESE 112.5 SE 135 SSE 157.5 S 180 SSW 202.5 SW 225 WSW 247.5 W 270 WNW 292.5 NW 315 NNW 337.5
Dirmax
Indica la direzione della raffica massima del vento.
Formato stringa di max 3 caratteri.
Pressure
Indica la pressione barometrica, in formato Ettopascal (hPa), 4 cifre intere e 1 decimale.
Esempio: 1024,3hPa verrà inserito come 1024.3