Relationships

From OpenStreetMap Wiki
Jump to: navigation, search
Available languages — Relationships
· Afrikaans · Alemannisch · aragonés · asturianu · azərbaycanca · Bahasa Indonesia · Bahasa Melayu · Bân-lâm-gú · Basa Jawa · Baso Minangkabau · bosanski · brezhoneg · català · čeština · dansk · Deutsch · eesti · English · español · Esperanto · estremeñu · euskara · français · Frysk · Gaeilge · Gàidhlig · galego · Hausa · hrvatski · Igbo · interlingua · Interlingue · isiXhosa · isiZulu · íslenska · italiano · Kiswahili · Kreyòl ayisyen · kréyòl gwadloupéyen · Kurdî · latviešu · Lëtzebuergesch · lietuvių · magyar · Malagasy · Malti · Nederlands · Nedersaksies · norsk bokmål · norsk nynorsk · occitan · Oromoo · oʻzbekcha/ўзбекча · Plattdüütsch · polski · português · português do Brasil · română · shqip · slovenčina · slovenščina · Soomaaliga · suomi · svenska · Tiếng Việt · Türkçe · Vahcuengh · vèneto · Wolof · Yorùbá · Zazaki · српски / srpski · беларуская · български · қазақша · македонски · монгол · русский · тоҷикӣ · українська · Ελληνικά · Հայերեն · ქართული · नेपाली · मराठी · हिन्दी · অসমীয়া · বাংলা · ਪੰਜਾਬੀ · ગુજરાતી · ଓଡ଼ିଆ · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · සිංහල · ไทย · မြန်မာဘာသာ · ລາວ · ភាសាខ្មែរ · ⵜⴰⵎⴰⵣⵉⵖⵜ · አማርኛ · 한국어 · 日本語 · 中文(简体)‎ · 吴语 · 粵語 · 中文(繁體)‎ · ייִדיש · עברית · اردو · العربية · پښتو · سنڌي · فارسی · ދިވެހިބަސް

The world is complex. When starting with a technical solution for a database model the options explode. And with these options the amount of discussion caused.

Rather than taking the approach to model the world with a database approach, here is the aim to understand and explain the "world" as non-technical people would describe how they deal with the relationships. Also here are anomalies of relationships collected.

Deriving from these identified relationships technical representations of the relationships, is a subsequent (later) step which requires the discussion of the advantages and disadvantages of the technical solutions from various perspectives.

This page might contain obvious knowledge - this is intended as leads us to hopefully to the simplest, least controversial model we can build. It also hopefully with help us to gather common understanding and provide us insight on the difference of different countries.

This is not intended as a duplicate to the page "Advanced relationships".

Relationship Overview

No Relation Type Element A At Element B Conditions Directional Symmetric Splittable Explicit/Implicit
1 Turn Restriction (from) Street Crossing (to) Street Time,
Vehicle Type,
Height,
Width
Yes No No Explicit
2 House Number House Number
or
House Number Range
- Street None,
Odd Numbers
, or Even House Numbers
No No Yes Explicit
3 ZIP-Code House Number & Street Name & City Name - ZIP-Code None No No Yes Implicit
4 Same Street Name Street - Street No No Yes Yes  ?
4 Name of a Dual Carriageway belongs to 2 Carriageways Carriageway A - Carriageway B No No Yes Yes  ?



Attribute descriptions

Relation Type

This column descibes the name of relation.

Conditions

Some relations have conditions, upon which they apply.

E.g.:

A turn restriction may only apply for trucks.

A ZIP-code may only apply for the right side of the street.

Directional

Either relations are:

