Proposed features/parking

From OpenStreetMap Wiki
Jump to: navigation, search
The Feature Page for the approved proposal Parking can be located at Tag:amenity=parking.


parking (redux)
Status: Approved (active)
Proposed by: flaimo
Tagging: amenity=parking_space/parking_entrance, type=site, site=parking=*
Applies to: Node, Area, Relation
Definition: This proposal is for detailed mapping of parking areas.
Rendered as: Parking, more detailed, but less cluttered
Draft start: 2011-03-13
RFC start: 2011-03-18
Vote start: 2011-04-17
Vote end: 2011-05-01

Contents

Why this proposal?

Over the last months more and more high resolution satellite images were made available to mappers. A lot of them are are good enough to identify single parking spaces, especially with special symbols on them, like disabled parking, which again would allow much more detailed mapping of such areas. The current mapping scheme with just the tag amenity=parking isn't sufficient enough to represent this high density of information. Therefore I wrote this proposal as an addition, not as an replacement, to the current mapping scheme for parking spaces.

Tag overview

Node Area amenity=parking_space

Defines an area with 1 to n parking spaces.

Node amenity=parking_entrance

Entrances to underground or multi-storey parking facilities, in case their physical presence can’t be fully mapped.

Relation type=site, site=parking

The parking-relation groups individual parking spaces and entrances together. Relations of this type can be nested.

Advantages

What about the current amenity=parking?

This new tagging scheme is not meant to replace amenity=parking. You can stick to the current scheme if you like to keep it simple. Other reasons when amenity=parking might still be better:

What about those other parking proposals?

http://wiki.openstreetmap.org/wiki/Proposed_features/More_Parking_Spaces

That was the first parking proposal I found. Seems to be inactive. The special interest groups noted in that proposal are integrated in this proposal in chapter General tags. That's the reason why this proposal has redux in its name.

http://wiki.openstreetmap.org/wiki/Proposed_features/Carpool

Integrated under “special interest groups” in chapter “general tags”.

http://wiki.openstreetmap.org/wiki/Proposed_features/parking:lane

Is meant for parking alongside highways. this proposal here is for dedicated parking areas, therefore the proposals don’t interfere.

Tag descriptions

Node Area Parking space

Key Value Comment
required amenity parking_space Mandatory tag for defining an area that contains 1 to n parking spaces.
optional ref String If the parking space is managed in another third party application the internal ID of this space can be noted here to offer the possibility of an connection from the space in OSM to the third party system. If more than one application needs to note it’s ID, the notation changes to ref:<vendor>= (for example ref:hertz=, ref:airport_JFK=)
optional name String If the parking space has a number, license plate or other written information printed on its surface or on a plate in front of the space, it should be put in the name tag. Examples: 1, 2, 3, L6F-33S, Big Boss parking space
optional capacity Unsigned Integer Optional, but should be mapped whenever possible, even if the number is just an estimation (for example at big bicycle parking areas).

Note that the separation into different capacity:*= tags for special interest groups is not supported for these kinds of parking areas. In such a case, individual parking spaces should be mapped, or you should stick with the current mapping scheme. The default value for capacity=* is "1" if not mapped otherwise.

optional general tags * See chapter General tags for tags that can be applied to spaces, areas, entrances and relations

 

Node Parking entrance

While underground or multi-storey parking facilities could be mapped using amenity=parking_space in combination with a layer tag, it’s often sufficient enough to just map the entrances and exits as nodes.

Key Value Comment
required amenity parking_entrance Mandatory tag for defining a parking entrance.
optional ref String same rules as for parking space
optional name String Name of the entrance. Examples: Main entrance Big Underground Parking, Side Exit 3rd Avenue
optional general tags * See chapter General tags for tags that can be applied to spaces, entrances and relations

Relation Site relation

The relation is used to combine the individual elements stated above into one group. For example all parking spaces in front of a mall can be grouped together under a relation with the name Big Mall Parking.

Key Value Comment
required type site
required site parking Please note, that at the time of voting, the proposal for site relations didn't have a clear definition on how to use the site key. To be on the save side, please add both tags: site=parking and amenity=parking
optional ref String ID of the parking facility or sub section. Same as for parking space.
optional name String The name of the parking facility or sub section
optional capacity Unsigned integer In case the exact number of spaces of a parking facility can't be calculated by adding up the capacity tags of parking spaces, you can define the capacity for all parking elements under the relation. This is necessary if you want to map an underground parking facility, but only the entrances can be mapped. A value defined in the relation overrides a calculated value from the parking spaces.
optional general tags * See chapter General tags for tags that can be applied to spaces, entrances and relations

General tags

General tags can be applied to parking space areas, parking entrances and relations. The general rule is: The tag on a specific element weights more then the same tag on a more general element. For example if you map a surface=asphalt to the relation grouping some parking spaces, but one of the spaces has a tag surface=gravel, the value paved is applied to all parking spaces accept the one with the tag surface=gravel. Example 2: A relation contains some sub relations which again then contain parking spaces. The relation has operator=Big Mall mapped to it, but one of the sub relations contains an operator=IKEA. operator=Big Mall would therefore be applied to all sub relations and therefore all their parking spaces, except for the sub relation with operator=IKEA. The parking spaces under this sub location would also inherit the value operator=IKEA (as long as not stated otherwise on a specific parking space).

Key Value Defaut value Comment
optional access <access value> public Access restrictions can be applied as stated on the wiki page for access=*. Note that the access definitions should only be used to define the type of vehicle/transportation which is allowed on the element. special interest groups (like disabled, woman, parents…) are handled separately since those two are not exclusionary (see below).

