REST

classic Classic list List threaded Threaded
26 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: REST

Stefan Holst
hi,

this is my first post here - please be gentle ;)
i live in Sindelfingen near Stuttgart, Germany and began mapping
a few weeks ago using my bike, a gpsr, an old palm, ruby scripts
to compile shapefiles out of the collected data and a local
mapserver/ka-map installation for viewing.

i'm currently using my own xml-format but i'll convert to gpx
to upload the data to osm asap :)

so i was thinking about a proper gpx-extension for the metadata
i collected. this metadata includes:

- estimated position error and elevation error for each trackpoint
- name of the street (if known)
- surface (asphalt, dirtroad, gravel, ...)
- roadtype (mainroad, sideroad, farmway, footpath ...)
- hiking and biking guides along current road

so here are my thoughts...

Nick Whitelegg wrote:

> <trkseg>
> <trkpt....>
>
> track points...
>
> </trkpt>
> <extensions>
> <type>road</type>
> <name>Church Road</name>
> </extensions>
> </trkseg>

it would be nice to have this extension also defined for whole tracks.
values assigned to a track are valid for each segment unless they're
overwritten. this should save some space for roads with many segments.
(given that roads are saved as distinct tracks.)

what about locatized names? at least some points of interest have
several names in different languages

<name:de>Kurm?rker Kaserne</name:de>
<name:en>Patch Barracks</name:en>

and most streets in belgium have two names. i'd vote also for something
like:

<surface>asphalt</surface>
<hikingtour>bluecross</hikingtour>
<cyclingtour>de.bw.radelrund</cyclingtour>

> but this could be revised in a way appropriate to the key value system e.g.
> something like the following to indicate that a segment has a name of
> Church Road and is accessible to car, horse, foot, bike:
>
> <extensions>
> <permissions car="1" horse="1" foot="1" bike="1"/>
> <name>Chuch Road</name>
> </extensions>

in germany, there are also streets where the drive-through is not
allowed. you may only use these if you visit someone (Anlieger frei).
from a biker's perspective, it would be nice to indicate if there's
a seperate bikepath along a road or not.

junctions should also be modelled. this is necessary for routing
and practical for the survey. in gpx, they are simple waypoints
with apropriate extensions. but to refer to streets, they have
to have unique ids.

to ensure this uniqueness, the ids must have a hierachical structure.
starting with the tld of the country, followed by federal states and
districts (specific to each nation, i suppose) and suffixed by
the simplyfied name of the feature. this name should only contain
lowercase letters and numbers (no spaces) in the case the id is used
as a filename.

a concluding example:

<gpx version="1.1">
   <metadata>
     <name>two_streets</name>
     <copyright author="Stefan Holst">
       <year>2005</year>
       <license>http://creativecommons.org/licenses/by-sa/2.5/</license>
     </copyright>
   </metadata>
   <wpt lat="48.734" lon="9.012">
     <ele>513.0</ele>
     <time>2005-03-26T16:53:21Z</time>
     <type>junction</type>
     <extensions>
       <epe>6.0</epe>
       <eee>11.0</eee>
       <street>de.bw.bb.sindelfingen.pfarrwiesenallee</street>
       <street>de.bw.bb.sindelfingen.leonbergerstr</street>
       <trafficlights>yes</trafficlights>
     </extensions>
   </wpt>
   <trk>
     <name>de.bw.bb.sindelfingen.pfarrwiesenallee</name>
     <type>mainroad</type>
     <extensions>
       <name:de>Pfarrwiesenallee</name:de>
       <bikepath>yes</bikepath>
     </extensions>
     <trkseg>
       ...
     </trkseg>
     ...
   </trk>
   ...
</gpx>


RY
Stefan

_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev
Reply | Threaded
Open this post in threaded view
|

Re: REST

Nick Whitelegg-2
In reply to this post by stevec-4
Stefan,

Looks interesting. A couple of points:

- notice each street is represented as a separate track on your schema.
Would it not make more sense to have each street as a separate track
*segment* (as I have done)? That way, if you survey a route in your GPS as
a track, then divide it up into different segments (different roads, paths
etc) you could upload the whole track back into your GPS if needed?

I do think that an explicit set of "permissions" for different user types
(car, horse, foot, bike) is essential, this is particularly true in the UK
countryside where there are a whole array of different types of path, each
of which has different allowed users. e.g.

footpath : foot  yes, horse no, bike no, car no
bridleway: foot yes, horse yes, bike yes, car no
"permissive" footpath: foot yes (but not legally enshrined, only at
discretion of the landowner); all others, no
byway: unsurfaced track, but foot yes, bike yes, horse yes, car yes

My schema involves an int value for each permission, rather than a boolean,
to account for different classes of road, e.g.

