color_tools.exporters.filament_metadata

Collection-level metadata for filament import and export.

class color_tools.exporters.filament_metadata.FilamentMetadata(name='', author='', description='', tags=(), owned_filament_ids=(), properties=_empty_properties())[source]

Bases: object

Descriptive and inventory metadata for a filament collection.

Ownership and external-format identifiers belong to collection metadata, not to FilamentRecord, because they describe user state or an interchange format rather than the filament product itself.

Variables:
  • name (str) – Human-readable collection name.

  • author (str) – Collection creator or author.

  • description (str) – Optional longer collection description.

  • tags (tuple[str, ...]) – Searchable or descriptive collection tags.

  • owned_filament_ids (tuple[str, ...]) – Color Tools filament IDs marked as owned.

  • properties (dict[str, Any]) – Additional format-specific metadata needed for a loss-aware round trip, such as external identifier mappings.

Parameters:
name: str
author: str
description: str
tags: tuple[str, ...]
owned_filament_ids: tuple[str, ...]
properties: dict[str, Any]
__post_init__()[source]

Normalize collection metadata text and identifiers.

Return type:

None

property has_metadata: bool

Return whether the collection contains meaningful metadata.