James
James

Reputation: 149

How to add Coding extension in FHIR resources

I'd like to add extension Coding to DSTU2 ClaimResponse.item.adjudication.code which has binding strength as Extensible. I have three formats and which one is proper, or if none of them, what is suggested format? Thanks.

a.  Use FHIR code "system" with a new code value

"adjudication":[
    {
        "code":{
            "system":"http://hl7.org/fhir/ValueSet/adjudication",
            "code":"allowed"
        },
        "amount":{
            "value":21,
            "system":"urn:std:iso:4217",
            "code":"USD"
        }
    }
]

b. Use custom code "system" with a new code value

"adjudication":[
    {
        "code":{
            "system":"http://myhealth.com/ClaimResponse/adjudication#allowed",
            "code":"allowed"
        },
        "amount":{
            "value":21,
            "system":"urn:std:iso:4217",
            "code":"USD"
        }
    }
]

c. Use extension

"adjudication":[
    {
        "code":{
            "extension":[
                {
                    "url":"http://myhealth.com/ClaimResponse/adjudication#allowed",
                    "valueCode":"allowed"
                }
            ]
        },
        "amount":{
            "value":234,
            "system":"urn:std:iso:4217",
            "code":"USD"
        }
    }
]

Upvotes: 1

Views: 419

Answers (1)

Lloyd McKenzie
Lloyd McKenzie

Reputation: 6803

Option b is the closest, but the system URL looks a little funky. Something like this would be better: "system":"http://myhealth.com/CodeSystem/adjudication-code"

The system should ideally be a URL that resolves to the code system definition (though it doesn't have to) and should apply to a set of codes, not the single code you're conveying. (While it's possible to have one-code code systems, it's more than a little unusual.)

Option a is wrong because we never send the value set URL as the Coding.system. Option c is unnecessary - with an extensible binding, you're free to use any codes that aren't already covered by the defined value set.

All that said, it's not clear that "allowed" makes sense as a value for "code" given the other options in the extensible value set. You might also look at the draft STU 3 version which eliminates "code" altogether. See if that design will meet your needs better, and if not, provide feedback when it goes to ballot this August.

Upvotes: 1

Related Questions