FHIR Chat · Profiling limits · implementers

Stream: implementers

Topic: Profiling limits


view this post on Zulip Brian Reinhold (Jul 26 2017 at 14:48):

It came up in a meeting today with respect to Device mapping to FHIR; when profiling, is it permitted to define a new element in a profile of a resource without extensions? I would expect not but I cannot find any language that specifically forbids it. That does not mean such language does not exist.

view this post on Zulip Michel Rutten (Jul 26 2017 at 15:08):

Hi @Brian Reinhold, see here: https://www.hl7.org/fhir/structuredefinition-definitions.html#StructureDefinition.derivation

view this post on Zulip Michel Rutten (Jul 26 2017 at 15:08):

"If the definition is a specialization, then it adds new elements in the differential, and the snapshot includes the inherited elements.
If the definition is a constraint, then it can not define new elements, it can only make new rules about existing content."

view this post on Zulip Lloyd McKenzie (Jul 26 2017 at 17:01):

With logical models, you can add things. With resources and data types, only HL7 international can add things.

view this post on Zulip Brian Reinhold (Jul 26 2017 at 17:25):

"If the definition is a specialization, then it adds new elements in the differential, and the snapshot includes the inherited elements.
If the definition is a constraint, then it can not define new elements, it can only make new rules about existing content."

Can I use the Forge tool to generate a snapshot with a new element on a base definition? Say I want to add a property element to the DeviceComponent? In fact, I do. But it has not been approved yet. But I would still like to define a profile with it for demonstration

view this post on Zulip Brian Reinhold (Jul 26 2017 at 17:30):

@Michel Rutten By the way, how can I report an issue on Forge without invoking Outlook? I use a web client and not Outlook Express.

view this post on Zulip Rick Geimer (Jul 26 2017 at 18:49):

@Brian Reinhold You can just email forge@furore.com

view this post on Zulip Brian Reinhold (Jul 26 2017 at 19:26):

@Rick Geimer Thanks. Just what I was looking for (without having to set up Outlook on my system).

view this post on Zulip Lloyd McKenzie (Jul 26 2017 at 20:36):

Forge drives off a zip file that contains all the structure definitions. In theory if you were to edit the contents of the zip file, Forge would let you create profiles against resources with all sorts of modifications. However, they wouldn't be FHIR-conformant profiles until such time as there was a release that actually aligned with those changes.

view this post on Zulip Brian Reinhold (Jul 26 2017 at 21:01):

@Lloyd McKenzie (Personally I wish they would get keep the old 'reply' only and not carry the baggage of the quote.)
That being said if I changed the xsd for the DeviceComponent from 1..1 to 0..* Forge would work with that cardinality? That would be pretty cool but the chances are that there are more config files that would need to be changed....

view this post on Zulip Eric Haas (Jul 26 2017 at 21:44):

You should be able to use the Ig-pub for this instead of pointing to a published version point to you local "experimental build" output and your profiles will be based on that. I have created a draft Case Report resource and am planning to profile it so l had to figure this out too.

"control file. ...There is one more path:
[specification]
This is an HTTP page (http:// or file:// that points to the version of the specification on which this IG is based"

view this post on Zulip Lloyd McKenzie (Jul 27 2017 at 01:20):

Forge doesn't use the schema - it uses the StructureDefinitions that define the resource. That should be all you need to change.

view this post on Zulip Michel Rutten (Jul 27 2017 at 07:35):

Hi @Brian Reinhold, the Forge installation includes a ZIP file that contains all the core resource and datatype definitions (specifically the files profiles-resources.xml and profiles-types.xml). Upon first start, Forge extracts the contents of the ZIP file to a temporary folder. If you hack the definitions in the ZIP file, then Forge will pick this up. However you have to manually clear the cache folders. At the bottom of the Options menu you can find two commands to locate the cache folders. If you delete both folders, then Forge will re-extract the ZIP on the next start.

view this post on Zulip Michel Rutten (Jul 27 2017 at 07:40):

However please be aware that hacking the core defs will lead to profiles that are not compliant to the offical FHIR spec. Although Forge can handle this, it is an undocumented and unsupported feature.


Last updated: Apr 12 2022 at 19:14 UTC