regular footpath: foot 1, horse 0, bike 0, car 0
bridleway: foot 1, horse 1, bike 1, car 0
byway: foot 1, horse 1, bike 1, car 1
minor road: foot 1, horse 1, bike 1, car 2
B road (Secondary road, D road, county road): foot 1, horse 1, bike 1, car
3
A road (Primary road, N road, state road) : foot 1, horse 1, bike 1, car 4
Motorway (Autobahn, Autoroute, Interstate, etc) : foot 1, horse 1, bike 1,
car 5

So if I want all surfaced roads I can select those segments with a "car"
value of at least 2.

I think UK rights of way are more complicated than other countries but I'm
sure that this schema could be applied internationally.

Different "foot" values could then distinguish between "official" footpaths
and "permissive" paths (where access has been granted at the discretion of
the landowner). I have not done this yet but it could easily be done, e.g.
"foot"=1 means permissive access only, "foot"=2 means legally enshrined
access.

Nick


_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev
Reply | Threaded
Open this post in threaded view
|

Re: REST

Nick Whitelegg-2
In reply to this post by stevec-4
Oops correction....

"Motorway" permissions should be:

foot 0 horse 0 bike 0 car 5

Nick


_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev
Reply | Threaded
Open this post in threaded view
|

Re: REST

Stefan Holst
In reply to this post by Nick Whitelegg-2
Nick Whitelegg wrote:
> Stefan,
>
> Looks interesting. A couple of points:
>
> - notice each street is represented as a separate track on your schema.
> Would it not make more sense to have each street as a separate track
> *segment* (as I have done)? That way, if you survey a route in your GPS as
> a track, then divide it up into different segments (different roads, paths
> etc) you could upload the whole track back into your GPS if needed?

the problem is, that many roads around here cannot be modelled with a
single tracksegment. i already have two roads which have a mainroad and
sideroad part. some sideroads here also have more than two endings.

i think it makes sense to modell roads as tracks with one or many
segments.

> Motorway (Autobahn, Autoroute, Interstate, etc) : foot 1, horse 1, bike 1,
> car 5

:)

since there are many known integer, your system can (should?) be
refined like this:

type            foot - horse - bike - car

perm. footpath   1..9  0  0  0     ( depends on the owner ;) )

footpath         10  0  0  0

combined foot
and bikepath     10  0  1..9  0    ( bikers have to pay attention )

... seperate
     trails       10  0 10  0

bridleway        1..9 10 1..9  0

"anlieger frei"  1..9 1..9 1..9 9

minor road       1..9 1..9 1..9 10

... with walkway 10 1..9 1..9 10

main through
road             1..19 1..19 1..19 20

... with sep.
   bike and foot
   ways           20 1..19 20 20

...

the actual value of the given ranges are determined by
the usage of a road. e.g. seldom used minor roads would
have 9 9 9 10 - busy minor roads would have 1 1 1 10.

clear criterias have to be defined to get an impartial
classification of roadsegments. each national street
system can be used as guidance in a way i sketched
above.

 > So if I want all surfaced roads I can select those segments with a "car"
 > value of at least 2.

the surface character should be stored seperately since
it is independent of the permission or usage. moreover
the surface is the same for all users.

RY
Stefan


_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev
Reply | Threaded
Open this post in threaded view
|

Re: Re: REST

Matt Amos-2
In reply to this post by Tom Carden
On Tuesday 19 July 2005 11:27, Tom Carden wrote:
> Matt's point about being able to build interfaces on the fly with
> languages like Ruby is why it makes more sense for that kind of
> language.

http://xml-mapping.rubyforge.org/

makes it nice and simple to access "real objects" embedded in the XML.

cya,

matt

_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev

attachment0 (197 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: REST

Schuyler Erle
In reply to this post by Nick Whitelegg-2
* On 20-Jul-2005 at  3:19AM PDT, Nick Whitelegg said:

>
> My schema involves an int value for each permission, rather than a boolean,
> to account for different classes of road, e.g.
>
> regular footpath: foot 1, horse 0, bike 0, car 0
> bridleway: foot 1, horse 1, bike 1, car 0
> byway: foot 1, horse 1, bike 1, car 1
> minor road: foot 1, horse 1, bike 1, car 2
> B road (Secondary road, D road, county road): foot 1, horse 1, bike 1, car
> 3
> A road (Primary road, N road, state road) : foot 1, horse 1, bike 1, car 4
> Motorway (Autobahn, Autoroute, Interstate, etc) : foot 1, horse 1, bike 1,
> car 5

I like this, but one nit to pick: There are circumstances (what we
call interstates, or limited access roads, or freeways here in the US,
and I believe they are referred to as motorways elsewhere) where a
road would be:

Freeway/Motorway: foot 0, horse 0, bike 0, car 5

This is important! of course, because, in much the same way that there
are places it's reasonable to route a pedestrian but not a car, there
are lots of places that are reasonable to route cars but NOT
pedestrians.

SDE

_______________________________________________
Openstreetmap-dev mailing list
[hidden email]
http://bat.vr.ucl.ac.uk/cgi-bin/mailman/listinfo/openstreetmap-dev
12