Content of the Book
Table of Contents for the 1st English Edition, 2010.
Part I: Introduction
Part I introduces you to OpenStreetMap and its community.
- 1 Making the Free World Map
- 1.1 The Wikipedia of Cartography
- 1.2 Free is more than Free of Charge
- 1.3 Bitmaps, Vector Data, Geodata
- 1.4 OpenStreetMap and Geographic Information Systems
- 2 OpenStreetMap on the Web
- 2.1 The OpenStreetMap Web Site
- 2.2 OpenStreetBugs
- 2.3 OpenRouteService and YourNavigation
- 2.4 The Best of OSM
- 2.5 National and Regional Resources
- 3 The OpenStreetMap Community
- 3.1 Your OpenStreetMap Account
- 3.2 Mailing Lists and Forums
- 3.3 Keeping Track – Trac and Subversion
- 3.4 The OpenStreetMap Chat on IRC
- 3.5 Mapping Parties
- 3.6 Meetings and Conferences
- 3.7 The OpenStreetMap Foundation and its Local Chapters
Part II: OpenStreetMap for Contributors
Part II explains how you use your GPS device to survey the planet and upload the data to OpenStreetMap through the popular editors. It also has a detailed description of how OSM data is structured, and gives examples for mapping.
- 4 On the Road with Your GPS Device
- 4.1 The Global Positioning System
- 4.2 The GPS Signal
- 4.3 Satellite Visibility and Positional Fix
- 4.4 Differential GPS
- 4.5 Is GPS Accurate Enough?
- 4.6 GPS Receiver Designs
- 4.7 Choosing a GPS for OSM
- 4.8 Types of GPS Data
- 4.9 GPS Data Formats
- 4.10 GPSBabel
- 4.11 Handling the GPS Unit
- 5 Mapping Practice
- 5.1 A Typical Mapping Example
- 5.2 Notes and Recordings
- 5.3 Working with the Map
- 5.4 Working with Aerial Imagery
- 5.5 More Mapping Tips
- 6 The Data Model
- 6.1 Basic Object Types
- 6.2 The OSM XML Format
- 6.3 Modeling Areas
- 6.4 Tracks and Trackpoints
- 6.5 History of the OSM Data Model
- 6.6 Future Development
- 7 Map Features – What We Map
- 7.1 Roads and Railways
- 7.2 Forests, Lakes, and Rivers
- 7.3 Coastline and Islands
- 7.4 Buildings and Land Use Areas
- 7.5 Villages, Cities, and Borders
- 7.6 Other Points of Interest
- 7.7 Annotations and Missing Information
- 7.8 Links
- 7.9 Data Sources
- 7.10 A Practical Example
- 7.11 Tagging Priorities
- 8 Advanced Map Features
- 8.1 Complex Polygons
- 8.2 Boundaries and Land Area
- 8.3 Addresses and House Numbers
- 8.4 Routes
- 8.5 Public Transport
- 8.6 Turn Restrictions
- 8.7 Life Cycle Concepts, History, and Construction
- 8.8 Ways Parallel to Roads
- 8.9 Other Kinds of Relations
- 8.10 Who Else Maps, and How?
- 9 Potlatch, the Online Flash Editor
- 9.1 First Steps
- 9.2 Editing Tags
- 9.3 Creating Nodes and Ways
- 9.4 Editing Nodes and Ways
- 9.5 Saving Changes
- 9.6 Reverting Changes
- 9.7 Relations in Potlatch
- 9.8 Working with GPS Tracks
- 9.9 Background Images
- 9.10 Additional Functionality
- 9.11 Upcoming – Potlatch 2
- 10 JOSM, the Offline Java Editor
- 10.1 Installing and Running JOSM
- 10.2 Loading Local Files into JOSM
- 10.3 Loading Data from the OSM Server
- 10.4 Editing the Map
- 10.5 Uploading Changes to the OSM Server
- 10.6 Saving Changes to a File
- 10.7 Creating and Modifying Relations
- 10.8 JOSM Plugins
- 11 Other Editors
- 11.1 Merkaartor
- 11.2 Mapzen
- 11.3 Vespucci
- 11.4 Mapzen POI Collector
- 11.5 Osm2go
- 12 Tools for Mappers
- 12.1 Data Layer and Data Browser
- 12.2 OSM Inspector
- 12.3 ITO OSM Mapper
- 12.4 Further Tools
- 13 License Issues when Mapping
- 13.1 What Data can be Used?
- 13.2 Copying from Other Maps
- 13.3 Satellite and Aerial Imagery
- 13.4 Importing Data
- 13.5 A Change in the License?
Part III: Making and Using Maps
In Part III we talk about making maps from OpenStreetMap data. We introduce you to the renderers Osmarender, Mapnik, and Kosmos, and you learn how to use a little HTML and JavaScript to add interactive maps to a web page. There's also a chapter on mobile use of OSM, and turn-by-turn navigation.
- 14 Using OpenStreetMap on Web Pages
- 14.1 Anatomy of a Web Map
- 14.2 The Mapnik Tile Server
- 14.3 The Tiles@Home Project
- 14.4 Using OSM with Google Maps
- 14.5 Using OSM with OpenLayers
- 14.6 CloudMade Maps
- 15 Accessing OSM Data
- 15.1 Downloading Data from the OSM API
- 15.2 Downloading Data Using Planet Dumps
- 16 Making Maps with Osmarender
- 16.1 Scalable Vector Graphics
- 16.2 Osmarender and XSLT
- 16.3 Running Osmarender
- 16.4 An Introduction to the Rules File
- 16.5 The Rules File in Detail
- 16.6 Writing Your Own Map Styles
- 16.7 Special Osmarender Tags
- 16.8 Drawing Bézier Curves
- 17 Drawing Maps with Mapnik
- 17.1 Installing PostgreSQL and PostGIS
- 17.2 Importing OSM Data into the PostGIS Database
- 17.3 Projections
- 17.4 Slim Mode and Updates
- 17.5 Installing Mapnik
- 17.6 Anatomy of a Map Style File
- 17.7 Your First Mapnik OSM Map
- 17.8 Making Standard OpenStreetMap Maps With Mapnik
- 17.9 Performance Considerations in Map Style Files
- 17.10 Cascadenik
- 18 Making Maps With Kosmos
- 18.1 Installation
- 18.2 Starting Kosmos and Loading Data
- 18.3 Choosing a Map Style
- 18.4 Defining Your Own Map Styles
- 18.5 The Kosmos Tile Server
- 18.6 Printing and Exporting Bitmaps with Kosmos
- 18.7 Maperitive
- 19 Navigation and Mobile Use
- 19.1 Basics
- 19.2 Pre-Processing OSM Data for Routing
- 19.3 Garmin GPS Units
- 19.4 Web-based Route Planning
- 19.5 Offmaps (iPhone)
- 19.6 Roadee (iPhone)
- 19.7 Skobbler (iPhone)
- 19.8 GpsMid (J2ME)
- 19.9 AndNav2 (Android)
- 19.10 Navit
- 19.11 Traveling Salesman
- 19.12 pgRouting
- 19.13 Gosmore
- 20 License Issues When Using Data
- 20.1 Who is the Owner of OpenStreetMap Data?
- 20.2 Collective Works and Derived Works
- 20.3 Do I Have to Publish?
- 20.4 Can I Sell OpenStreetMap Data?
- 20.5 What Happens if I Disregard the License?
- 20.6 Is the License Legally Binding?
- 20.7 The Open Database License
Part IV: Hacking OpenStreetMap
This part of the book is aimed at hackers and developers. We discuss the depths of the OSM database server and its API, we explain imports and exports and discuss important tools used for processing OSM data.
- 21 Writing Software for OSM
- 21.1 Working with Large Amounts of Data
- 21.2 Finding Your Way through the Subversion Repository
- 22 The OpenStreetMap API
- 22.1 Creating, Retrieving, Updating, and Deleting Objects
- 22.2 Creating or Modifying Multiple Objects at once
- 22.3 Requesting all Objects in an Area
- 22.4 Other Methods of Access
- 22.5 Working with Changesets
- 22.6 Uploading and Downloading GPS Tracks
- 22.7 Accessing User Data
- 22.8 Capabilities Request
- 22.9 Authorization with OAuth
- 22.10 Development and Testing APIs
- 23 Other APIs and Web Services
- 23.1 XAPI
- 23.2 Name Finder
- 23.3 Nominatim
- 23.4 GeoNames
- 24 Osmosis, the Universal Tool
- 24.1 Common Command Line Options
- 24.2 Reading and Writing XML Files
- 24.3 Reading and Writing Databases
- 24.4 Creating and Processing Change Files
- 24.5 Filtering by Geography or Tags
- 24.6 Merging and Multiplying Data Streams
- 24.7 Other Tasks
- 24.8 Processing Old Data Files
- 24.9 Osmosis Plugins
- 24.10 Alternatives to Osmosis
- 25 Advanced Editing
- 25.1 Large-Scale Changes Using the Editor
- 25.2 Undeleting Objects
- 25.3 Making Automated Changes
- 25.4 Reverting Changes
- 26 Import and Export
- 26.1 General Data Import Issues
- 26.2 Importing Shapefiles
- 26.3 Data Export
- 26.4 Exporting Bitmap and Vector Images
- 27 Running an OSM Server
- 27.1 Running Your Own API Server
- 27.2 The API SQL Schema
- 27.3 Running Your Own Tile Server
- 27.4 The Osm2pgsql SQL Schema
Appendix
- Introduction to Geodesy
- Mapping the World
- Index
- Directory of OSM Tags
This is the table of contents for the first English edition. If you switch the Language to German you can see the table of contents for the 3rd, German edition.
The appendix "Mapping the World" is available under the CC-BY-SA 2.0 license.
Mapping the World as PDF.
An OpenOffice document with this text is available from the OSM SVN.