skppy.parser.definitions

Decode component definitions and their independent entity scopes.

The modern model.dat definitions section contains identity and behavior metadata followed by a nested entities block. parse_definitions() returns ComponentDefinition objects whose vertex and entity IDs are local to each definition. Normal applications should use skppy.load(); this module is the bounded section decoder used by the full model pipeline.

skppy.parser.definitions.parse_definitions(definitions_container_payload: bytes, *, attribute_dictionaries_by_object_id: dict[int, list[AttributeDictionary]] | None = None) List[ComponentDefinition][source]

Parse the component definitions section (tag 0x01F9) of model.dat.

Parameters:

definitions_container_payload (bytes) – Raw payload of the DEFINITIONS_CONTAINER (0x1770) TLV record.

Returns:

Fully parsed component definitions, each with its own Entities.

Return type:

list of ComponentDefinition