summaryrefslogtreecommitdiffstats
path: root/kweather/README.txt
blob: 2ca92e28fd89b96d7e85cdd734da8a71215b76ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
January 2021
====================
Stations are retrieved from https://tgftp.nws.noaa.gov/data/nsd_cccc.txt

wget -O data/nsd_cccc.txt https://tgftp.nws.noaa.gov/data/nsd_cccc.txt

dos2unix data/nsd_cccc.txt

data/station_names.txt is used to provide correct orthography of the area
where the station is located, which is used in the configuration dialog 
of kweather applet.

The format of station_names.txt is ICAO;status;region_state;name;INFO1;INFO2

If status is one of none|false|na|decomissioned the station is ignored.
INFO1 is what was previously the 5th position in weather_stations.desktop
makred with ------
INFO2 is what was previously the 6th position in weather_stations.desktop
makred with ---

The source nsd_cccc.txt has illed information and structure that needs to be
corrected in the files used in kweather. Some of the problems are:
1. decomissioned stations
2. names of station locations

The genstations.pl is based on following idea

Based on the input nsd_cccc.txt and the station_names.txt file we can 
generate stations.dat like following:

  for each station in nsd_cccc.txt do
	check if station ID matches one in station_names.txt
	if it matches then
    	use the name of the station
    else
    	use the name from nsd_cccc.txt
    write entry/line in stations.dat
    
Based on stations.dat and weather_stations.desktop.in we can generate 
weather_stations.desktop.
weather_stations.desktop will be updated with the names from stations.dat 
and the additional information will be preserved like following.
  for each station in stations.dat 
	for each region from weather_stations.desktop.in 
		if state is provided in stations.dat
			use the state to build a key with region and state
		else
			for each state in the states of the region
				use the state to build a key
				if section for this key exists
				    and
					if name of the section matches
						stop processing
						proper section was found
						we add the station here
                        write entry for the station 

There are few problems with this approach and the ill provided nsd_cccc.txt data

1. States are missing and thus correlation between station and state can not be done
2. When State is missing, based on the country/state name some entries are ambig
	Example Georgia and US state of Georgia

Country list seemed to be used for the country names and as convention here
wget ftp://ftp.ncdc.noaa.gov/pub/data/noaa/country-list.txt but the FIPS notation was 
dropped in 2008 as a standard, however continiues to be used.

    "The Census Bureau decided that, based on decades of using the terminology FIPS to
    describe its codes, it would continue to use the FIPS name for its updated codes, 
    where FIPS now stood for FIP "Series", since there no longer existed an official 
    FIP "Standard". [https://en.wikipedia.org/wiki/FIPS_county_code]

A mapping to ISO 3166 ALPHA-2 https://laendercode.net/en/2-letter-list.html
seems more appropriate.

TODO: check the country code mapping in weather_stations.desktop.in