NBT Storage Locations
Valid Locations
Data MUST NOT be stored in any NBT storage locations except for the following:
<pack ID>:data
For general-purpose public data.
Data within this storage location is public and SHOULD be persistent.
<pack ID>:_ (and any subpath)
For all private data. (By definition, this is the only storage location that can hold private data.)
Additionally, private data MAY be stored in any subpath of <pack ID>:_ (e.g. <pack ID>:_/foo/bar).
<pack ID>:api
For specific/specialized-use or otherwise contextual, public ephemeral data.
Data within this storage location is public and SHOULD be ephemeral.
Intended to allow for flexibility of unique interactions/APIs, such as providing data to an externally provided function called via macro.
<pack ID>:hook
For passing data through hooks (see Hooks).
<pack ID>:in
For passing inputs to developer functions (see Developer Functions).
<pack ID>:out
For passing outputs from developer functions (see Developer Functions).
<pack ID>:abstract/in
For passing inputs to abstract functions (see Abstract Functions).
<pack ID>:abstract/out
For passing outputs from abstract functions (see Abstract Functions).
<pack ID>:config
For specifying pack configuration (see Pack Config).