scitacean.model#

Models for communication with SciCat and user facing dataclasses.

The high-level scitacean.Client and scitacean.Dataset return objects from the SciCat database in the form of ‘user models’. Those are usually all that is required for working with Scitacean.

At a lower level, those models are converted to or from upload or download models, respectively, by the corresponding methods of the user models. These upload and download models represent SciCat’s schemas more closely and are used by the lower-level scitacean.client.ScicatClient and scitacean.testing.client.FakeClient.

User models

Dataclasses exposed to users, primarily through Dataset.

Attachment(*, caption, owner_group[, ...])

DatasetType(value[, names, module, ...])

Type of Dataset.

History(*[, _History__id, _updated_at, ...])

Instrument(*[, _custom_metadata, _name, ...])

Lifecycle(*[, _archivable, ...])

Relationship(*, pid, relationship)

Sample(*, owner_group[, access_groups, ...])

Technique(*, name, pid)

Download models

Pydantic models for the data received from SciCat in downloads.

DownloadAttachment

DownloadDatablock

DownloadDataFile

DownloadDataset

DownloadHistory

DownloadInstrument

DownloadLifecycle

DownloadOrigDatablock

DownloadRelationship

DownloadSample

DownloadTechnique

Upload models

Pydantic models sent to SciCat in uploads.

UploadAttachment

UploadDatablock

UploadDataFile

UploadDerivedDataset

UploadOrigDatablock

UploadRawDataset

UploadRelationship

UploadSample

UploadTechnique

Functions

construct(model, *[, _strict_validation, _quiet])

Instantiate a SciCat model.