Stream: conformance
Topic: Element.id has no type code?
Michel Rutten (Dec 18 2018 at 15:23):
In R4, the element definition for "Element.id" has slightly changed.
In STU3, the type.code property used to specify "string":
<type> <code value="string" /> </type>
In R4, type.code now contains only special "compiler magic" extensions:
<!-- Note: primitive values do not have an assigned type. e.g. this is compiler magic. XML, JSON and RDF types provided by extension --> <type> <extension url="http://hl7.org/fhir/StructureDefinition/regex"> <valueString value="[^\s]+(\s[^\s]+)*"/> </extension> <code> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-json-type"> <valueString value="string"/> </extension> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-xml-type"> <valueString value="xsd:token"/> </extension> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-rdf-type"> <valueString value="xsd:token"/> </extension> </code> </type>
I assume that this change is intentional?
Grahame Grieve (Dec 18 2018 at 20:37):
yes
Grahame Grieve (Dec 18 2018 at 20:37):
it's not a FHIR string - it doesn't allow extensions, for instance
Michel Rutten (Dec 18 2018 at 23:01):
OK, makes sense. This also implies that Element.id
no longer inherits constraints (e.g. ele-1) from root Element
, as confirmed by the snapshot expansion in official profiles-types.xml - correct?
Michel Rutten (Dec 18 2018 at 23:01):
(just making sure our compiler magic aligns)
Grahame Grieve (Dec 19 2018 at 03:12):
umm I have't thought about that. I guess it doesn't
Brian Postlethwaite (Dec 19 2018 at 19:31):
Is this the same definition in extension.url?
Ewout Kramer (Dec 19 2018 at 21:31):
should be, I guess, same principle...
Grahame Grieve (Dec 19 2018 at 22:03):
yes
Eric Haas (Dec 21 2018 at 01:06):
OK so I am adding fhirprimitive extensions to the Python model... I am excluding them for extension.url
and id
and what about all the valueXs
in the extensions can they have id and extensions?
Eric Haas (Dec 21 2018 at 01:07):
are there any other places where a primitive is not a 'fhirprimitive'?
Grahame Grieve (Dec 21 2018 at 02:32):
the primitive value elements
Eric Haas (Dec 21 2018 at 03:16):
OK and what about for example a valueString element in an extension?
Grahame Grieve (Dec 21 2018 at 03:56):
that's a full string that can have extensions of it's own
Last updated: Apr 12 2022 at 19:14 UTC