You are encouraged to map more specific access restrictions besides the general access tag: example 1 - a parking space for a truck on a privately owned rest stop along a highway: access=no, hgv=permissive example 2 - public bicycle parking: access=no, bicycle=designated

optional access:<special interest group> <access value> To add further restrictions besides, the generic access tag, on who can access the element, this tag can be used. examples:

"Access:" values in separate tags are interpreted as "OR". access:customer= + access:parent= would mean "a person who is a customer OR a parent". In case both lines match at the time of evaluation, the one with the stricter value is selected.

If you need to tag "a person who is a customer AND a parent" (at the same time), put both keys in one line separated by "&&". Example: access:customer&&parent=.

If you need to set permission for all roles in general use access:role=<access value>. If not set explicitly, access:role=yes is the default.

This separate tags compensate for a flaw in the design of the current access structure. The kind of transportation normally is exclusive. You can't drive two different kinds of vehicles at the same time. On the other hand roles aren't. You can be disabled, a woman and a customer at the same time. If the flaw gets fixed for access tags in general, this tag could be eliminated later on for a generic solution. I wrote down my suggestions for a fix of the access system here: http://wiki.openstreetmap.org/wiki/Proposed_features/access_restrictions_1.5

The attributes stated above are examples and are not a fixed list. Additional special interest groups can be added if needed.

optional surface String paved Standard values for surface. see surface page for further details.
optional operator String The operator of the parking space/entrance/area.
optional fee yes/no/interval no Whether you have to pay a parking fee or not. If the fee must be paid only on certain hours, the same syntax can be used as for opening_hours=*.
optional payment:<payment method> yes/no/interval no Whether you can use a certain payment method or not. If a payment method only work at certain hours, the same syntax can be used as for opening_hours=*.
optional avg_fph (<Currency><Space>)Float no Pricing for parking is to complex to be represented in a single tag, therefore only the average fee per hour for one parking space should be noted, to give the user some sort of orientation of what price to expect.

The value itself is a float with two decimal places. The dot is used as a separator.

If no currency format is given, the official currency of the country, where the parking space is located, is used. So by default there shouldn't be the need to map the currency. If it differs from the official currency, note it in front of the value using the ISO 4217 format (Three letter format), separated by a space.

optional covered yes/no no covered should be set to yes if a parking space has a roof to protect from rain, hail or foliage, but not necessary side walls. Real garages made of metal or bricks should be tagged as a building with building=garage and maybe combined with amenity=parking_space + capacity=*, since mapping of individual spaces inside a garage building isn’t possible.
optional parking underground, surface, rooftop, multi-storey surface Same as for amenity=parking. can be extended with other values, that describe the physical presence, if needed.
optional stay <Min. Integer>-<Max. Integer>;<Min. Integer>-<Max. Integer>;… 0 Time limit in minutes for parking. 0 means unlimited. If only one Integer is given it is interpreted as <Max. Integer>. For a notation of "Min. Stay" write "stay=<Min. Integer>+". Note that in this proposal the value is measured in minutes, unlike for maxstay=* which is hours.
optional supervised yes/no/interval no Whether the vehicles are guarded to prevent theft and vandalism. If a guard is only present on certain hours, the same syntax can be used as for opening_hours=*.
optional lit yes/no/interval no Whether the element is lit or not. If lit only at certain hours, the same syntax can be used as for opening_hours=*.
optional opening_hours interval 24/7 General syntax for opening_hours=* can be used.

In case special interest groups or kinds of transportation have differing access times, the key can be appended to the access=* or access:<special interest group>= tag. Example: access:disabled:opening_hours, hgv:opening_hours.

Examples

Shopping mall area

Big Mall Parking.png

Underground parking

Big Underground Parking.png

Car rental service

Big car rental service.png

Real life examples

Kürnberghalle (Austria)

A community centre with parking spaces spread around the building. There is an small area with parking spaces for employees which are grouped in a site relation (Relation.png 1572169 (XML, check, manage, JOSM, history, view, gpx )). The rest of the parking spaces are open to the public and are grouped in another site relation (Relation.png 1572161 (XML, check, manage, JOSM, history, view, gpx )). Both site relations are again put in a collective site relation (Relation.png 1572170 (XML, check, manage, JOSM, history, view, gpx )) which also holds all the common properties all parking spaces share. At lower zoom levels only one "P" should be displayed on the map in the future.

Infra Center (Austria)

This shopping mall has a parking lot in the front of the building (containing spaces for disabled customers Mf way.png 111700903) and a separate parking lot on the roof of the mall. The area also contains a secondary building which houses a nightclub and a McDonalds restaurant, each with their own small parking lots. For those, four site relations were created, which again were grouped together in a parent relation:

Recommended default access restrictions

Since the majority of parking lots are designed for motorcars is is suggested that, if no access values are explicitly tagged, the following should be assumed for amenity=parking_space, amenity=parking_entrance and relations with site=parking:

Renderers and routing programs can interpret those default values as public parking spaces available to everyone.

Example: If you want to map a parking space only for tourist or school buses you would use the following access tags to override the default values stated above:

Suggestions for renderers

Some suggestions on how renderers could display the data:


mockup screen on how renderers could use the names in nested parking relations to display a name suitable for the current zoom level. note that this example doesn't illustrate single parking spaces.

Suggestions for editors

example of supermarket parking spaces inside a site relation


amenity=parking_space as part of a bigger micromapping scheme

Changes based on comments from the RFC phase

Voting

Voting is now closed. 16 users voted "yes", 1 user voted "no". Proposal has reached the minimum amount of 15 votes and 8 approving votes. The proposal is approved with a majority of 94%.

Post voting changes

Personal tools
Namespaces
Variants
Actions
site
Toolbox