Why mine site location data is different
Data centre location data follows a predictable hierarchy: site, building, floor, row, rack, U-position. The vocabulary is standardised. The separators are usually consistent. A parser built for data centre locations can handle most inputs with a small set of rules.
Mine site location data does not work this way. Underground mines use level designators (L4, Level 4, 580L, 4200 Level), drift names (North Drift, South XC, East Heading), and stope identifiers (Stope 12, 12N Stope). Open pit mines use pit designators (Pit 1, Main Pit, East Extension), bench numbers (Bench 12, B12, BN12), and zone identifiers (NW Wall, South Bench, East Ramp). Process plants use area codes (SAG Mill, Ball Mill Circuit, Flotation Bank 3, Thickener 2).
None of these follow a standard format. The same location is routinely written in 4–6 different ways by different people at the same mine.
What makes mine location parsing hard
Separators are inconsistent
Hyphens, forward slashes, spaces, greater-than signs, and dots all appear as location hierarchy separators. 'UG-L4-N' and 'UG/L4/N' and 'UG > L4 > N' are the same location. A parser that only handles hyphens misses the other two.
Direction indicators are ambiguous
'N' in a mine context almost always means North — as in North Drift, North Wall, North Bench. But a naive parser may treat it as a U-position indicator or as a zone abbreviation with a different meaning. In underground mines, directional tokens (N, S, E, W, NW, NE) are zone identifiers, not row designators.
Level notation varies
Underground levels are referred to by level number ('L4', 'Level 4'), by elevation in metres ('580L', '4200 Level'), and sometimes by informal names ('Deep Level', 'Old Workings'). A parser needs to handle all three conventions.
Natural language descriptions resist tokenisation
'Underground level 5 south stope 12' is a perfectly clear location description to a mine employee. To a location parser that expects structured tokens, it is a collection of English words with no obvious hierarchy. Natural language location descriptions require a different parsing approach than structured codes.
What good location parsing produces
A location parser built for mine sites should produce a consistent output regardless of the input format — a structured set of fields that capture the mine hierarchy at the depth available in the source data:
normSite: the mine site name or identifier
normArea: the pit name (surface) or level designator (underground)
normZone: the bench number or drift/stope identifier
normBay: the equipment bay or heading
For 'UG-L4-N-DRIFT3', the output should be: normArea = Level 4, normZone = North, normBay = Drift 3. For 'PIT1-NW-B12-BAY3', the output should be: normArea = Pit 1, normZone = NW, normBay = Bench 12, Bay 3.
For records where the location is only partially parseable — 'PIT3' with nothing else — the parser should extract what it can (normArea = Pit 3) and flag the record for manual review rather than discarding the location entirely.
EAM location format requirements
IBM Maximo and SAP PM both have specific location format requirements that are different from each other and different from the mine site's own location notation. Maximo uses a location hierarchy code (SITEID-AREA-EQUIP). SAP PM uses a Functional Location string (SITE-AREA-EQUIP, maximum 30 characters total).
The normalised mine hierarchy fields need to be mapped to these EAM formats as part of the export profile — not during the parsing stage, but as a separate transformation applied after the mine location has been structured correctly.