Skip to content

LandXML interoperability coverage ledger

Version: 1.1 (2026-09-22)

This is the acceptance evidence for #5051, not a list of formats that a source header happens to name. It is deliberately separate from tests/models/manifest.json: the manifest only catalogues reviewed, downloadable bytes. Discovery leads, restricted external runs, and reviewed waivers belong here and cannot be promoted to the manifest merely because their XML is publicly reachable.

How to read a row

Each row records two independent facts:

  • Evidence disposition is one of redistributable-verified, externally-verified, candidate, or waived-replaced. A verified row has rights/provenance review, immutable bytes or an authorized external run, and reproducible behavioral evidence. A candidate is not a compatibility claim.
  • Capability is one of rendered, preserved-only, unsupported, refused, or unverified. It describes the named workflow only; it never generalizes across another exporter, schema revision, unit system, or feature family.

waived-replaced is reserved for a dated maintainer acceptance decision that names the unmet evidence requirement, the search performed, rights-clear replacement tests, the remaining uncertainty, and a trigger to revisit. No row below is silently waived. A waiver narrows the acceptance claim to the stated grammar invariant; it never turns synthetic input into vendor certification.

Cross-cutting precondition: declared units (#5175)

Every rendered capability below is conditional on the source declaring LandXML/Units with a linearUnit. A numeric surface that would be drawn to scale is refused with LXML009 when the declaration is absent, on every parse path — streaming and non-streaming alike, so a file cannot render on one path and be refused on another. Preserved-only records remain inspectable without units, because nothing about them is drawn to scale.

The unit is never inferred from coordinate magnitude. Where a reviewed, caller-supplied assumed unit is used instead, it is carried as provenance and is distinguishable from a declared unit by any consumer of the parsed document; an assumed unit never upgrades a row's evidence disposition here, because the assumption is the operator's, not the producer's.

This is a precondition, not a capability row: it constrains every row rather than describing a workflow. The invariant is pinned by rust/landxml/tests/units_required_5175.rs and, in the browser, by tests/e2e/landxml-units-smoke.e2e.spec.ts over a synthetic units-qualified TIN (apps/viewer/public/samples/terrain-tin-metric.xml). That fixture is synthetic and proves the invariant only — per the rule stated above, it certifies no vendor export.

Verified public corpus

The fixture manifest contains the immutable blob URL, source and fixture hash, fetch date, exact license/attribution, modification status, no-customer-data attestation, observed producer metadata, declared schema/units/CRS, and feature inventory for every row referenced below. The producer corpus test skips on a fresh checkout with pnpm fixtures <path> guidance; CI must fetch the byte for a row to count its result as verified.

Producer/version and export variant Schema and units Workflow / bounded observation Fixture and test evidence Evidence disposition Capability
Aplitop MDT 8.0, LandXML 1.2 alignment/profile LandXML 1.2; meter; CRS not declared Horizontal alignment, profile, lines, curves, spirals. Source semantics are retained; no TIN is invented. landxml/producers/aplitop-mdt-8.0-alignment.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified preserved-only
Bentley OpenRoads Designer 10.09.00.91, LandXML 1.2 alignment/profile LandXML 1.2; USSurveyFoot; CRS not declared Horizontal alignment, profile, lines and curves. The declared US-survey-foot token and semantic records must survive both canonical paths; terrain is not implied. landxml/producers/bentley-openroads-designer-10.09-us-survey-foot-alignment.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified preserved-only
3D-Win 6.6.4, InfraModel road alignment/profile InfraModel 4.0.3 profile; meter; EPSG:3875 / N2000 Unsupported namespace/profile is rejected before partial ordinary-LandXML interpretation. landxml/producers/3d-win-6.6.4-m3-road-alignment.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified refused
3D-Win 6.6.4, InfraModel rockbed terrain InfraModel 4.0.3 profile; meter; EPSG:3875 / N2000 SourceData, Breaklines, Pnts and Faces are a separate terrain workflow, not evidence for OpenRoads terrain. Unsupported profile is rejected. landxml/producers/3d-win-6.6.4-m3-rockbed-terrain.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified refused
3D-Win 6.6.4, InfraModel CgPoints InfraModel 4.0.3 profile; meter; EPSG:3875 / N2000 CgPoint-only workflow; unsupported profile is rejected. landxml/producers/3d-win-6.6.4-m3-lighting-cgpoints.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified refused
Trimble Novapoint 21.354.0.0, InfraModel drainage InfraModel 4.0.3 profile; meter; EPSG:3878 / EPSG:3900 PipeNetworks, Structs and Pipes are exercised as a separately refused profile. This is not TBC evidence. landxml/producers/trimble-novapoint-21.354-drainage.xml; rust/landxml/tests/producer_corpus.rs redistributable-verified refused
bonsai-topo control-v1 (synthetic) LandXML 1.2; meter; EPSG:3006 / EPSG:5613 Independently stated IFC + LandXML + XYZ controls through the canonical 1/N federation load path, including placement, rendering, picking, ownership and CRS refusal. landxml/federation/bonsai-topo-control-v1/; tests/e2e/federation-control-triplet.e2e.spec.ts; #5124 redistributable-verified rendered

The two canonical LandXML 1.2 alignment/profile fixtures above prove only source-record preservation. They do not prove terrain exchange, stationing evaluation, design/corridor rendering, a declared CRS, or compatibility with a different OpenRoads or Aplitop release.

Required producer matrix and disposition

Required cell Current evidence / replacement evidence Evidence disposition Capability Waiver state and retained uncertainty
Civil 3D LandXML 1.0, metric Rights-clear 1.0 grammar vector, exact metric scale and TIN source topology. waived-replaced unverified W-01; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.0, international foot Rights-clear 1.0 grammar vector, exact international-foot scale and TIN source topology. waived-replaced unverified W-02; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.0, US-survey foot Rights-clear 1.0 grammar vector, exact US-survey-foot scale and TIN source topology. waived-replaced unverified W-03; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.1, metric Rights-clear 1.1 grammar vector, exact metric scale and TIN source topology. waived-replaced unverified W-04; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.1, international foot Rights-clear 1.1 grammar vector, exact international-foot scale and TIN source topology. waived-replaced unverified W-05; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.1, US-survey foot Rights-clear 1.1 grammar vector, exact US-survey-foot scale and TIN source topology. waived-replaced unverified W-06; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.2, metric Rights-clear 1.2 grammar vector, exact metric scale and TIN source topology. waived-replaced unverified W-07; grammar/unit evidence only, never Civil 3D certification.
Civil 3D LandXML 1.2, international-foot Rights-clear 1.2 grammar vector and MIT lekks/tin2dem generic fixture, exact international-foot scale and TIN source topology. waived-replaced unverified W-08; neither source has the contributor attestation required for Civil 3D certification.
Civil 3D LandXML 1.2, US-survey foot Rights-clear 1.2 grammar vector, exact US-survey-foot scale and TIN source topology. waived-replaced unverified W-09; grammar/unit evidence only, never Civil 3D certification.
TBC legacy LandXML 1.2: alignment / profiles / surface source definitions / breaklines Rights-clear 1.2 document grammar tests preserve the named feature families and multiple profiles; bounded stream lifecycle is covered separately. Trimble documents that an export uses surface source data or its definition, not both, subject to the selected surface-description option. waived-replaced unverified W-10; not a claim about Trimble Business Center output.
TBC ISO 15143-4: alignment / profiles / surface source definitions / breaklines Foreign-root test refuses an ISO 15143-4-labelled grammar before ordinary LandXML content is interpreted. Trimble documents this as a separate export version with a different supported-data set from legacy TBC 1.2. waived-replaced unverified W-11; the generic safety result does not establish the behavior of a real TBC ISO export.
OpenRoads terrain Rights-clear 1.2 terrain grammar invariant preserves Pnts/Faces/Breaklines. The verified OpenRoads alignment fixture is deliberately not terrain evidence. waived-replaced unverified W-12; no OpenRoads terrain exporter certification.
OpenRoads alignment/profile The CC-BY fixture and canonical document/stream behavioral test preserve the producer header, US-survey-foot unit, exact alignment identity/station/length, and profile records. redistributable-verified preserved-only Not waived. The remaining limitation is no terrain or rendered corridor claim.
Aplitop alignment/profile The CC-BY fixture and canonical document/stream behavioral test preserve the producer header, metric unit, exact alignment identity/station/length, and profile records. redistributable-verified preserved-only Not waived. No terrain or rendered corridor claim.
IFC + LandXML + point-cloud federation with independent controls CC0 control triplet from #5124. redistributable-verified rendered Complete independently controlled federation row; synthetic, not vendor certification.

Discovery evidence held outside the manifest

These entries are retained to make the search reproducible, but none are fixture provenance and none changes a matrix row above:

Lead Checked Why it is not verified evidence
mf4633/gisc 2026-09-21 Its relevant files are COM-derived or invented, Civil-3D-shaped geometry. The repository MIT license can support generic invariants, not producer certification.
nathancrews/LandXML2glTF / LandXML.org samples 2026-09-21 Possible producer headers, but no file-level non-customer-data provenance and redistribution attestation for the candidate bytes.
WFLHD design-data policy and solicitations 2026-09-21 Establishes OpenRoads terrain/alignment workflow, not permission to redistribute a concrete attachment.
swisstopo OGD 2026-09-21 Usable with attribution after a concrete download review; optional federation expansion only, because #5124 already covers the required independent-control workflow.
GitHub code-search findings summarized in the #5051 acceptance research decision 2026-09-21 Search hits are discovery leads until exact bytes, root/file rights, producer attribution, and non-customer-data review are recorded.

Dated waiver decisions

The following are the revised #5051 waiver decisions, dated 2026-09-22 by repository maintainer @louistrue after the 2026-09-21 #5051 acceptance and research decision. The closing PR's code-owner review ratifies the implementation of that decision; it must not be recorded as complete before that review is submitted. The waivers replace the unavailable-corpus requirement only. They do not permit a vendor name in product documentation, release notes, or support claims.

The searches recorded for every waiver were: GitHub code search for the exact producer/schema/unit strings; review of mf4633/gisc and nathancrews/LandXML2glTF/LandXML.org leads; Trimble's public TBC export results, settings, and version choice; and WFLHD's public design-data policy and solicitation pages. None provided a concrete byte with both producer attribution and an explicit redistribution/non-customer-data grant. The next trigger for every waiver is a rights-clear, producer-attributed export with that grant, or 2027-03-22, whichever is earlier. On either trigger, replace the waiver with a fixture manifest record and a producer-specific behavioral test.

ID Unmet corpus requirement Rights-clear replacement evidence Residual uncertainty
W-01 Civil 3D 1.0 metric export issue_5051_waived_producer_cells_keep_schema_units_and_tin_source_invariants: 1.0 meter scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-02 Civil 3D 1.0 international-foot export Same test: 1.0 foot scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-03 Civil 3D 1.0 US-survey-foot export Same test: 1.0 USSurveyFoot exact scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-04 Civil 3D 1.1 metric export Same test: 1.1 meter scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-05 Civil 3D 1.1 international-foot export Same test: 1.1 foot scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-06 Civil 3D 1.1 US-survey-foot export Same test: 1.1 USSurveyFoot exact scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-07 Civil 3D 1.2 metric export Same test: 1.2 meter scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-08 Civil 3D 1.2 international-foot export Same test plus MIT lekks/tin2dem generic invariant fixture The fixture has no producer/customer-data attestation, so it cannot certify Civil 3D.
W-09 Civil 3D 1.2 US-survey-foot export Same test: 1.2 USSurveyFoot exact scale, Pnts, Faces and Breaklines Civil 3D-specific ordering, optional elements and export defects are untested.
W-10 TBC-native legacy LandXML 1.2 export issue_5051_waived_producer_cells_keep_schema_units_and_tin_source_invariants; preserves_distinct_profiles_curves_sections_and_roadway_associations; independent stream tests cover bounded mechanics TBC version, producer extensions and option-specific output are untested. Trimble documents multiple vertical alignments per horizontal, but only source data or definition is used per exported surface; surface settings select points/breaklines, triangles, both as two surfaces, or program optimization, and imported internal data may force triangles.
W-11 TBC ISO 15143-4 export issue_5051_refuses_unknown_or_cross_grammar_root_declarations refuses a foreign ISO-labelled root before semantic interpretation Trimble documents a different supported-data set than legacy 1.2; exact ISO grammar, feature exclusions and every real-export diagnostic remain untested.
W-12 OpenRoads terrain export issue_5051_waived_producer_cells_keep_schema_units_and_tin_source_invariants exercises 1.2 Pnts/Faces/Breaklines without borrowing the alignment fixture OpenRoads terrain producer extensions, surface definitions and output ordering are untested.

Reproduction and closure gate

Run the public-byte checks with:

pnpm fixtures \
  landxml/federation/bonsai-topo-control-v1/control.json \
  landxml/federation/bonsai-topo-control-v1/terrain.xml \
  landxml/producers/aplitop-mdt-8.0-alignment.xml \
  landxml/producers/bentley-openroads-designer-10.09-us-survey-foot-alignment.xml \
  landxml/producers/autodesk-civil3d-2020-international-foot-tin.xml \
  landxml/producers/3d-win-6.6.4-m3-road-alignment.xml \
  landxml/producers/3d-win-6.6.4-m3-rockbed-terrain.xml \
  landxml/producers/3d-win-6.6.4-m3-lighting-cgpoints.xml \
  landxml/producers/trimble-novapoint-21.354-drainage.xml
cargo test -p ifc-lite-landxml --test producer_corpus
cargo test -p ifc-lite-landxml --test schema_versions
cargo test -p ifc-lite-landxml --test ingest \
  preserves_distinct_profiles_curves_sections_and_roadway_associations

Acceptance run: 2026-09-22 at f9ef17249792ac111e8015772ddaa24eb88a7040. The scoped fixture check reported all nine files present and hash-verified; producer_corpus executed all four tests with no skips; all five schema_versions tests passed; and the targeted multiple-profile regression passed. The closing PR must link its green required CI and code-owner waiver ratification before this issue is closed.

The test names cite #5051 and assert semantic facts rather than a byte snapshot. Its absence skip is intentionally not evidence of interoperability. #5051's revised closure gate is satisfied when every required row is either reviewed redistributable-verified/externally-verified or appears in the dated waiver table with its replacement test green. Record the actual acceptance run and keep the public fixture, corpus, and required CI green.