FHIR Chat · Extending interactions · implementers

Stream: implementers

Topic: Extending interactions


view this post on Zulip Michael Lawley (Oct 18 2019 at 05:43):

We are investigating design space around creating special kinds of CodeSystems (eg SNOMED CT) and wondering whether it would be legitimate to have the CREATE interaction on CodeSystem support an additional MIME type (application/zip in this case) along with some custom parameters.
This has the appeal of symmetry with POSTing a FHIR CodeSystem Resource.

The alternative would be a custom operation.

view this post on Zulip Grahame Grieve (Oct 18 2019 at 10:24):

you can do that legitimately - it's just an extension outside the specification space. I don't think we'll standardise that... unless enough people ask

view this post on Zulip Michael Lawley (Oct 19 2019 at 01:13):

Thanks. So if we do it inside the specification space then we'd defined an operation like:

{
    "resourceType": "OperationDefinition",
    "id": "cf-1571444803740",
    "text": {
        "status": "generated",
        "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><a name=\"mm\"></a></div>"
    },
    "url": "http://ontoserver.csiro.au/profiles/CodeSystem-x-create",
    "name": "Create CodeSystem from native format",
    "status": "draft",
    "kind": "operation",
    "code": "x-create",
    "resource": [
        "CodeSystem"
    ],
    "type": true,
    "parameter": [
        {
            "code": "binary",
            "use": "in",
            "min": 1,
            "max": "1",
            "documentation": "For SNOMED CT, a ZIP of the RF2 SNAPSHOT content",
            "type": "Binary"
        },
        {
            "code": "system",
            "use": "in",
            "min": 1,
            "max": "1",
            "type": "uri"
        },
        {
            "code": "version",
            "use": "in",
            "min": 1,
            "max": "1",
            "type": "string"
        },
        {
            "code": "return",
            "use": "out",
            "min": 1,
            "max": "1",
            "type": "OperationOutcome"
        }
    ]
}

I'd kind of like this to be async by default. Is there a way to document this?

view this post on Zulip Michael Lawley (Oct 19 2019 at 01:16):

The other issue is that the preferred way to interact with this would be a POST of the ZIP with the additional parameters (system & version) as query parameters. Is that also legit? HAPI seems to ignore query parameters when there's a POST body, requiring the use of a Parameters resource.

view this post on Zulip Grahame Grieve (Oct 19 2019 at 11:38):

I'm not sure about the query parameters. There's no way to talk about async in capability statement or operation definition at this time


Last updated: Apr 12 2022 at 19:14 UTC