Skip to content

Commit

Permalink
35363 review schema relationships (#22)
Browse files Browse the repository at this point in the history
* Reviewed and modified relationships in schemas for Collecting Event and Material Sample

* Minor correction

* Revied and modified Metadata schema

* Reviewed and modified Molecular Analysis Result schema

* Correction on Material Sample Schema Test

* Reviewed and modified schemas for Project and Storage Unit Usage
  • Loading branch information
rgmacalintal authored Dec 23, 2024
1 parent cb84f45 commit 14f71d1
Show file tree
Hide file tree
Showing 7 changed files with 25 additions and 25 deletions.
12 changes: 6 additions & 6 deletions dinapy/schemas/collectingeventschema.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ class Meta:
class Collectors(BaseSchema):

class Meta:
type_ = 'collectors'
type_ = 'person'

class Attachment(BaseSchema):

class Meta:
type_ = 'attachment'
type_ = 'metadata'

class CollectingEventSchema(Schema):
'''Schema for a Collecting Event used for serializing and deserializing JSON.'''
Expand Down Expand Up @@ -70,10 +70,10 @@ class CollectingEventSchema(Schema):
managedAttributes = SkipUndefinedField(fields.Dict,attribute="attributes.managedAttributes")
remarks = SkipUndefinedField(fields.Str,allow_none=True, attribute="attributes.remarks")

collectionMethod = create_relationship("collecting-event","collectionMethod")
protocol = create_relationship("collecting-event","protocol")
collectors = create_relationship("collecting-event","collectors")
attachment = create_relationship("collecting-event","attachment")
collectionMethod = create_relationship("collecting-event","collection-method","collectionMethod")
protocol = create_relationship("collecting-event","protocol","protocol")
collectors = create_relationship("collecting-event","person","collectors")
attachment = create_relationship("collecting-event","metadata","attachment")

meta = fields.DocumentMeta()

Expand Down
16 changes: 8 additions & 8 deletions dinapy/schemas/materialsampleschema.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,17 +110,17 @@ def object_deserialization(self, data, **kwargs):
return MaterialSampleDTO(**data)

collection = create_relationship("material-sample","collection")
collectingEvent = create_relationship("material-sample","collectingEvent")
preparationType = create_relationship("material-sample","preparationType")
preparationMethod = create_relationship("material-sample","preparationMethod")
parentMaterialSample = create_relationship("material-sample","parentMaterialSample")
preparedBy = create_relationship("material-sample","preparedBy")
collectingEvent = create_relationship("material-sample","collecting-event","collectingEvent")
preparationType = create_relationship("material-sample","preparation-type","preparationType")
preparationMethod = create_relationship("material-sample","preparation-method","preparationMethod")
parentMaterialSample = create_relationship("material-sample","material-sample","parentMaterialSample")
preparedBy = create_relationship("material-sample","person","preparedBy")
attachment = create_relationship("material-sample","metadata","attachment")
preparationProtocol = create_relationship("material-sample","preparationProtocol")
preparationProtocol = create_relationship("material-sample","protocol","preparationProtocol")
projects = create_relationship("material-sample","project","projects")
assemblages = create_relationship("material-sample","assemblages")
assemblages = create_relationship("material-sample","assemblage","assemblages")
organism = create_relationship("material-sample","organism")
storageUnit = create_relationship("material-sample","storageUnit")
storageUnit = create_relationship("material-sample","storage-unit","storageUnit")

meta = fields.DocumentMeta()

Expand Down
6 changes: 3 additions & 3 deletions dinapy/schemas/metadata_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,11 +108,11 @@ class MetadataSchema(Schema):
)

# Relationships
acMetadataCreator = create_relationship("metadata","person", "acMetadataCreator")
acMetadataCreator = create_relationship("metadata","person","acMetadataCreator")

derivatives = create_relationship("metadata","derivatives")
derivatives = create_relationship("metadata","derivative","derivatives")

dcCreator = create_relationship("metadata","person", "dcCreator")
dcCreator = create_relationship("metadata","person","dcCreator")

@post_load
def set_none_to_undefined(self, data, **kwargs):
Expand Down
4 changes: 2 additions & 2 deletions dinapy/schemas/molecular_analysis_result_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@

class Attachment(BaseSchema):
class Meta:
type_ = 'attachment'
type_ = 'metadata'

class MolecularAnalysisResultSchema(Schema):
id = fields.Str(load_only=True)
group = SkipUndefinedField(fields.Str, required=True, attribute="attributes.group")
createdBy = SkipUndefinedField(fields.Str, load_only=True, attribute="attributes.createdBy")
createdOn = SkipUndefinedField(fields.Str, load_only=True, attribute="attributes.createdOn")

attachment = create_relationship("molecular-analysis-result","attachment")
attachment = create_relationship("molecular-analysis-result","metadata","attachment")

@post_load
def set_none_to_undefined(self, data, **kwargs):
Expand Down
4 changes: 2 additions & 2 deletions dinapy/schemas/project_schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

class Attachment(BaseSchema):
class Meta:
type_ = 'attachment'
type_ = 'metadata'

class ProjectSchema(Schema):
id = fields.Str(load_only=True)
Expand All @@ -23,7 +23,7 @@ class ProjectSchema(Schema):
multilingualDescription = SkipUndefinedField(fields.Dict,allow_none=True,attribute="attributes.multilingualDescription")
extensionValues = SkipUndefinedField(fields.Dict,allow_none=True,attribute="attributes.extensionValues")

attachment = create_relationship("project","attachment")
attachment = create_relationship("project","metadata","attachment")

meta = fields.DocumentMeta()

Expand Down
4 changes: 2 additions & 2 deletions dinapy/schemas/storageunitusageschema.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ class StorageUnitUsage(Schema):
createdOn = SkipUndefinedField(fields.DateTime, load_only=True,attribute="attributes.createdOn")
createdBy = SkipUndefinedField(fields.Str, load_only=True,attribute="attributes.createdBy")

storageUnit = create_relationship("storage-unit-usage","storageUnit")
storageUnitType = create_relationship("storage-unit-usage","storageUnitType")
storageUnit = create_relationship("storage-unit-usage","storage-unit","storageUnit")
storageUnitType = create_relationship("storage-unit-usage","storage-unit-type","storageUnitType")

@post_load
def set_none_to_undefined(self, data, **kwargs):
Expand Down
4 changes: 2 additions & 2 deletions tests/material_sample_schema_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -228,8 +228,8 @@
"related": "/api/v1/material-sample/182ed68e-7536-4ad4-868c-399c8e5d70f3/parentMaterialSample"
},
"data": {
"id": "01902d3a-0ec1-7a57-8284-f4ba3aff1664",
"type": "parent-material-sample"
"id": "01902d3a-0ec1-7a57-8284-f4ba3aff1664",
"type": "material-sample"
},
},
"collectingEvent": {
Expand Down

0 comments on commit 14f71d1

Please sign in to comment.