LDS Index Structure — the drawing-list workbook and what a fleet-wide read of it shows
How the per-project LDS drawing list is actually structured (the 100-slot serial block, the decade-to-assembly rule), where the files live, and what a read of every completed drawing list on the K: drive says about how consistent PSI machines really are. Companion to LDS Methodology (the method) and PRODUCT BOM Structure (the AFTEC side).
Where the files are
| What | Path |
|---|---|
| Per-project drawing list | K:\PROJECT\<project>\lds\<project>lds.xlsm |
| Sales proposal (SPN) folder | I:\QUOTES\S<nnnn>\ — reachable from a .lnk shortcut in the project folder |
| Approved quote paragraph corpus | I:\MASTER\ — F facility, A assembly, M module, P product/concept, S summary, R retrofit |
The workbook is macro-enabled and has five sheets: Index, DrawingList, Gantt,
Project Release, Project Info. (The seven-worksheet .wk4 layout described in older LDS
documentation is historical — see the note on LDS Methodology.)
Each project folder normally contains a shortcut named S<nnnn>.lnk pointing at its quote folder,
which is the only machine-readable link between a built machine and the proposal that sold it.
The 100-slot serial block
The facility takes the machine serial plus 00; every assembly, module, product and document
gets a number in that serial’s hundred-block. Serial 3624 owns 362400–362499.
362400 Facility slot 00
362401 Blast Cabinet Assembly slot 01
362410 Blast Cabinet Module slot 10 <- decade 1 belongs to assembly 01
362411 Part Manipulation Module slot 11
362402 Reclaim/Blast Assembly slot 02
362420 Reclaim Module slot 20 <- decade 2 belongs to assembly 02
362450 Cabinet Weldment (product) slot 50 } product / drawing pairs
362451 Cabinet Weldment (drawing) slot 51 } even = product, odd = drawing
362490 Floor Layout slot 90 <- documents under assembly 09
The decade rule — the one thing to get right. Slots N0–N9 belong to assembly 0N. A machine
with a second process assembly at slot 04 carries that assembly’s modules at 40–49, not in the
product band. 53 of the completed builds do exactly this, holding 156 module entries — the plasma
stack on thermal-spray machines and the water pump on some waterjets. Reading 10–39 as “the module
band” and 40–89 as “products” silently drops all of them.
| Band | Belongs to | Contents |
|---|---|---|
00 | — | Facility |
01–09 | — | Assemblies. 01 cabinet, 02 reclaim/air, 03 controls, 04 second process, 08 spare parts, 09 documentation |
N0–N9 | assembly 0N | That assembly’s modules |
40–89 | — | Product / drawing pairs, when no assembly 04 exists. 25 pairs, and capacity-limited |
90–99 | assembly 09 | Reference documents |
The part number is serial-local. Two machines’ Blast Cabinet Modules will always have different numbers, and that is the numbering working as designed — not a finding. Across the completed builds only one module in 2,931 points at another machine’s block, so cross-serial module reuse is effectively nil. At assembly and module level the name is the only cross-machine identifier.
Product band capacity
The 40–89 band gives 25 product/drawing pairs. Median use is 12, but 61 builds use 20 or more,
22 use 23–24, and 8 are full at 25 of 25. Builds that run out spill into the 30–39 decade
(the Controls Assembly’s, which almost nobody populates) — 21 builds do this, and 18 of them had a
product band at 21 pairs or more. That is a capacity workaround, not misfiling.
Fleet-wide read, September 2026
Every *lds.xlsm under K:\PROJECT\*\lds\ was parsed directly from the file (no Excel, no macros run).
| Count | |
|---|---|
| Workbooks found | 672 — of 2,257 project lds folders; the rest predate the 2019 template |
| Unreadable | 2 |
| New builds (4-digit, real serial and name) | 329 |
| Retrofits (5-digit) | 268 — each has a one-off project name, so they form no comparable families |
| Skeleton / work-in-progress | 40 of the 329 (under 15 part lines, often slot 00 still “XXX Facility”) |
| Completed new builds analysed | 289 — projects 2141–2464, releases May 2019 to Sept 2026 |
What the Index contains, by level
24,889 rows across the 289 builds. Assemblies and modules are 12.6% of it:
| Level | Rows | Share | Median per build |
|---|---|---|---|
| Facility | 287 | 1.2% | 1 |
| Assembly headers | 1,252 | 5.0% | 4 |
| Module headers | 1,886 | 7.6% | 7 |
| Library product / PHYS. (reused) | 13,495 | 54.2% | 46 |
| Job-specific product / PHYS. | 3,061 | 12.3% | 12 |
| Documents | 2,210 | 8.9% | 8 |
| Text-only lines, no number | 2,321 | 9.3% | 6 |
Of the 16,556 product and PHYS. rows, 82% carry a reusable library number — independently reproducing the ~82% PHYS.-level reuse rate the methodology page claims.
Sub-level nesting is recorded only by hand: 74 of 289 builds indent child rows with a leading space, 50 of them heavily. The other 215 record no depth at all, so below the module the tree is not machine-readable except through the numbering convention.
Consistency findings
Assemblies are effectively standardised
Of 1,103 assembly-slot entries, 62% match an approved paragraph title in that machine’s own quote and 28% are LDS-only constructs with no quote counterpart (Documentation Print, Spare Parts). Genuine naming drift is 18 entries — ten distinct strings, almost all a machine type the paragraph corpus never named (GASP Cabinet, Slurry Pump & Reclaim, Paint Spray Booth, Aluminide Cabinet).
Controls Assembly sits at slot 03 and Documentation Print at 09 in 329 of 329 builds.
Module names drift, and the corpus is the cause
72% of module entries match the approved title in their own quote; 79% match one approved anywhere. The residue is mostly explainable:
- 8.7% are
Blast Modulewhere the approved title isBLAST MODULE, PRESSURE— one systematic shortening, not 154 mistakes - 6.2% are products or PHYS. items in a module slot, which is the capacity spill described above
- 1.5% are
Blast Module – Lances/Nozzles/Hosesin seven spellings (including the typoLnaces) because no approved paragraph exists for that module at all
The root cause is upstream: the 250 resolvable quotes draw on 81 module paragraphs carrying only 41 distinct names. Thirteen names are held by more than one paragraph number:
| Approved name | Paragraph numbers |
|---|---|
| PART MANIPULATION MODULE | 10 — m1023, m1034, m1091, m1095, m1127, m1153, m1184, m1252, m1255, m1274 |
| BLAST CABINET MODULE | 6 — m1000, m1015, m1156, m1163, m1171, m1235 |
| TOOLING MODULE | 6 — m1006, m1017, m1024, m1128, m1174, m1282 |
| GUN MANIPULATION MODULE | 5 |
| BLAST MODULE, PRESSURE | 5 |
| RECLAIM MODULE / MATERIAL HANDLING MODULE | 4 each |
Assemblies have it more mildly: 15 paragraphs, 13 names. BLAST CABINET ASSEMBLY is a1000, a1043 and
a1044. The corpus also carries qualifiers the drawing list never reproduces — a1023 is
THERMAL SPRAY ASSEMBLY, CLOSED LOOP (CITS) where the Index says Thermal Spray Assembly.
Deduplicating the corpus has to precede enforcing any name in the workbook.
Machine types
Six platforms cover the fleet, matching the four types named in the LDS Training deck plus specialty:
| Platform | Builds | Module-set overlap | PHYS. reuse |
|---|---|---|---|
| Blast (shot peen / grit blast) | 193 | 0.76 | 82% |
| Waterjet | 43 | 0.81 | 75% |
| Thermal Spray | 29 | 0.49 | 80% |
| CITS skid | 11 | 0.81 | 94% |
| Specialty / other | 9 | 0.29 | 64% |
| Laser | 4 | 1.00 | 62% |
Comparison only means something inside a family. Mean module-set overlap is 0.86 within a family, 0.76 within a platform, 0.25 across platforms — a thermal spray machine and a shot peener genuinely share almost nothing, as they should.
At part level the same two same-family machines share only 10–17% of their content. That is why flat BOM comparison has historically found no commonality here: the signal lives at module level, not part level.
Template content: what is standard versus optional
Fifteen families have four or more completed builds (131 machines). Scoring their modules two ways — is the module always present, and does it have standard contents — gives four groups, and the two questions turn out to be nearly independent:
| Real standard kit inside | Nothing standard inside | |
|---|---|---|
| Core module (90%+ of builds) | 25 | 49 |
| Option module (20–85%) | 5 | 16 |
93 of 123 modules cannot have their contents fixed in advance. Tooling is in all 37 Robotic Shot Peen builds; 40 different parts have appeared inside it and none recurs more than twice. It is a container for per-customer work, not a kit.
Options are three different things
- Add-on — nothing replaces it. Material Handling is in 26 of 37 Robotic Shot Peen builds, and none of the 11 without it lists a hoist anywhere.
- Either / or — Part Manipulation on Robotic Grit Blast: all four builds without it carry a Blowoff module instead.
- Not actually optional —
Blast Module – Lances/Nozzles/Hosesis absent in 15 builds, but the nozzles and hoses are still there, listed as parts under the Blast module. Same content, one level down.
Only 6 of 24 options have enough builds on both sides to classify honestly.
Variations: four real, four only spelling
| Role | Forms | Verdict |
|---|---|---|
| Cabinet | 7 — Blast 212, Waterjet 30, Spray 23, GASP 3, Aluminide 2, Wet Blast, Robotic Blast | real — one per platform, never two at once |
| Blast | 5 — bare, Pressure Pots, Minipots, Pressure, Suction | real — pot type |
| Blowoff | 2 — Blowoff 82, Rinse & Blowoff 1 | real but one build only |
| Controls | Index vs Products | two different modules, not two names |
| Blast – Lances/Nozzles/Hoses | 8 | spelling |
| Spray Hose/Cable | 5 — Thermal, PlasmaThermal, Plasma Thermal | spelling |
| Feeder | 2 — Plasma Feeder, Feeder | spelling |
| Classification | 3 — Stand-Alone / Stand Alone | spelling (hyphen) |
Below the module the same test is more productive. Pick-one items (never two in one build): Cyclone (7 numbers, by diameter), Rubber Lining (7), Work Door (9, by opening), Pressure Control (6), Pressure Pot Base (10). Fit-several items: Hose Support (12 numbers, 22 builds use more than one), Sweco Screens (16, a five-deck unit takes several meshes), Blast Wear Plate.
Module or assembly?
Nearly every block has settled on a level by itself: Water Pump & Reclaim always its own assembly (43/43), Tooling always nested (273/273), likewise Blowoff, Cooling and Lances/Nozzles/Hoses. Material Handling nests in 95% of builds.
Ventilation is the one open case: 45 own assembly against 36 nested. Thermal spray and the 80″ waterjets promote it; robotic waterjets nest it under the cabinet. Promoted builds are larger (52 against 40 part lines) and that correlation is the only pattern in the data. The rationale is not recorded anywhere in the drawing lists.
Note that most apparent promotion is just the convention of an assembly wrapping a same-named module — Blast Cabinet Assembly contains Blast Cabinet Module in 270 of the 271 builds that have either.
Part-level behaviour
15,698 part lines sit under modules. Three things only visible at this depth:
Identity is three-way. A core item may be a catalog part (one number recurs), configured (a family of numbers by size or make), or job-drawn (a new number every build). On Robotic Shot Peen: Cabinet Weldment, Air Plumbing and Wireway are in 37 of 37 builds and are project-numbered in 25–31 of them.
Reuse is thin at the top. 2,577 distinct library part numbers appear in the module band;
1,246 (48%) appear exactly once, 242 in ten or more builds, and 8 in a hundred or more —
933288 pressure switch (248), 706290 manual blowoff (239), 704310 barrel dolly (172),
843986 sweco trash tube (154), 794848 emergency stop (126), 708675 ground rod (125),
885874 sweco media pan (123), 697516 trash barrel (102). All commodity items.
Parts get superseded. 264 date-verified handoffs where one number stops and its replacement
starts — Light 980652 (2019–2024) → 299786 (2025–), Sweco Screens 958468 → 953248,
Air Inlet 890254/805844 → 989452. The most common part is not always the current part, so
a template built on raw frequency can specify an obsolete one.
The discriminating detail lives inside the brackets. On 2187 and 2175 the water pump modules
differ chiefly by pump make — Hypertherm against NLB and Aquamiser — and that is recorded nowhere
except in a part description: Waterjet Pump (Hypertherm 150D) = 303452, against NLB under four
different numbers (317254, 914670, 355228, 367054). Only 8% of part lines name a make, but
where they do it is decisive. Warning: the qualifier text is itself inconsistent — HYPERTHERM,
HYPRTHRM and Hypertherm are one make — so naive tokenisation of it makes clustering worse,
not better. It needs a controlled vocabulary of makes and capacities first.
The quote side (SLDS)
The quote spreadsheet is the sales-level equivalent of the Index, built from the same four-level
vocabulary drawn from I:\MASTER. Its columns are:
IDNumber | AssemblyNum | ModuleNum | LineType | Paragraph #'s | Qty | Opt | Inv |
Title | Description | Material | Labor | MEP | MEI | CEP | CEI | CSS | Test | SPEC | Std | EAS | Cost | Price
LineType codes: 5 facility, 4 assembly, 3 module, 6 product, 15 engineering,
14 comment. Paragraph prefixes match the corpus folders (f, a, m, p/c, e).
Two things worth knowing:
AssemblyNumandModuleNumare blank in every one of 37 quote files checked. These are the fields that would carry the LDS slot forward at handoff, and nobody fills them.- The requirement narrative — part envelope, weight, media, sound limit, utilities — sits as
LineType 14comment text above the priced lines, in the same file as the module list it produced. That is the available tie-back from customer requirement to module choice.
Revisions are lettered (Q9558, Q9558A … Q9558F) and the one handed to engineering carries the
suffix ho, e.g. Q9558Fho.XLS. 250 of the 289 completed builds have a quote that resolves and parses.
Machine against quote
Matching on the module rather than the wording (and setting aside the commercial paragraphs, plus controls, whose electrical set lives outside the Index), 78 of 250 machines match their quote exactly on module content. The rest differ on real things — Gun Blowoff quoted but never built, Vacuum built but not quoted. But all 250 carry at least one naming mismatch: not one machine uses the same wording on both documents.
Known data quirks
- One project folder is named
2272 GOOD, so anything parsing project numbers as integers must tolerate a suffix. - Slot 00 still reads
XXX Facilityin 26 completed workbooks — the template placeholder was never renamed, so machine type must be read from theProject Infosheet, falling back to theDrawingListheader. Order Date (FRI)exists on only 171 of 329 new-build workbooks; the field was added toProject Infoin Sept 2023. Use the earliestACT RELEASEdate in the Index as the timestamp instead (present on 227).- Quantity at module level is unreliable — 2412’s Material Handling Module carries qty 0 with a qty-1 hoist beneath it.
- Around 290
~$*lds.xlsmlock files exist on K:, meaning that many workbooks are open or were left open. Any glob on*lds.xlsmmust exclude them.
The handoff and requirements documents
Each SPN folder also holds two Word documents that carry things the drawing list does not:
\ad.ptihome.com\DFS\SalesQuotes\QUOTES\S<spn> PO-Contract\S<spn>ho.docx the handoff document
Requirements and Concepts\S<spn>req.docx the 81-row PROPOSAL REQUEST/SUMMARY REPORT
The handoff document’s header states project, serial and SPN together, so the project-to-quote
join needs no .lnk resolution. It also carries a field that states machine genealogy outright:
Machine-Same-As-Except: This machine is a copy of project #2189 except this
machine uses 600 series MagnaValves.
Measured across the 250 built projects with a resolvable SPN: the handoff document is present for
244, Machine-Same-As-Except is filled in on 210 (86%), and 204 name a specific job
number. Utilities Requirements — the voltage/phase/frequency that is absent from 148 of 193
blast drawing lists — is filled in on 238.
Caution: S<spn>ho.docx exists in nearly every SPN folder, but in most it is the blank
template; a handoff document is written only when a quote becomes an order. 57 of the 60 newest
SPN folders hold the template, recognisable by the placeholder “Add note for ENGR to make
Reference Photo Print”.
SPN numbering has rolled past 9999. 130 five-digit folders (S10001 onward) now exist
alongside 8,615 four-digit ones, and folder case varies (s10001, S10003). Match
case-insensitively and do not assume four digits.
Related pages
- LDS Methodology — the method, the Six Ds, the entity hierarchy
- PRODUCT BOM Structure — the AFTEC product ⇄ phys ⇄ components side
- Terminology — LDS, SLDS, PHYS., GTCode
- Data Brain — where PSI data lives generally
Last updated: September 2026. Figures from a full read of the 289 completed new-build drawing lists.