Skip to content

Combined concept + mapping REST API support #2295

@paynejd

Description

@paynejd

CRUD is separate for a concept and its mappings because each is a top-level resource, which is different from concept names, descriptions and extras which are true sub-resources. We want to allow a single POST/PUT/PATCH request for a concept and its mappings to allow more efficient and transaction-safe processing.

Acceptance Criteria

  • OCL API accepts POST/PUT/PATCH request for a concept plus its mappings
  • OCL API should reject the request if a mapping is submitted that is not associated with the parent concept
  • Transaction - all or nothing - we don't want a partially created/updated set of results; either everything works or everything fails

Questions:

  • @snyaggarwal What are your thoughts on supporting a simplified mapping representation? For example, there is no need to repeat the owner+repo, and it would be possible to reference the parent concept rather than to repeat it as the from or to concept. Something like this? (
{
  "type": "Concept",
  "mappings": [
    {"from_concept": "__parent_concept", "to_concept_url": "/orgs/Regenstrief/sources/LOINC/93932-1/", "map_type": "SAME-AS"}
  ]
}
  • @snyaggarwal Please add implementation details on how the request HTTP verb (POST/PUT/PATCH) will be applied to its mappings for group review

Please submit this as a PR for review by Filipe

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions