{
  "city": "kuala-lumpur",
  "sources": [
    {
      "id": "kl-batu-walk-osm",
      "url": "https://www.openstreetmap.org/copyright",
      "title": "OSM exact Batu Caves pedestrian bridge and temple stairway-gate approach",
      "license": "ODbL-1.0",
      "checked": "2026-10-17"
    }
  ],
  "stations": [
    {
      "id": "kl:komuter:4442374940",
      "code": "KLBC1",
      "hideCode": true,
      "names": {
        "en": "Batu Caves KTM entrance",
        "ms": "Pintu KTM Batu Caves",
        "zh": "黑風洞 KTM 出入口"
      },
      "coordinates": [
        101.6808489,
        3.2375765
      ],
      "sourceNodeId": 4442374940,
      "sourceId": "kl-batu-walk-osm"
    },
    {
      "id": "kl:komuter:1686530084",
      "code": "KLBC2",
      "hideCode": true,
      "names": {
        "en": "Batu Caves stairway gate",
        "ms": "Pintu tangga Batu Caves",
        "zh": "黑風洞階梯入口"
      },
      "coordinates": [
        101.6838848,
        3.2375023
      ],
      "sourceNodeId": 1686530084,
      "sourceId": "kl-batu-walk-osm"
    }
  ],
  "lines": [
    {
      "id": "KL-W-BATU-CAVES",
      "mode": "walk",
      "color": "#697a72",
      "names": {
        "en": "Batu Caves station–stairway gate",
        "ms": "Stesen Batu Caves–pintu tangga",
        "zh": "黑風洞車站至階梯入口"
      },
      "sourceId": "kl-batu-walk-osm",
      "patterns": [
        {
          "id": "KL-W-BATU-CAVES-both",
          "stationIds": [
            "kl:komuter:4442374940",
            "kl:komuter:1686530084"
          ],
          "bidirectional": true
        }
      ]
    }
  ],
  "segments": [
    {
      "lineId": "KL-W-BATU-CAVES",
      "fromStationId": "kl:komuter:4442374940",
      "toStationId": "kl:komuter:1686530084",
      "sourceId": "kl-batu-walk-osm",
      "coordinates": [
        [
          101.6808489,
          3.2375765
        ],
        [
          101.6808485,
          3.2375826
        ],
        [
          101.6808391,
          3.2377439
        ],
        [
          101.6808389,
          3.2377703
        ],
        [
          101.6811737,
          3.2377801
        ],
        [
          101.6812411,
          3.2377806
        ],
        [
          101.6813171,
          3.2377811
        ],
        [
          101.6813393,
          3.2377812
        ],
        [
          101.6813388,
          3.2378248
        ],
        [
          101.681354,
          3.2378259
        ],
        [
          101.6813555,
          3.237779
        ],
        [
          101.6814425,
          3.2377793
        ],
        [
          101.681471,
          3.2377805
        ],
        [
          101.68147,
          3.2377933
        ],
        [
          101.6814685,
          3.2378137
        ],
        [
          101.6814469,
          3.2381024
        ],
        [
          101.681444,
          3.2381473
        ],
        [
          101.6816328,
          3.2381564
        ],
        [
          101.681715,
          3.2381589
        ],
        [
          101.6818281,
          3.2381206
        ],
        [
          101.6818796,
          3.2380911
        ],
        [
          101.6819335,
          3.2380603
        ],
        [
          101.6826351,
          3.2375777
        ],
        [
          101.6832358,
          3.2371645
        ],
        [
          101.6833023,
          3.2370841
        ],
        [
          101.6833203,
          3.2370624
        ],
        [
          101.6834617,
          3.2369652
        ],
        [
          101.6835141,
          3.2370255
        ],
        [
          101.6836526,
          3.2371904
        ],
        [
          101.6838234,
          3.2374111
        ],
        [
          101.6838465,
          3.2374453
        ],
        [
          101.6838848,
          3.2375023
        ]
      ],
      "sourceNodeIds": [
        4442374940,
        13398791455,
        1686532390,
        13398791468,
        9913027398,
        11899847277,
        1686532392,
        10949038886,
        4400850259,
        10949038885,
        10949038887,
        10949038884,
        6986552585,
        13433225642,
        13440167212,
        13389578362,
        1686532379,
        1686532391,
        4226401113,
        6986549084,
        13077893476,
        1686530058,
        13440848183,
        10949038881,
        13395809293,
        9913027404,
        4226401112,
        13395900114,
        10569171355,
        6860580199,
        13395900115,
        1686530084
      ],
      "sourceEdgeWayIds": [
        1460871599,
        447038501,
        447038517,
        447038517,
        447038517,
        447038517,
        1081572647,
        1081572647,
        1081572647,
        746565297,
        746565297,
        746565297,
        1465367980,
        1465367980,
        1459927360,
        156407953,
        156407953,
        156407953,
        156407953,
        746565296,
        746565296,
        156407788,
        156407788,
        156407788,
        156407788,
        156407788,
        156407786,
        156407786,
        156407786,
        156407786,
        1460581613
      ],
      "sourceWayIds": [
        156407786,
        156407788,
        156407953,
        447038501,
        447038517,
        746565296,
        746565297,
        1081572647,
        1459927360,
        1460581613,
        1460871599,
        1465367980
      ]
    }
  ],
  "links": [
    {
      "from": "KTMBC9",
      "to": "kl:komuter:4442374940",
      "bidirectional": true,
      "coordinates": null,
      "geometryStatus": "station-interior-unmapped",
      "sourceId": "kl-batu-walk-osm",
      "notes": {
        "en": "Platform-to-entrance walking is untraced.",
        "ms": "Laluan platform ke pintu belum dipetakan.",
        "zh": "月台至出入口的站內路徑未繪製。"
      }
    }
  ],
  "places": [
    {
      "id": "kuala-lumpur-batucaves",
      "endpoint": "kl:komuter:1686530084"
    }
  ],
  "newPlaces": [
    {
      "id": "kuala-lumpur-batucaves",
      "city": "kuala-lumpur",
      "category": "culture",
      "name": {
        "en": "Batu Caves stairway entrance",
        "ms": "Pintu tangga Batu Caves",
        "zh": "黑風洞階梯入口"
      },
      "lng": 101.6838848,
      "lat": 3.2375023,
      "stationIds": [
        "KTMBC9"
      ],
      "source": "https://www.malaysia.travel/explore/batu-caves",
      "coordinateSource": "https://www.openstreetmap.org/node/1686530084",
      "coordinateRole": "mapped_entrance",
      "checked": "2026-10-17",
      "navigation": "Batu Caves",
      "summary": {
        "en": "Reach the temple-complex stairway gate by KTM Komuter and mapped pedestrian paths.",
        "ms": "Pergi ke pintu tangga kompleks kuil dengan KTM Komuter dan laluan pejalan kaki dipetakan.",
        "zh": "搭 KTM 通勤鐵路，再沿已繪行人路徑抵達寺廟群階梯入口。"
      },
      "hours": {
        "en": "Check official train timetables and local temple access.",
        "ms": "Semak jadual tren rasmi dan akses kuil di lokasi.",
        "zh": "請查閱官方列車時刻並確認寺廟現場通行安排。"
      },
      "tip": {
        "en": "The mapped approach includes a footbridge and a 53-step flight. It ends before the 272-step temple climb, which is not included. Station interiors remain untraced; no step-free route or walking duration is claimed. Respect worship and dress guidance.",
        "ms": "Laluan dipetakan merangkumi jejantas dan 53 anak tangga. Ia berakhir sebelum pendakian 272 anak tangga ke kuil, yang tidak termasuk. Dalaman stesen belum dipetakan; laluan tanpa tangga dan masa berjalan tidak dijamin. Hormati ibadat dan panduan pakaian.",
        "zh": "已繪路線含行人橋與53階梯段，終點在通往寺廟的272階梯前，不含登階路線。站內路徑未繪製，未宣稱無階梯通行或步行時間；請尊重宗教與服裝指引。"
      }
    }
  ]
}
