Release packages

A released part is handed over as a package: the model, the drawings, the PMI and inspection plan, the analyses, and a list that says which release it is. NX does this with File › Export › Publish Technical Data Package. NX-Style’s Publish Release Package is on the PLM tab and the PMI tab.

From a release, not from the working copy

With Strata, the dialog lists the part’s releases and picks the newest Released one. The package is made from the document exactly as it was released: Strata writes that version out, NX-Style opens it, exports it and closes it. Changes made since in the working copy are not in it. Tutorial V publishes revision A again after an engineering change, and its package still documents the old bore.

Without a release (or without Strata) the package is made from the open document and marked Not released.

Contents

BUSH-100_B/
  model/BUSH-100_B.step         the solids as STEP AP242, with the semantic PMI when the part has PMI
                                (the manifest records the schema and the PMI the file holds)
  model/BUSH-100_B.FCStd        the released FreeCAD document
  drawings/Page.pdf             every drawing sheet
  pmi/pmi.json                  the PMI, semantic: standard, general tolerances, every annotation
  pmi/inspection_plan.csv       numbered characteristics, limits, where the tolerance comes from, method
  pmi/functional_gauge.csv      gauge elements at virtual condition (when there are frames at MMC)
  pmi/checks.txt                the ISO GPS or ASME checks
  analysis/<stack-up>.txt|.csv  every tolerance stack-up
  analysis/mass_properties.csv  volume, area, material, mass, centre of mass
  manifest.json                 the release (part number, revision, state, approver, version, commit) and
                                every file with its size and SHA-256
  README.txt                    the same, readable
BUSH-100_B.zip                  the folder as a reproducible zip (same files, same bytes)

PLM › Publish to Manufacturing sends a release’s package on to Carbon, the manufacturing system.

Checking a package

The recipient checks that nothing was changed or lost:

python -m nxstyle.package verify BUSH-100_B

It recomputes every checksum and lists changed, missing and unlisted files (exit code 1), or says that all files match. Run it from the NXStyle folder, or with that folder on PYTHONPATH; it needs no FreeCAD.

Matching checksums prove only that the files are the ones listed, so verify also checks that the package is a release at all. It needs:

  • a manifest of the right format that names the part number and revision and lists at least one file;

  • the files its profile needs. A release package needs the model as STEP and as the native file. A geometry package needs the STEP only and does not claim complete PMI. A partial package holds whatever parts of the package were chosen.

  • no critical loss.

The manifest lists the losses met while making the package. Some are things STEP AP242 cannot carry through OpenCASCADE, such as the envelope Ⓔ, a 4X count, ISO 2768 or the link between a composite frame’s rows. These are listed, and pmi_complete says false; pmi.json keeps them. Others are critical, and fail a release:

  • a PMI that is not valid;

  • a stack-up without a valid result;

  • an inherited drawing annotation that no longer shows its PMI;

  • PMI the STEP lost for another reason.

Values that are not current must not be released.

A package is made in a staging folder and verified before it replaces an earlier package of the same revision. A package that does not verify, or one whose making fails half way, leaves the earlier package and its zip as they were. Before 2026-10-26 the earlier package was deleted first, and an empty manifest passed verify.

What differs from NX

  • NX publishes PMI in 3D PDF or JT and in STEP AP242 with semantic PMI. NX-Style’s package has the semantic PMI in its STEP file (see STEP AP242 with semantic PMI) and everything else in pmi.json and the inspection plan; there is no 3D PDF or JT.

  • The checksummed manifest and the verify command are NX-Style’s.