Stream: conformance
Topic: Logical Model and ElementDefinition.base
Alexander Henket (May 16 2019 at 11:32):
@Michel Rutten / @Grahame Grieve When I save a Logical Model with Forge STU3, it looses all ElementDefinition.base definition. Example datatype II.
I believe that those paths are important so I can say "this II.nullFlavor path is actually taken from ANY.nullFlavor". Grahame could attest to the exact function it has. In any case I'm assuming Forge should not loose that info.
Grahame Grieve (May 16 2019 at 12:06):
yes it's important
Grahame Grieve (May 16 2019 at 12:06):
it's possible that the IG publisher will rebuild it?
Alexander Henket (May 16 2019 at 13:29):
Just checked. Yes and No. The resulting output contains the paths, but the qa.html will still complain it had to build them:
element.base cannot appear if there is no base on the structure definition [snapshot.exists() implies (snapshot.element.base.exists() = baseDefinition.exists())]
So either the error in qa.html is superfluous because it will add that info anyway, or the StrucDefs really should have had them
Grahame Grieve (May 16 2019 at 13:31):
hm that's a bug then. I agree that it either does and doesn't complain, or doesn't
Michel Rutten (May 20 2019 at 10:06):
Looks like you're trying to implement derived logical models, which Forge does not support. You may be able to hack it, but I've never tested this nor spent any time thinking about what this means. This probably explains why ElementDefinition.base
component remains empty. Forge assumes that all element definitions in a logical model are derived from Element
, repeating this everywhere would be redundant.
Alexander Henket (May 20 2019 at 10:38):
That explains that part. For now what I do is check the model using Forge and restore all base elements that Forge removes before committing to Github. I also manually keep diff and snapshot in sync if I do any reordering in Forge. "Bit" of a hassle, but manageable. Forge at least prevents making a number of other common mistakes made easily by hand. To make Forge truly useful here, I think we'll eventually need LoMo-on-LoMo support comparable to Profile-on-Profile
Last updated: Apr 12 2022 at 19:14 UTC