[OSM-talk] Missing structure
Lester Caine
lester at lsces.co.uk
Sun Jan 13 09:40:09 GMT 2008
After my missive in the postal addresses thread I had yet another scout around
on what is already available and how it is not being managed well.
All mapping is currently based on physical nodes, but I think that perhaps we
need an abstract element that we can hang things on.
( After thought - all I really mean here is that the physical coordinates of
these tags is not significant - it does not really matter if the place 'United
Kingdom' is within the boundaries of the UK or on a list at the north pole ;) )
http://wiki.openstreetmap.org/index.php/OSM_tags_for_routing has some notes on
places, and 'places' rather than 'boundaries' is probably the right place to
start the tree of hierarchy since it already has all the right components.
We can then ADD boundaries to provide the detail of the actual area covered by
a 'place'. The node for a place could obviously be within the relevant area -
actually it does not matter - what DOES matter is that 'is_in' is correctly
structured and ONLY refers to OTHER unique entries in the places list!
http://wiki.openstreetmap.org/index.php/Placename_hierachies misses the whole
point and is the cause of some of the current differences.
Taking an example
* place=village
* name=Ryde
* is_in=England, Isle of Wight, Hampshire
SHOULD be is_in=Isle of Wight
With
* place=county
* name=Isle of Wight
* is_in=Hampshire
* place=county
* name=Hampshire
* is_in=England
* place=country
* name=England
* is_in=United Kingdom
In other words every element of is_in must have a matching record in 'place'
but currently 'name' may not be a unique reference as in 'San Francisco' but
we need a unique identifier for THIS system to have a chance of working?
There is justification for more than one is_in tags attached to an element,
such as in the UK we may have 'parish' and 'ward' and a street would be in
both places, or a street may need to be split into two where one part is in a
different 'parish' or 'ward'. The same applies to places that straddle two
states or counties.
The problem I am currently seeing is HOW to handle that lower level structural
detail. We need place records for every element that is to be used to build a
hierarchy and those may or may not have boundary elements linked to them and
at least for the UK there is a complete list of those places available even if
there is no location/boundary information 'openly' available. The lists are
all open source from the Office of National Statistics.
The problem comes when trying to identify a street where there may be several
elements that make up that street, but there is not a single 'This is xx
street' tag. On one hand it is not important, as long as all the elements use
the same spelling for the street, but when you bring street numbering and
postcode into the equation, the structural elements become important in that
the street may be split into several post codes, with different blocks of
numbers in each section. It may be tidier to have a place=street which can
then be used as the 'is_in' for all of the elements that are located on that
street and this would then have physical elements 'attached' to it. A drastic
example of a street would then be the 'M1' which would span several counties
pass through several towns, and have a very complex element structure. But it
is already well managed since in theory we can look for ref=M1 and find the
whole route, all we are missing is a list of all available 'ref' entries other
than running a 'SELECT DISTINCT' query, while a place element may just provide
a tidy hook? Back to the street problem, in the case of England and Wales, the
ref= entry could be the NSG (National Street Gazetteer) street number (for
which there is one for the M1 ;) ) but we need somewhere to hang the data and
I don't think yet another element like
http://wiki.openstreetmap.org/index.php/Relations/Proposed/Collected_Ways is
the right way. A more generic solution providing additional 'places' which can
then be cross-referenced by 'is_in' seems elegantly practical?
Definition of place element - a uniquely identified piece of information
Definition of is_in - a link to one or more place elements
--
Lester Caine - G8HFL
-----------------------------
Contact - http://home.lsces.co.uk/lsces/wiki/?page=contact
L.S.Caine Electronic Services - http://home.lsces.co.uk
MEDW - http://home.lsces.co.uk/ModelEngineersDigitalWorkshop/
Firebird - http://www.firebirdsql.org/index.php
More information about the talk
mailing list