Stream: shorthand
Topic: Getting errors with instances and valuesets
Bob Milius (Mar 20 2020 at 20:41):
I'm trying to write a simple profile that is constraining the Genomics Reporting IG. It creates the profile, a valueset, and an example. Sushi doesn't report any errors, but publisher shows errors in the instance and valuesets. Here's my FSH
Alias: GLSCodeSystem = https://glstring.org Alias: HGNC = http://www.genenames.org Profile: HLAGenotype Parent: genotype Id: hla-genotype Title: "HLA Genotype Observation" Description: "HLA Genotype profile of genotype observation" * component[gene-studied] 1..1 MS * component[gene-studied].value[x] only CodeableConcept * component[gene-studied].valueCodeableConcept from HLAGeneName Instance: HLA-A-GenotypeExample1 InstanceOf: http://example.org/fhir/hla-reporting/StructureDefinition/hla-genotype Title: "HLA-A Genotype Example 1" * status = #final * valueCodeableConcept.coding = GLSCodeSystem#"hla#3.25.0#HLA-A*01:01:01:01/HLA-A*24:02:01:01" * component[gene-studied].valueCodeableConcept = HGNC#HGNC:4931 "HLA-A" ValueSet: HLAGeneName Title: "HLA Gene Name Value Set" Id: hla-gene-name-value-set Description: "HLA Gene Names" * HGNC#HGNC:4931 "HLA-A" * HGNC#HGNC:4932 "HLA-B"
The qa.html shows these errors
image.png
I suspect I'll need to create a codesystem for glstrings.org.
But genenames.org is a valueset defined in the Genomics Reporting IG (http://hl7.org/fhir/uv/genomics-reporting/valueset-hgnc.html) and is also listed in https://www.hl7.org/fhir/terminologies-systems.html
Any idea what I'm doing wrong?
Mark Kramer (Mar 22 2020 at 17:42):
Hi Bob,
4 of 5 of these messages are due to the IG Publisher being unable to support the code systems you are using. When the IG Pub runs, it checks all the codes against the official HL7 terminology server. They aren't really errors, and the official word is that you can add the Information messages to the ignoreWarnings.txt
file. The error can't be suppressed, however.
The message about the minimum cardinality of valueCodeableConcept looks like it might be legit. I have a hunch you might need to add the rule * component[gene-studied].value[x] 1..1
.
The fact it talks about Observation.component.Observation.component
is suspicious.
What does the parent class, genotype
look like?
Bob Milius (Mar 23 2020 at 19:01):
Thanks @Mark Kramer, I'm working on creating codes systems, but I think I managed to fix the suspicious Observation.component.Observation.component
thing. I changed
* component[gene-studied].valueCodeableConcept from HLAGeneName
to
* component[gene-studied].value[x] from HLAGeneName
Mark Kramer (Mar 24 2020 at 13:43):
The first construct is the way I would do it. I guess SUSHI figures out in the latter case that the binding on value[x] means bind to valueCodeableConcept. Why that should make a difference on the reported error, I can't even guess.
Last updated: Apr 12 2022 at 19:14 UTC