Uniderectional: - E.g. A turn restriction is [[#Directional|directional], as it applies only from the start way to the to way.

or

Bidrectional: - E.g. if the STREET NAME is identical to both STREETS, it applies to booth STREETS.



Symmetric

Unsure if this attribute is always identcal with the attribute Relation Directional.



Splittable

The relation Splittable is only used with ways.

A relation is considered as Splittable, if the relation after splitting of the way applies to both parts of the splitted way.

A relation is considered as Unsplittable, if the relation after splitting of the way applies to one part of the splitted way.

E.g.: - If a way is splitted, the ZIP-code applies after splitting the STREET to both sections of the STREET. - If a way is splitted, the HOUSE NUMBER applies after splitting the way only to one of the two sections of the splitted STREET.



Explicit/Implicit

Please explain what that attribute means.

Relations

STREET has same name as STREET

Typical usage scenario:

  • Orientation in the street


Scenario:

  • If one sees two street signs with the identical name closely together, one considers the street being the same street.


Relationship required for the following use cases:

  • Map rendering
  • Orientation in the city


Anomalies:

  • please provide anomalies to this observation

A STREET belongs to a COUNTRY and a ZIP CODE

Typical usage scenario:

  • Addressing postal deliveries


Scenario:

  • When addressing a parcels one addresses a parcel to somebody by adding an address belonging of the country name, the zip code, the city name and the street name.


Relationship required for the following use cases:

  • Postal addressing


Relationship required for:

  • Map rendering
  • Orientation in the city


Example:

  • Germany:
    • Wählingsallee located in the district called Schnelsen of the city Hamburg has the ZIP-Code 22459
    • The district Schnelsen of the city Hamburg has the ZIP codes 22457 and 22459


Anomalies:

  • Streets are identified by its name. Many (in the UK, most) streets consist of sections belonging to different ZIP-codes. Such sections may be either parts of the street or even a side of the street.
  • In Germany and the United Kingdom some companies which receive a lot of post, have their own private post code.
  • In Germany the village Riemerling (ZIP-Code: 85521), is located close to Ottobrun (ZIP-Code: 85521). However Riemerling belongs administratively to Hohenbrunn (ZIP-Code: 85662).

A STREET belongs to a VILLAGE, a CITY or COUNCIL

Typical usage scenario:

  • Desires the governmental administration area to with the street belongs.
  • A street belongs to a village, a city or an administration council


Note: Usually also villages or cities belong to an administration council


Scenario:

  • In order to find the administrative council responsible for a street, e.g. to get a new passport or to get street lighting fixed, you have to identify the responsible adminitration.


Relationship required for the following use cases:

  • Finding a street in a map by using the maps index
  • Creation of map indexes


Anomalies:

  • Are there e.g. any streets not belonging to any administrative area?
  • Please report of anomalies.
  • Some villages have combined their administration, however still remain different villages.

A HOUSE is located at a STREET and has a one or more HOUSE NUMBER(S)

Typical usage scenario:

  • Is used to identify the house within a street.
  • Used to identify the delivery location within a street with a give name for postal shipping


Scenario:

  • In order to search for a person living at a given addresses, the street name and house number is used.

Relationship required for the following use cases:

  • Finding a street in a map by using the maps index
  • Creation of map indexes


Anomalies:

  • A building may have several house numbers e.g. 7 + 9
  • A building may have a range of house number 21 to 29
  • In Germany a building may have a range of house numbers, however only the odd or even ones. E.g. 21 to 29 (odd only) means 21, 23, 25, 27 and 29
  • In Germany,Russia,CIS a house number is either a number e.g. 217 or a number plus a letter e.g. 3a or 3a to 3c (written as 3a-c).
  • In Russia,CIS if house located exactly at cross, it can have two addresses and be related to those two streets
  • In Czech republic house can belong to two streets - have two adresses (access from both streets).


See Proposed_features/House_numbers for the current discussion on this topic.

Turn Restriction from a STREET at a CROSSING into a STREET

Typical usage scenario:

  • At crossings the driver respects the driving restrictions when steering the car.
  • While driving the front seat-passenger provides driving directions to the driver for navigation purposes.
  • The routing application calculates the shortest way under consideration of the driving directions.

Scenario:

  • The navigation system generates driving directions to the driver.

Relationship required for the following use cases:

  • Calculation of feasible routes.
  • Providing driving directions (including warnings).


Anomalies:

  • Turn restrictions given on street signs usually do streets, not to bikes driving on cycleways.
  • Turn restrictions may apply only to specific car types. E.g. truck. Could someone please provide an example.
  • In Germany, Hamburg the "Sierichstraße" is a one way street, which changes its turn direction during daytime in order to speed up commuter traffic. This with the change of the direction of the one way street, all side streets need to change their turn restrictions.
  • In Prague near National theater the is a changing turn restriction which routes cars depending on the traffic.



Name of a Dual Carriageway belongs to CARRIAGEWAY A and CARRIAGEWAY B

Typical usage scenario:

  • Motorways consist of two carriageways. One carriageway for each direction. Together they have a common name.
  • When viewing the name of the dual carriageway on a high zoom level only one name is presented for both carriageways togther.

Scenario:

  • The renderer generates from the available map data a slippy map to display the dual carriageway.
  • The renderer generates from the available map data a printable map to display the dual carriageway.
  • The navigation application generates a display of the current position of the dual carrieageway on its screan.

Relationship required for the following use cases:

  • Rendering for printing.
  • Rendering of tiles for display on the screen.
  • Realtime data display on the screen of the cars navigation system.


Anomalies:

  • Some motorways in europe have a german motorway ID like A44 and a european motorway ID E4. Both apply to both carriageways.
  • Are there examples of motorway crossings named in common parts named according to the names of both motorways?