Path syntax

Concrete runtime path

magnetics/flux_loop[0]/position[0]/r

Array indices ([N]) are resolved at runtime by querying the mapper for array lengths.

Non-concrete IDS/schema path

magnetics/flux_loop(:)/position(:)/r

(:) marks an array dimension in the IMAS data dictionary schema. These paths are used internally and are not passed directly to the mapper.

Mapping-template path

magnetics/flux_loop[#]/position[#]/r

Template paths are used as keys in mapping JSON files. [#] is a placeholder that matches any array index. Array-struct nodes use [#] like any other array dimension:

magnetics/flux_loop(:)  ->  magnetics/flux_loop[#]

Concrete-to-template conversion

The concrete_path_to_template function (and the --mapping CLI option) converts a concrete runtime path back to its template form by replacing every [N] index with [#]:

magnetics/flux_loop[0]/position[2]/r
->  magnetics/flux_loop[#]/position[#]/r

This conversion is used by map --mapping to intersect expanded paths with the keys defined in a mapping file.