The Free Wiki World Map
Free as in Free Speech
Comunity based
Pareto rules :(
1 Code of Conduct
* 1.1 General
- 1.1.1 Be Considerate
- 1.1.2 Be Respectful
- 1.1.3 Be Collaborative
- 1.1.4 When we disagree, we consult others
- 1.1.5 When we are unsure, we ask for help
- 1.1.6 Step down considerately
- 1.1.7 Respect Copyright and Licenses
2 Additions and modifications
3 Violations and Enforcement
* 3.1 Judging violations
- 3.1.1 Option: Community council
- 3.1.2 Option: OSMF Ministry of Truth Working Group
* 3.2 Performing a ban
* 3.3 Misconduct across other channels
I define OSM community as good will but chaotic
Data - Information
http://wiki.openstreetmap.org
forget all GIS data types
Areas are not separate elements, they are merely closed ways that represent an area
How we glue all geo-types?
Tags
Infrastructure
www?
is a regular web server that runs Ruby on Rails. It is FOSS, so you can build your own OSM-like server
db?
easy one :)
planet?
as the name suggests is a DB dump for the whole planet.
- weekly full planet dump
- daily - hourly - minutely diffs
tile?
standards? WMS? why? :(
mapnik renderer + really fast!! renderer daemon + apache module
- cache
- on demand rendering
- expires
- modified tiles
http://a.tile.openstreetmap.org/17/66327/48958.png
API?
is RESTful web service. All payloads are in XML & UTF-8 encoding. Write requests need authentication (HTTP Basic or OAuth)
now in v 0.6
capabilities
changeset
bounding-box
history
version
<osm version="0.6" generator="OpenStreetMap server">
<api>
<version minimum="0.6" maximum="0.6"/>
<area maximum="0.25"/>
<tracepoints per_page="5000"/>
<waynodes maximum="2000"/>
<changesets maximum_elements="50000"/>
<timeout seconds="300"/>
</api>
</osm>
- any edit must reference a changeset
- non atomic
- can be rollbacked and reverted
http://api.openstreetmap.org/api/0.6/map?bbox=l,b,r,t
Exhaustive version control for
each element.
XAPI?
X = eXtended predicate filters: [amenity=hospital]
[bbox=t,l,b,r]
/node[not(way)]
Nominatim?
Search engine + Reverse geocoder web service.
TaH?
Tiles at Home - distributed renderer with osmarender
GPX?
users can uplod/download gps traces, so users can hanve hints when no imaginery is available
Tools
Apps!
on Jan 24rd 2011
Number of users 350.256
Number of uploaded GPS points 2.149.657.482
Number of nodes 945.435.752
Number of ways 79.727.545
Number of relations 838.691
OpenStreetBugs
geofabrik
OpenCycleMap
Trails
PublicTransport
iPhone
Android
...
46 apps
Node
Relation
Way
Potlatch
JOSM
Merkaator
Osmosis
osm2pgsql
osm2pgr
mapnik
mod_tile
rails_port
ogr2osm
shp2osm
...
A node is the basic element of the OSM scheme. Nodes consist of latitude and longitude
46 apps
A way is an ordered interconnection of at least 2 and at most 2000 nodes (as of API v0.6) that describe a linear feature such as a street, or similar.
A relation can group other elements together, nodes, ways, and maybe even other relations. Elements are 'members' of the relation, and each membership has a 'role'
Carril Bici
Camí
Pas de vianants
Parc
uncontrolled
zebra
crossing
crossing
crossing_ref
highway
crossing
highway
traffic_signals
traffic_signals
addr:city
addr:country
addr:housenumber
addr:postcode
addr:street
Terrassa
ES
7
08225
Carrer Sabadell
bench
highway
name
shelter
tactile_paving
Relation id=...
yes
bus_stop
Arenys de Mar
yes
yes
1203234 version=5 VT [node ...
turn restrictions
name
shop
Forn Casa Nova
bakery
Carrer
layer=0
waterway=river
name=Riera del Palau
Edificis
ref=B-40
highway=motorway
name=Quart Cinturó
layer=0
oneway=yes
maxspeed=80
lanes=2
Zona de jocs
infantils
More in Map Features
Plaça
shared ways
routes
http://api.openstreetmap.org/api/0.6/node/933346497
<osm version="0.6" generator="OpenStreetMap server">
<node id="933346497" lat="41.5827339" lon="2.0134288" version="1" changeset="5928981" user="Jaume Figueras" uid="55987" visible="true" timestamp="2010-10-01T15:46:00Z">
<tag k="name" v="Arenys de Mar"/>
<tag k="tactile_paving" v="yes"/>
<tag k="highway" v="bus_stop"/>
<tag k="bench" v="yes"/>
<tag k="shelter" v="yes"/>
</node>
</osm>
http://api.openstreetmap.org/api/0.6/node/933346497
http://api.openstreetmap.org/api/0.6/way/26341761/history
<osm version="0.6" generator="OpenStreetMap server">
<way id="61742290" visible="true" timestamp="2010-09-29T21:15:19Z" version="2" changeset="5915701" user="Jaume Figueras" uid="55987">
<nd ref="302015269"/>
<nd ref="411038585"/>
<nd ref="930868180"/>
<nd ref="302015292"/>
<nd ref="411038587"/>
<nd ref="411038589"/>
<nd ref="301720003"/>
<nd ref="288598744"/>
<nd ref="301720004"/>
<tag k="highway" v="residential"/>
<tag k="layer" v="0"/>
<tag k="maxspeed" v="50"/>
<tag k="name" v="Avinguda de Lacetània"/>
<tag k="surface" v="paved"/>
</way>
</osm>
<osm version="0.6" generator="OpenStreetMap server">
<way id="26341761" visible="true" timestamp="2008-08-16T23:20:53Z" user="Jaume Figueras" uid="55987" version="1" changeset="287423">
<nd ref="282873935"/>
<nd ref="288595138"/>
<nd ref="288595139"/>
<nd ref="288595140"/>
<tag k="highway" v="secondary"/>
<tag k="lanes" v="2"/>
<tag k="layer" v="0"/>
<tag k="maxspeed" v="50"/>
<tag k="name" v="Avinguda de Béjar"/>
<tag k="oneway" v="yes"/>
</way>
−
<way id="26341761" visible="true" timestamp="2008-10-03T09:27:21Z" user="Jaume Figueras" uid="55987" version="2" changeset="50174">
<nd ref="282873935"/>
<nd ref="288595138"/>
<nd ref="288595139"/>
<nd ref="288595140"/>
<nd ref="301720015"/>
<tag k="highway" v="secondary"/>
<tag k="lanes" v="2"/>
<tag k="layer" v="0"/>
<tag k="maxspeed" v="50"/>
<tag k="name" v="Avinguda de Béjar"/>
<tag k="oneway" v="yes"/>
</way>
−
<way id="26341761" visible="true" timestamp="2008-10-04T22:05:12Z" user="Jaume Figueras" uid="55987" version="3" changeset="67776">
<nd ref="282873935"/>
<nd ref="288595138"/>
<nd ref="302113758"/>
<nd ref="302113771"/>
<nd ref="301720015"/>
<nd ref="302015354"/>
<nd ref="302015357"/>
<nd ref="302113955"/>
<nd ref="302113978"/>
<nd ref="302113982"/>
<nd ref="302015186"/>
<tag k="highway" v="secondary"/>
<tag k="lanes" v="2"/>
<tag k="layer" v="0"/>
<tag k="maxspeed" v="50"/>
<tag k="name" v="Avinguda de Béjar"/>
<tag k="oneway" v="yes"/>
</way>
.....
</osm>