citrine.gemtables.rows module

Row definitions for GEM Tables.

class citrine.gemtables.rows.MaterialRunByTemplate(*, templates: list[UUID | str | LinkByUID | MaterialTemplate], tags: set[str] = None)

Bases: Serializable[MaterialRunByTemplate], Row

Rows corresponding to MaterialRuns, marked by their template.

Parameters:
  • templates (list[UUID | str | LinkByUID | MaterialTemplate]) – templates of materials to include

  • tags (set[str]) – optional list of tags for filtering. If a terminal material doesn’t contain any of the tags it will be filtered out.

classmethod build(data: dict) Self

Build an instance of this object from given data.

dump() dict

Dump this instance.

classmethod get_type(data) type[Serializable]

Return the subtype.

tags = None
template_type = uuid.UUID | str | gemd.entity.link_by_uid.LinkByUID | gemd.entity.template.material_template.MaterialTemplate
templates = None
typ = 'material_run_by_template'
class citrine.gemtables.rows.Row

Bases: PolymorphicSerializable[Row]

A rule for defining rows in a GEM Table.

Abstract type that returns the proper type given a serialized dict.

classmethod build(data: dict) SelfType

Build the underlying type.

classmethod get_type(data) type[Serializable]

Return the subtype.