jeffme___
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # Priorities for Railroad Styling in OHM (DRAFT, for review) *(aka, what should show up when, and why?)* ## Approach This doc attempts to summarize the full content of railway styling in the OHM community and to recommend some approaches, both specific and general for styling both the Historical & Railway layers moving forward. The doc also attempts to reconcile our railway styling efforts with the railway styling of 3 other projects, [OpenRailwayMap](https://www.openrailwaymap.org/index.php) (ORM), the next-generation [OpenRailwayMap app](https://openrailwaymap.app/#view=3.74/49.63/23.26) (ORMa) and OpenStreetMap [Americana](https://americanamap.org/#map=4/40.5/-94). ORM & ORMa are helpful benchmarks for what the railway community might expect from OHM's Railway layer. Americana is a great reference for how to clearly style railways at higher zooms using modern stylesheets. In many cases, where a design approach is unclear, OHMers are encouraged to default to how ORM or Americana handled this approach, in order to not reinvent the wheel & to draft off of others' efforts. After reviewing the feedback, and comparing our styles to ORM and Americana, we will review our objectives for each zoom level, focused around the types of stories that *could* be told at each level. With those stories in mind, this doc will suggest possilbe Historical and Railway layer changes *for community feedback*. TAGGING NOTE: Some style updates may require updates to our tagging practices, the development of new to OHM tagging styles, abandonment of OSM tagging practices, or just plain adding some tags that are missing. The goal of these style updates will be to make what's tagged properly look great. Rails missing tags may not look as sharp and may require additional effort or rework to bring up to par. TECH NOTE: We may not be able to reliably deliver some of the goals outlined in this doc. Refining our current styles to where they might be more easily maintained and more uniformly updated may require the implementation of a style-generating script. Until we adopt such a system, we will likely achieve only portions of the goals outlined in this doc. ## Key References Reviewed [PLEASE ADD] **Goal**: catalog every feature, zoom level, design objective across all discussions * [OpenRailwayMap](https://www.openrailwaymap.org/) * Next-generation [OpenRailwayMap app](https://openrailwaymap.app/#view=3.74/49.63/23.26) (ORMa) * OpenStreetMap [Americana](https://americanamap.org/#map=4/40.5/-94) * Github Issues PRs * [#287: railway rendering](https://github.com/OpenHistoricalMap/issues/issues/287) * [#405: Add a railway mapping focused layer to OHM](https://github.com/OpenHistoricalMap/issues/issues/405) * :star: [#558: Railway style - design considerations](https://github.com/OpenHistoricalMap/issues/issues/658) * :star: [#608: Design Review for Feedback](https://github.com/OpenHistoricalMap/issues/issues/608) - specifically, railway commentary * [#637: Add rail-centric tags to vector tiles](https://github.com/OpenHistoricalMap/issues/issues/637) * [#706: Adopt something close to @flha127's styling suggestions](https://github.com/OpenHistoricalMap/issues/issues/706) * [#717: Add styling for route_lines to staging versions of main and rail OHM styles](https://github.com/OpenHistoricalMap/issues/issues/717) * [#1074: Render railway features](https://github.com/OpenHistoricalMap/issues/issues/1074) * :star: [Americana PR476: Add railroad tracks](https://github.com/osm-americana/openstreetmap-americana/pull/476) * Forum Posts * :star: [What should a rail-centric OHM layer look like?](https://forum.openhistoricalmap.org/t/what-should-a-rail-centric-ohm-layer-look-like/76) * :star: [How to tag the ‘local railways’?](https://forum.openhistoricalmap.org/t/how-to-tag-the-local-railways/150) * [OpenRailwayMap adds OpenHistoricalMap](https://forum.openhistoricalmap.org/t/openrailwaymap-adds-openhistoricalmap/446) * [Railroads are too dominant](https://forum.openhistoricalmap.org/t/railroads-are-too-dominant/490) * [Personal page to document tramways in Mainz](https://forum.openhistoricalmap.org/t/personal-page-to-document-tramways-in-mainz/480) * Discord discussions: not reviewed... yet * Key historical online comparables: * GIN example * [Union Pacific Historical Maps](https://www.up.com/about-us/history/photos/historical-maps) * [Western Pacific Yard Diagrams](https://www.wplives.com/diagrams/track/yards/index.php) * [Rails and Trails: Transportation History - Sources Diagrams](https://www.railsandtrails.com/diagrams.htm) * Key locations for comparison: * Karlsruhe Station W - OHM, OSM, ORM, G, B, A * Bailey Yard [W](https://en.wikipedia.org/wiki/Bailey_Yard) - largest in the world - OHM, [OSM](https://www.openstreetmap.org/#map=14/41.15152/-100.83986), ORM, G, B, A * Maschen Marshalling Yard [W](https://en.wikipedia.org/wiki/Maschen_Marshalling_Yard) - OHM, [OSM](https://www.openstreetmap.org/node/615433252#map=14/53.40332/10.09189), [ORM](https://openrailwaymap.app/#view=14/53.40606/10.0574), G, B, A * Chongqing East [W](https://en.wikipedia.org/wiki/Chongqing_East_railway_station) - OHM, [OSM](https://www.openstreetmap.org/node/10561477550#map=14/29.47760/106.69982), [ORM](https://openrailwaymap.app/#view=14/29.48643/106.67353), G, B, A * Grand Central Terminal [W](https://en.wikipedia.org/wiki/Grand_Central_Terminal) - OHM, [OSM](https://www.openstreetmap.org/node/7099182377#map=16/40.75523/-73.96985), [ORM](https://openrailwaymap.app/#view=16/40.754882/-73.974486), G, B, A ## General types of stories **Goal**: General brainstorming before we get to specific zoom level discussions. We're looking for stories to tell & themes to emphasize, and relevant style/layer for the story (H or R) **[PLEASE ADD/CORRECT!]** * Evolution of infrastructure: * Tracks at all - **H**, **R** * Track gauge / incompatibility - **R** * See: [Project Unigauge](https://en.wikipedia.org/wiki/Project_Unigauge) in India (@clay_c) * Electrification - **H**, **R** * Regional segmentation of operations: * Operator - **H?**, **R** * Urban evolution of: * Rail facilities - **H**, **R** * Local rail - **H**, **R** * Subways - **H**, **R** * Special purpose systems * Mining - **H**, **R** * Industrial - **H**, **R** * Military - **H**, **R** @clay_c: If I had to rank these thematic layers in order of importance to railroad enthusiasts: Infrastructure Operator Track gauge Electrification Max speeds Signalling and train protection @Bauer33333: Be aware that you have a North American centric view on this topic but openhistoricalmap is used worldwide. Eg. if I had to rank them it would look like this: Infrastructure Electrification Max speed Signalling and train protection Track gauge Operator **@Pilgerobst:** I would also point out, that at least in Europe especially in Germany there were many railways built to densely connect rural regions to the big cities. These are called Kleinbahnen (or Kreisbahnen). Those railways do not fit into current tagging practicies. Those railways are mostly split between `usage=branch` and `railway=narrow_gauge` (if not standard gauge). [This narrow gauge](https://www.openhistoricalmap.org/relation/2871607#map=13/54.74147/9.52746&layers=R&date=1931-07-17&daterange=1824-01-01,2025-12-31https://) and [this standard gauge](https://www.openhistoricalmap.org/way/200014615#map=13/54.63967/9.59218&layers=R&date=1931-07-17&daterange=1824-01-01,2025-12-31) railways serve the same purpose and the same area. There should be a way to render both railways equal with a seperation to main/branch railways. ## General style considerations **Goal**: Outline general style discussion considerations that apply to all zoom levels before getting to specific zoom-level discussions. **[PLEASE ADD/CORRECT]** * Zoom levels in this doc reflect standard OHM browser zoom levels * Many modern sites use a different zoom level system * E.g., [OSM `z=2`](https://www.openstreetmap.org#map=2/-4.7/-118.1) is the same zoom as [Americana `z=1`](https://americanamap.org/#map=1.1/0/133.3) * Mnemonic: The "Os (OSM, OHM) start at 0"; not counting ORM... * [Vector tile](https://vtiles.openhistoricalmap.org/#3.97/43.33/11.89) zooms, where needed, should be labeled as `vz=#` * Target display size... this is tricky... * 1280x800? 1440x900? 1920x1080? * This answer will impact rendering decisions * For example, here is `z=4` at 1280x800, which is quite crowded if the inspector and time slider are expanded. ![image](https://hackmd.io/_uploads/rygMgDzk-l.png) * The scope of stories that can be told at what zoom level vary significantly by screen resolution * Features shown at a zoom should not be overlapping * `usage=main` is too big at 9 & 10 in Belgium & Europe... and they overwhelm the borders - [@Alphathon](https://forum.openhistoricalmap.org/t/railroads-are-too-dominant/490/4) * [#769: Improve clarity "mushy" looking rail lines at browser z=8 and 9](https://github.com/OpenHistoricalMap/issues/issues/769) * When overlapping, features should either be: * Removed from that zoom level or * Shrunk in rendered size * Styling differentiation should be 2-factor * May need to depend on more than just 1 factor - e.g., color, line pattern - for differentiation, due to concerns about colorblindness. (@Ashton747: Using **color and linestyle** to distinguish rail types is important, as colorblindness is wildly common. this is something some maps don’t handle very well, understandably) * Stories must be able to be "told" through what the OHM map layers can depict on their own. Users are expected to add any possible overlays or annotations using non-OHM tools and are out of the scope of this discussion. * **Action**: we really need .5 zoom increments at a minimum. : ) ## Zoom level-specific review **Format**: Each zoom level section discussion *may* address: * **Scope** of the browser viewport for that zoom level * **Stories** that users might want to tell at that zoom level & which layers might want to depict that story - **H**istorical and/or **R**ail. * **Data and graphics** required to tell these stories; may include styling, labeling, or tagging recommendations * **Actions** needed to enable the desired stories at the specific zoom level * **Questions** that users might have or that we need to address as part of this investigation * **Style showcase**: what type of demo might demonstrate that the zoom level style goals have been met / satisfied * **Examples** of other sites or maps that are models for the aims of that zoom level. Could be modern or historical. ### z0-1 Scope: global Not great story layers. Everything is just land and sea, and it's all too small! ### z2-3 Scope: transcontinental **Stories** * **H** - Assuming no real human infrastructure depicted at these levels. * **R** - General, blobby cross-continental comparisons of main line buildout across continents. See: [ORM](https://www.openrailwaymap.org/) ![image](https://hackmd.io/_uploads/H1FEUPzyZe.png) **Supporting graphics/data** * Main railway lines **Action**: * Make rail lines available in vector tiles at this level for styling in the **R** layer. They currently show up first at `z=6` in the vtiles `transport_lines` layer. Comes at a cost of tile size / weight. **Question**: * Is this really a high priority story to tell? Does OHM's Railway layer need to show rail stories at this level? My inclination is *yes*. ### z4 Scope: continental **Stories** * When were cities connected by rails? **H**, **R** * What was the extent of major rails across a land? **H**, **R** * Where were there incompatibilities? **R** * When were lines electrified? **R** * When were passenger and cargo lines split (or are they?) **R** * Regional rail hubs (e.g. Chicago, Atlanta, any in England)? **H**, **R** * Compare interstate highway growth to rail growth? **H**, **R** * Comparisons of rail growth across European countries? **H**, **R** **Supporting graphics/data** * Major rail lines * `usage=main`? * `operator`? * by width? * Stations by type? * [Hump yard](https://en.wikipedia.org/wiki/Classification_yard#Hump)? * [Gravity yard](https://en.wikipedia.org/wiki/Classification_yard#Gravity) * Cold connection? * Cities by size / amount of volume serviced? **Style showcase**: a demo of a clean, layperson-friendly evolution of rail system in US that also works in the UK #### Comparable graphics: **Union Pacific System as of 2019** W - roughly `z=5.5` from [trains.com](https://www.trains.com/trn/railroads/history/a-map-of-the-union-pacific-today-that-includes-the-original-route-of-the-transcontinental-railroad/) ![image](https://hackmd.io/_uploads/rJIueSe1Wl.png) **Railroad evolution on the Indian subcontinent** Find this graphic **Action**: * Make rail lines available in the vtiles at this level, as above. **Questions:** * tbd ### z6 Scope: Super-regional / Regional **Stories** * Same as `z=4`, plus: * Presence of stops along a line? (maybe at higher zooms?) **Supporting graphics/data** * Major rail lines (`usage=main`?) **Style showcase**: a crisper/cleaner demo of the `z=4` showcase #### Examples: **R** today: add this **WIP OHM Railway layer compared to 1896 Southern Pacific Map** Note: no time filtering on WIP layer (right) ![Monosnap Image 2025-10-31 13-11-03](https://hackmd.io/_uploads/SkJMOcGJ-g.png) But... lines that thick can be way too dense elsewhere `z=6`: ![image](https://hackmd.io/_uploads/BJoM7RMy-g.png) With that density of lines, almost no narrowing of the lines will eliminate the spaghetti effect: ![image](https://hackmd.io/_uploads/SkhOEAGy-l.png) **Action**: Slightly reduce line detail in `vz=5` `transport_lines` layer. This wll smooth out the lines a small amount. **Action**: Add station points to the vector tile `transport_points_centroids` at this zoom, so stations can be included as either points or points and labels. **Action**: Add city points to the vector tile `place_points_centroids` at `vz=4` (see: [Americana](https://americanamap.org/#map=4/38.22/-97.96)), so cities can be added, as appropriate. **Action**: Add abbreviated placenames to `place_points_centroids` at `vz=4`, so `admin_level=4` labels can use abbreviations & distract less from railway lines. **Question**: Is there any sort of prioritization at all of some rail lines over others (higher volume of traffic, load, etc.) that rail mappers would like to use to visually highlight some segments over others? My guess is *no*. **Question**: Given the above question, how thick should the lines be at this level? Should we use color of any sort? ### z7-10 Scope: Not sure what shines here... tbd ### z7 Scope: **Stories** * Still too low / wide area to show < main **Supporting graphics/data** * tbd ### z8 Scope: **Stories** `usage=branch` shows up here on ORM untagged show up here, too? **Supporting graphics/data** Key: highlight rail, but differentiate different levels easily in same view * How to maintain as you zoom in ### z9 Scope: **Stories** * tbd **Supporting graphics/data** * `station=large` and `station` icons show up at `z=9` on ORM ### z10 Scope: **Stories** * tbd **Supporting graphics/data** * tbd ### z11 Scope: Huge urban area metro lines **Stories** * Evolution of municipal subway/other systems * Merging of above ground and alternate systems **Supporting graphics/data** * Metro lines evolution * Metro stops growth * Line names #### Examples: ### z12 Scope: No yard-level detail / urban area metro lines **Stories** What stories could be told here? * Evolution of yard footprint? * Number of lines coming in and out? **Supporting graphics/data** * Yard footprint * Major lines in & out of a yard or station? * Merging approaches, route arounds? #### Examples: **NYC Subway System** W - `z=11` on [ORM](https://openrailwaymap.app/#view=11/40.7637/-73.9171) ![image](https://hackmd.io/_uploads/HJIcESeyZg.png) ### z13 Scope: Huge Yard-level mush / citywide systems **Stories** **Supporting graphics/data** * Yard footprint * Individual lines? #### Examples: **London Station Group** [W](https://en.wikipedia.org/wiki/London_station_group) - at `z=13` on [OSM](https://www.openstreetmap.org/#map=13/51.50730/-0.10197) ![image](https://hackmd.io/_uploads/HkA7MBlJ-e.png) as shown on [LSG Wikipedia article](https://en.wikipedia.org/wiki/London_station_group#/media/File:Major_railway_stations_of_London_map.svg), roughly `z=14`: ![image](https://hackmd.io/_uploads/SyirGBxJZe.png) **Yamanote Line, Tokyo** [W](https://en.wikipedia.org/wiki/Yamanote_Line) - at `z=13` on [OSM](https://www.openstreetmap.org/relation/5376382#map=13/35.67424/139.75502): ![image](https://hackmd.io/_uploads/HJPZqHl1bl.png) and [ORM](https://openrailwaymap.app/#view=12/35.67759/139.72658): ![image](https://hackmd.io/_uploads/H1RUcBxkZx.png) ### z14 Scope: Huge Yard-level detail & line organization outside of terminals **Stories** **Supporting graphics/data** **Bailey Yard** [W](https://en.wikipedia.org/wiki/Bailey_Yard) - 8 miles long, at `z=14` in [OSM](https://www.openstreetmap.org/way/200343622#map=13/41.12909/-100.80634). Fat lines all mushing together. ![image](https://hackmd.io/_uploads/BJv-lZl1We.png) **Maschen Marshalling Yard** [W](https://en.wikipedia.org/wiki/Bailey_Yard) - at `z=14` in [OSM](https://www.openstreetmap.org/node/615433252#map=14/53.40332/10.09189) ![image](https://hackmd.io/_uploads/B18ffbgJWx.png) **Chongqing East** [W](https://en.wikipedia.org/wiki/Chongqing_East_railway_station) - at `z=14` in [OSM](https://www.openstreetmap.org/node/10561477550#map=14/29.47760/106.69982). Note the convergence and routing coordination outside of the immediate station. ![image](https://hackmd.io/_uploads/BknhXWgkbx.png) ### z16 Scope: Big passenger terminal / small city station-level detail **Stories** * Emergence of town around the presence of the station * Evolution of passenger terminal footprint / buildings over time? * Emergence of other transport-related activity around the terminal? * Surrounding industrial landuse - stockyards, granaries, etc. **Supporting graphics/data** * Bridges? * What is geometry & what is icons (or smaller!) * How subdued are sub-primary lines? #### Examples **Grand Central Terminal** W - at `z=16` in [ORM](https://openrailwaymap.app/#view=16/40.754882/-73.974486). Goals here aren't exactly clear, but it appears to be to show individual lines, entry locations, line stops, and underground footprint. ![image](https://hackmd.io/_uploads/r1jgu-xJWe.png) **Bruneck Bahnhof** [W](https://it.wikipedia.org/wiki/Stazione_di_Brunico?uselang=en) - at `z=16` in [OSM](https://www.openstreetmap.org/node/5943496647#map=16/46.79416/11.92978) ![image](https://hackmd.io/_uploads/HJQ3ezx1bl.png) **Heilbronn Hauptbahnhof** [W](https://en.wikipedia.org/wiki/Heilbronn_Hauptbahnhof) - at `z=16` on [OHM](https://www.openhistoricalmap.org/node/2134885399#map=16/49.14450/9.21109&layers=O&date=1983-05-03&daterange=0050-06-25,2025-12-31) ![image](https://hackmd.io/_uploads/rkO41LgJ-g.png) **Historical Comp: Heilbronn Hauptbahnhof** [W](https://en.wikipedia.org/wiki/Heilbronn_Hauptbahnhof) on [WC](https://upload.wikimedia.org/wikipedia/commons/b/bd/Bahnhof_Heilbronn_Gleisplan_1895.png) Note how thin the railway line lines are. Even with the ability to draw very fine detail, the artist rendered a single, almost hairline stroke for each track. ![image](https://hackmd.io/_uploads/S1Odqr-yZl.png) **Sanborn Station-Level Map: Galesburg Yard (BNSF), IL** [W](https://en.wikipedia.org/wiki/Galesburg_Yard) - on [WC](https://en.wikipedia.org/wiki/Galesburg_Yard#/media/File:Sanborn_Fire_Insurance_Map_from_Galesburg,_Knox_County,_Illinois._LOC_sanborn01880_003-14.jpg) This uses double-lines for the rails, but I'm not sure there's any improved clarity. Just look at those turntables and round houses. ![image](https://hackmd.io/_uploads/Sy5unHbyZl.png) **Philadelphia's 30th Street Station** [W](https://en.wikipedia.org/wiki/30th_Street_Station) - [from Hagley Museum](https://www.hagley.org/librarynews/manuscripts-and-archives-philadelphia-map-society-visit) ![image](https://hackmd.io/_uploads/SJl3eLZkbx.png) on [ORMa](https://openrailwaymap.app/#view=15.9/39.958845/-75.183484): ![image](https://hackmd.io/_uploads/rJh5WLbJWe.png) on [Americana](https://americanamap.org/#map=15/39.9619/-75.18266) at `z=15`: perhaps room to quibble about some lines merging together, but that shouldn't distract from all-around awesomeness ![image](https://hackmd.io/_uploads/HJNAJuZk-l.png) **Leipzig-Plagwitz Industrial Station** [W](https://de.wikipedia.org/wiki/Leipzig-Plagwitz_Industriebahnhof) - from [WC](https://upload.wikimedia.org/wikipedia/commons/f/f4/Gleisplan_leipzig_plagwitz_km10.84.jpg), via [@Bauer33333](https://www.openhistoricalmap.org/user/Bauer33333): ![image](https://hackmd.io/_uploads/HkiTEI-1Wl.png) Also from [WC](https://upload.wikimedia.org/wikipedia/commons/c/cc/Bahnhoefe_Industriegleise_Plagwitz-Lindenau.jpg): Perhaps a little busy, but a mazing detail of neighboring & related facilities. Shows the tight interweaving of rails, warehouses, and other roads. ![image](https://hackmd.io/_uploads/BJFrULbkWx.png) **Stewarts & Lloyds Tubemakers** W - `z=17z`from @AndrewS on [OHM](https://www.openhistoricalmap.org/#map=17/-32.889389/151.745551&layers=O&date=2022-07-23&daterange=1780-01-01,2023-12-31): ![image](https://hackmd.io/_uploads/ByNMBvWkbg.png) ### z18 Scope: Station-level detail **Stories** **Supporting graphics/data** * What data *would be* needed? ### z20 Scope: Track-level detail **Stories** **Supporting graphics/data** * What data *would be* needed? ### z21+ Scope: micromapping... what would be helpful? **Stories** * What stories *could be* told here? * What *might* require this high of a zoom? **Supporting graphics/data** * What data *would be* needed? ## Railway visual vocabulary This is a more detailed discussion of the various visual elements found on railway maps. ![image](https://hackmd.io/_uploads/S1A0RV_1-e.png) [Penn Central Columbus Yard 1969 Diagram Legend](https://www.railsandtrails.com/PC/PC1969ColumusYard/PC1969ColumbusYard-150.jpg) ![image](https://hackmd.io/_uploads/B1ohyrdk-l.png) [Wheeling and Lake Erie Brewster Yard 1918 map, modified 1940](https://www.railsandtrails.com/W&LE/Brewster/index.htm) ### Non-rail features **R**: In general, non-rail features should be extremely subdued... except as they pertain to rail-related activities, such as roads, cross-modal facilities (ports, industrial rail-related features). **H**: In general, rail features should participate in these stories as an "equal partner" to other map features. In other words, rail features should not and cannot dominate this layer. **Question**: * How do we identify rail-related features that might otherwise be depicted with subdued styling in **R**? ### Rail lines differentiation Rail lines on maps are long, and thus have potential for confusion with other long lines on maps, such as: other rail lines, roads, and borders. Here's a great illustration of road / rail differentiation from [*How to Lie with Maps*](https://books.google.com/books?id=MwdRDwAAQBAJ&pg=PA141) (@1ec5): ![image](https://hackmd.io/_uploads/SyJZ5-tJWg.png) **Rail type differentation** Need a chart like the one above. **Road differentiation** Need a chart like the one above. A full accounting of this type of differentiation may require an update to our various road styles Roads should be subdued, but perhaps not as much as other base map features, in the **R**ailway layer. **Border differentiation** Need a chart like the one above. ### Rail attribute differentiation NOTE: Not all differentation needs to be styled. Whether something is styled depends on the type of story that is being told and the possible priority of that story versus costs (in tile weight) of adding that data. **Type** * Purpose types * Infrastructure types: electrification, etc. > **[name=Pilgerobst]** > Maybe introduce a new key for "Kleinbahnen". My proposal would be a new key called: minor=yes **Lifecycle** * Construction * Operation (baseline styling focus) * Disuse * Abandandoned * Removed **Location** * Bridge * Tunnel * Embankment * Embedded / street running **Operator** * Shields? ### Icons Remember: some of these may have been more important historically than currently. * Low zoom * Major city points * Yard points * Medium zoom * Station icons * Yard icons * Medium-high zoom * Turntables * Yard Infrastructure * Industrial Infrastructure * What's different at ports? * Building types * Platforms * Terminals * Service / maintenance * Coaling Towers * Water Towers * Station Infrastructure * [Transfer Stations](https://www.openstreetmap.org/relation/8429815#map=19/38.018934/-121.932701) * Large passenger stations * Smaller stations * Subway stations * High zoom * Detailed mapping of railway elements * Icons for: * Signals * Switches x * Buffer stop x (20/51.4160262/6.7416611) * Loading gauge x (20/47.5434194/9.6805508) * Weighbridge * Water cranes x (18.29/43.763721/1.993345) * Wash x * Phone * Signal box * Railway crossing barrier/gate * Ticket office * Entrances * Crossings * Railway crossings * Stop Infrastructure * Light rail * Trams * Comparables: bus stops? ### Colors * Need to provide contrast from base map * Colorblind sensitive ### Patterns * Must not be too jumbled at any zoom level where it is used ## Railway tagging This section is left for completion of the discussion outlined above. Tags to support should derive from those intents. Below is a non-exhaustive set of comments collected from sources identified in the References section. @Ashton747: Distinguishing service =* and usage =* tags in the vector tiles will be key to success of this map style, and very helpful for the OG map sytle. Using **color and linestyle** to distinguish rail types is important, as colorblindness is wildly common. this is something some maps don’t handle very well, understandably. It doesn’t have to be too different from the current style, but maybe with less prominent roads and more prominent rail. Incorporating more of the entire railway key and railway related landuse key would be a good thing to do, but not super critical to me personally. Q: How to encourage tagging that ORM'ers would find interesting or what not to do that would discourage them? @Bauer33333: Be aware that you have a North American centric view on this topic but openhistoricalmap is used worldwide. Eg. if I had to rank them it would look like this: Infrastructure Electrification Max speed Signalling and train protection Track gauge Operator I’m not really convinced on adding max speeds either. I would be really awesome to see what lines got speed improvements and what lines turned to the worse over the decades but I doubt there are enough historic sources to map enough for the layer to be of any use. Train protection could be interesting with the current switch to ETCS, but this is more of a niche topic. What I personally am interested in is how old yards and loading areas worked, but there are even tags lacking for this in openstreetmap. Other tags are irrelevant for OSM and not even shown but will be everywhere in OHM, like **railway=water_crane**. But this is detail work for later. First **supporting all service and usage tracks** is crucial for it to be of any use. I have started mapping some yards and **it really takes the fun when you map 20 tracks and two are rendered**. @flha27 tram; light rail; subway; narrow gauge; rail “usage”=“main”; not displayed - rail “usage”=“branch”, appearance identical to narrow_gauge; not displayed - rail “usage”=“industrial”, appearance identical to rail “service”=“yard” below; rail “service”=“yard”; disused; abandoned; rail “highspeed”=“yes”. [discussion](https://forum.openhistoricalmap.org/t/how-to-tag-the-local-railways/150/9?u=jeffmeyer): rail:streetrunning=yes or embedded=yes ? [@Kovoschiz](https://forum.openhistoricalmap.org/t/how-to-tag-the-local-railways/150/2?u=jeffmeyer): Fundamentally, railway=rail could be adopted as the only track feature in a rethink and break from OSM, with rail= =mainline . =tramway , =heavy & =light (could be categories for others) , =subway etc. Then the feature doesn’t need to be changed (or worse redrawn by someone) when it changes use in history. The distinction of eg =narrow_guage could be poorly defined in history, and it’s poorly named anyway. Or at least there should be an equivalent to building= + building:use= if railway= is considered as what it is built as. The possibility of using tram=yes etc doesn’t mean a main type can’t be defined. usage=main usage=industrial usage=branch usage=military usage=tourism service=spur service=siding service=yard service=crossover electrified high speed usage electrified=* (1) covered=* (2) indoor=* (2) usage=* street_running=* route relations need a rail tag on them route=train https://www.openhistoricalmap.org/relation/2747855#map=10/44.7797/10.5250&layers=O&date=1825-01-01&daterange=1900-01-01,2025-12-31 route=railway https://www.openhistoricalmap.org/relation/2749528#map=12/37.1994/-122.0178&layers=O&date=1825-01-01&daterange=1900-01-01,2025-12-31 don't forget [route masters](https://www.openstreetmap.org/relation/8237627) (need a better name) to cover 2-way routes (1) To not complicate things too much, we can have an electrified=1 when the tag exists and =0 vice versa. (2) These two can have tunnel=1 which would avoid adding additional tags. Having a layer= tag would also be useful. @Paul_the_archivist "Presumably these would be based on the electrified=yes, service=high_speed, and usage=* tags, respectively." Service=high_speed describes route relations, not tracks. Afaik service can also already be used to render tiles. What he would need is highspeed=yes. Electrified=yes is also rare and discouraged to be used, you would usually give a value that tells the kind of electrification @Tjoeker: One thing I’m missing on ORM is whether a line is freight/passenger/mixed(/HSR). I think probably the thing I’d like most on a historical railway rendering would be to show the stations more prominently. Also goods stations (perhaps mapped as railway=yard?) should feature on the map. In addition to rail infrastructure, it might also be nice to feature things like factories (man_made=works) and mines which were connected to the railway and served by freight trains - which may help show how certain lines were used. I’m not aware though of any established tag to indicate this. @skunkman56: Operator Electrification Track gauge infrastructure Signalling and train protection Operator- extent of various ownership’s rail networks at different times, consolidation and break-ups are especially poignant to depict cartographically Electrification- Interurbans- so many of these long-forgotten and difficult to relocate their original right-of-ways, but interesting to map for posterity’s sake and impetus for new light rail possibilities in current urban planning Track gauge- interesting to know what was narrow gauge, when lines were upgraded or never upgraded Infrastructure- i am very interested in original alignments, subsequent re-routes and realignements, station locations, spurs/branches/sidings, abandoned routes Signalling is not a particular interest of mine - not a modeller/train orders person, more into the historical geography of rail network development and senescence, establishment of post offices, plats, hamlets, villages, towns, cities @flha27: the white/yellow dotted lines indicate whether the line is electrified or not ; the two black lines furthest to the right are for bridges and tunnels ; tram; light rail; subway; narrow gauge; rail “usage”=“main”; not displayed - rail “usage”=“branch”, appearance identical to narrow_gauge; not displayed - rail “usage”=“industrial”, appearance identical to rail “service”=“yard” below; rail “service”=“yard”; disused; abandoned; rail “highspeed”=“yes”. An alternative to dotted lines could be to use two colors, one dark and the other light. As for names for “usage”=“main” or “branch”, a solution could be to display at a low zoom level only the “operator” tag and at a higher level the “operator” and the “name”. As for “usage”=“industrial” and “service”=“yard” the simple display of the name at high zoom level would be sufficient. At a higher zoom level, we could also display the type of electrification, gauge and the signaling. I also recommend adding these tags to the rendered layers: operator, usage, highspeed, layer, gauge, frequency and voltage. As for railroad signaling, rather than using the Openstreetmap schema which is quite complex, I propose adding a “signaling” tag. ### READ THIS: jeffreyameyer on Feb 28, 2024 Member @Bauer33333 @flha127 - there's some discussion of putting the usage=* values in OHM into the type=* values in the vector tiles. It seems electrified=* and highspeed=* might be overlapping with other type=* values. Is the current expectation be that there'd be different styling for electrified or highspeed rail lines? If so, we'd need to add different values for those. Bauer33333 Bauer33333 commented on Feb 29, 2024 Bauer33333 on Feb 29, 2024 · edited by Bauer33333 Having usage in the types doesn't sound the worst idea at first, since the most common rail type to use usage= is only railway=rail . Taginfo for open_street_map shows quite a few trams and stuff with usage as well, but I have no idea what this tagging is trying to describe so I would ignore those for now. Usually you would only use service= on those what doesn't introduce any conflicts here. I see conflicts with railway=narrow_gauge tho if we want to render usage= on them. Not sure how important that will become, nowadays (on OSM) narrow gauge rail networks have become a bit rare so you don't bother, but this looks different in a historical context. I would call electrified= a nice to have right now and not a must have yet, especially compared to usage=, but it would be a very nice nice to have. Maybe flha has a different opinion on this since his style is the first one I've seen combining them. On ORM they use an extra style for electrification that shows voltage= and frequency= as well. We could probably put highspeed= in type as well, since it is usually only used on tracks with usage=main. See the current situation on OSM: grafik But I would go so far and say we should not render that yet, not before we have an established guideline what highspeed rail even means in a historical context: Does the Lackawanna Cutoff qualify as high speed rail? If yes at which year is it considered too slow? Do we only tag modern highspeed lines as the OSM definition describes? ... Lots of open questions regarding that for me. It is not a top priority to answer them now, but I just don't feel we are there yet to render them (encouraging people to map them) without having conflicts about the definitions with those people later on flha127 on Mar 26, 2024 · edited by flha127 Author Good morning, Sorry for this late response, I didn't see the notice. If I understand correctly, you would like the content of the usage tag to be put as the value of the type tag? If that's it then no it won't work, there should be two tags, one for the type of infrastructure rail= and the other for the use we make of it. Other types of rail= can also use this tag so this would create a conflict. However usage and service cover the same idea, so we can suggest abandoning usage= and using only service= or the opposite. The electrified tag is a must have, historically electrification is a crucial date for a line. For the moment we can make do with electrified=*, voltage= and frequency= are less important and rarely used. As for the modern definition of highspeed I would say a line with railway=rail+usage=main+electrified=* built from the 1950s with construction standards (as grade separation or min curve radius) allowing high speeds (let's say in the 1950s 250km/h at random) and a dedicated rolling stock. Historically, it would be necessary to define the construction standards and the speed from which a line can be qualified as high speed (also before the 1950s electrification was not a key factor). For the first half of the 20th century I would say that the Lackawanna Cutoff meets both conditions. In the same vein as highspeed= (improvement of infrastructure) a street_running= tag has its historical interest in seeing this other form of improvement. It can be implemented quite easily with: for railway=rail/subway/narrow_gauge street_running as an exception tagged street_running=yes ; and for railway=tram/light_rail for whom street_running is natural; the opposite with street_running=no. 1ec5 commented on Apr 7 1ec5 on Apr 7 Member there's some discussion of putting the usage=* values in OHM into the type=* values in the vector tiles. If I understand correctly, you would like the content of the usage tag to be put as the value of the type tag? I think there was a misunderstanding. #637 (comment) was talking about type as a feature property in the tiles, after postprocessing, not in raw tags in the database. type=geometry has been picking up steam lately as part of an experimental tagging scheme, but I’d tread with caution here. type=* is a special key reserved for relations. OSM deprecated its use on ways many years ago, and a variety of data consumers and editing tools have come to treat it as an error. This is one of the few times where the OSM community and ecosystem has been so thoroughly on board with a deprecation. Rather than undo this deprecation, I suggest looking for a less ambiguous key if needed. The feature property can be type without any of those considerations. Going back to the original request, OpenHistoricalMap/ohm-deploy@62e368d added electrified, highspeed, service, and usage properties to the tiles as part of OpenHistoricalMap/ohm-deploy#285. Each of these properties is a pass-through for identically named keys in the database, though hiddewie/OpenRailwayMap-vector#246 (comment) makes the point that we should consider postprocessing the tags into more readily styleable properties. To reduce confusion about what’s been implemented, I’m closing this original feature request, but feel free to open a separate issue about anything more specific that we need to do in the tiles. [Excellent changeset discussion](https://www.openhistoricalmap.org/changeset/107173#map=13/50.77100/3.24220&layers=R&date=1924-03-11&daterange=1824-01-01,2024-12-31) 3 top-notch mappers, @flha27, @Tjoeker, & @Bauer33333 ## OHM Railway contributors to this discussion @natfoot @flha27 @Bauer3333 @clay_c @Skunkman56 @AndrewS @Ashton747 @Pilgerobst @Tjoeker @Paul The Archivist @todrobbins @Luke04 @kovoschiz @ManuelB701 @Alphathon @CharliePlett @1ec5 @jeffmeyer

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully