Design¶
Pysicat contains two parts. A set of models that match the models described in the SciCat server and a client to talk to that server.
Models¶
The various methods in the pyscicat.model module serve as self-validating data transfer classes. Each class inherits from the pydantic BaseModel
class. This provides several features including:
Runtime validation of types and required vs. optional fields
Easy round tripping with python dicts and json.
ScicatClient¶
The ScicatClient
class in pyscicat.client.ScicatClient performs all http communications with the SciCat server.