-
Notifications
You must be signed in to change notification settings - Fork 9
Create controlled-value.json #244
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: sharifX-opends-terms-patch-2
Are you sure you want to change the base?
Create controlled-value.json #244
Conversation
A new FDO type to accommodate the controlled values in terms. Example topicDiscipline has a value called Botany. We need a schema to indicate that this a value and it belongs to a term and also vice versa. In essence the term and controlled-value are mostly same but with the above distinction. we need separate entities to link terms with values and extend the term also in future have hierarchies.
here skos:broader as optional. this tells that Term: topicDiscipline ├── ControlledValue: Anthropology ├── ControlledValue: Botany ├── ControlledValue: Astrogeology └── ControlledValue: Geology Each ControlledValue (like Botany) uses: skos:inScheme → points back to the Term (topicDiscipline) skos:broader → (optional) points to parent ControlledValue if there's hierarchy So Botany is a controlled value of topicDiscipline, not a narrower concept of the term itself. The term defines the "field" and the controlled values are the allowed "options" for that field.
samleeflang
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got some comments. Check the assumption that a controlled value is always only associated with a single term. Otherwise, this approach will create issues.
| }, | ||
| "ods:fdoType": { | ||
| "type": "string", | ||
| "description": "The DOI to the FDO type of the object", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better to use handle as FDO types only got a handle at the moment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok. I will update. but we need to update the other types also.
| "@id": { | ||
| "type": "string", | ||
| "description": "The unique identifier (handle) of the controlled value", | ||
| "pattern": "^https://hdl\\.handle\\.net/20\\.500\\.1025/.+", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the pattern needs an update. It should always be https://hdl.handle.net/20.500.1025/ + some string + /. A controlled value should always fall beneath one term right? Could there be a case where we have a controlled value that is shared over multiple terms?
| 1 | ||
| ] | ||
| }, | ||
| "ods:hasAgents": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Formatting looks a bit off here
| }, | ||
| "ods:hasAgents": { | ||
| "type": "array", | ||
| "description": "Contains all agents that are connected to the specimen. Agents that are part of a specific part of the specimen should be added there. For example, a Collector is connected to the CollectingEvent so is added in the event.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Description is specimen specific at the moment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
made the desc more generic.
| "$ref": "https://schemas.dissco.tech/schemas/fdo-type/shared-model/0.4.0/agent.json" | ||
| } | ||
| }, | ||
| "dcterms:title": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add more examples for the below fields
| "description": "Timestamp of last modification" | ||
| } | ||
| }, | ||
| "required": [ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing ods:status, ods:fdoType. I think modified should be optional
| "ods:status": "ods:Active", | ||
| "ods:version": 1, | ||
| "ods:hasAgents": [ | ||
| { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
roleName incorrectly added. Should be a separate object
| "@type": "schema:Person", | ||
| "schema:name": "FirstName LastName", | ||
| "schema:roleName": "Creator", | ||
| "dcterms:created": "2024-01-15T10:30:00Z" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not part of agent object
| "skos:inScheme": "https://hdl.handle.net/20.500.1025/topicDiscipline", | ||
| "owl:deprecated": false, | ||
| "dcterms:created": "2024-01-15T10:30:00Z", | ||
| "dcterms:modified": "2024-01-15T10:30:00Z" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove or add a modifier role
| { | ||
| "@id": "https://hdl.handle.net/20.500.1025/topicDiscipline/Botany", | ||
| "@type": "ods:ControlledValue", | ||
| "ods:fdoType": "https://doi.org/21.T11148/bbad8c4e101e8af01115", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Points to media, needs to be updated later when there is a fdoType for the ControlledValue
checked assumption: Each controlled value belongs to exactly ONE term. updated regex for FDO Type and controlled value update hasAgents desc to a more generic one add more examples ods:status and ods:fdoType now required. moved modified from required.
A new FDO type to accommodate the controlled values in terms. Example topicDiscipline has a value called Botany. We need a schema to indicate that this a value and it belongs to a term and also vice versa. In essence the term and controlled-value are mostly same but with the above distinction. we need separate entities to link terms with values and extend the term also in future have hierarchies.