Stream: IG creation
Topic: Representation of StructureMap in IGuides?
Jean Duteau (Jul 20 2020 at 16:57):
Does anyone have a special representation of a StructureMap in their Implementation Guide? I have a bunch of guides that have mappings from existing standards to FHIR and I'm trying to determine the best way to include those mappings in the guide. I can obviously drop an Excel spreadsheet or a PDF/image from a mapping tool, but I'd really like to document the mappings in a StructureMap. But I'd only do that if there was a nice-looking representation of a StructureMap.
Jose Costa Teixeira (Jul 20 2020 at 17:03):
How would this look like?
Jean Duteau (Jul 20 2020 at 17:04):
I was thinking something like this:
http://build.fhir.org/ig/HL7/v2-to-fhir/ConceptMap-message-adt-a01-to-bundle.html
Jean Duteau (Jul 20 2020 at 17:05):
but i'm not adverse to any representation besides the raw resource instance
Jose Costa Teixeira (Jul 20 2020 at 17:24):
I was kind of hoping for a nice graphic representation à la mapforce.. but a table is a good way.
Jean Duteau (Jul 20 2020 at 17:25):
yes. we are looking at using MapForce for our project to use as a graphical representation. it would be great if MapForce could natively spit out a StructureMap, but that isn't going to happen shortly. :) That was what I referred to as the PDF/image from our mapping tool above.
Jose Costa Teixeira (Jul 20 2020 at 17:45):
We could do some xslt in the template, but seems cleaner to do it in the java code. (Pinging @Grahame Grieve and @Lloyd McKenzie to confirm).
Rik Smithies (Jul 20 2020 at 19:04):
Does MapForce output some sort of XML etc that could be converted to a StructureMap?
Grahame Grieve (Jul 20 2020 at 19:09):
that's a concept map, not a structure map.
Grahame Grieve (Jul 20 2020 at 19:10):
I don't know what a mapforce representation looks like?
Jean Duteau (Jul 20 2020 at 19:10):
Grahame Grieve said:
that's a concept map, not a structure map.
Yes, I know, which is why I said "something like this"
Grahame Grieve (Jul 20 2020 at 19:11):
I'm not sure what you're asking for then.
Grahame Grieve (Jul 20 2020 at 19:11):
you can document them as a concept map and get that rendering. Or you can document them as a structure map and not get that, since I don't know how I'd produce a table that reasonably captures the complexity of a structure map
Grahame Grieve (Jul 20 2020 at 19:13):
or you can do both... they do different things
Jean Duteau (Jul 20 2020 at 19:15):
Okay thanks, I'm hearing that you don't have an idea of how to present a StructureMap in a format other than a resource instance. I'm wondering if anyone else has.
Grahame Grieve (Jul 20 2020 at 19:15):
well, I automatically generate it as a map language statement, which is the best way to look at it
Jean Duteau (Jul 20 2020 at 19:16):
what is a "map language statement"? Do you have an example that I can see?
Grahame Grieve (Jul 20 2020 at 19:17):
the representation used here: http://hl7.org/fhir/codesystem-version-maps.html
Grahame Grieve (Jul 20 2020 at 19:18):
hmm that should be the standard representation anyway now that I think about it
Jean Duteau (Jul 20 2020 at 19:20):
okay, that just takes me back full-circle to my FHIR Mapping Language source files that create StructureMap instances. :)
Jean Duteau (Jul 20 2020 at 19:21):
thanks, but I'm looking to see if someone has done something more intuitive than map language statements.
Grahame Grieve (Jul 20 2020 at 19:21):
yes. I'm always willing to consider additional representations if they (a) are faithful to the intent of the resource and (b) are possible to produce
Grahame Grieve (Jul 20 2020 at 19:23):
the problem is that what structuremap does it not intuitive.
Jose Costa Teixeira (Jul 20 2020 at 20:01):
just to share:
when I think of a (basic) structuremap, I imagine this kind of visualization (pretty similar to MapForce)
https://apis.guru/graphql-voyager/
Jean Duteau (Jul 20 2020 at 20:01):
yes, something like that (maybe not so complex)
Grahame Grieve (Jul 20 2020 at 20:19):
not so complex? for a mapping statement, it has to be way more complicated
Jean Duteau (Jul 20 2020 at 20:22):
Most mappings are of the type "this element in this structure maps to this element in that structure". So having a simple graphical representation of that would be a good thing. I recognize that more complex mappings would need consideration of how to represent in a graphical way, but that might be done by notes on the mapping association.
Grahame Grieve (Jul 20 2020 at 20:25):
but I can't write code against most
Jean Duteau (Jul 20 2020 at 20:28):
right, thus my further statement that this representation would need to determine how best to do complex mappings
Grahame Grieve (Jul 20 2020 at 20:31):
I admit to not knowing what this achieves. The link Jose provided above leaves me cold. How is it useful?
Jean Duteau (Jul 20 2020 at 20:31):
i suspect that you just aren't the audience for the graphical representation view.
Grahame Grieve (Jul 20 2020 at 20:32):
perhaps not. I don't like views that provide false sense of security by hiding information
Grahame Grieve (Jul 20 2020 at 20:32):
We could do several things with the existing representation, such as embedding links that allow you to find the targets of explicit and implicit group links, and using styling to make it easier to read
Rik Smithies (Jul 20 2020 at 20:52):
A lot of maps would look ok in a tabular form, I suppose. So for the ones that do, you can choose that your IG show that format. There a human in the loop, so it doesn't matter if the display cannot handle every case.
Rik Smithies (Jul 20 2020 at 20:54):
the rendering doesn't even need to be part of the main IG tooling at first. It could generate HTML and be spliced in. Could be project specific at the start. I would be interested to see a dummy MapForce file and see if it could be turned into a StructureMap and then to an HTML that looks like the ConceptMap display.
Grahame Grieve (Jul 23 2020 at 11:42):
@Jean Duteau I have a few ideas here. I'll try and get an example in place over the weekend
Jean Duteau (Jul 27 2020 at 16:34):
@Grahame Grieve did you happen to find time over the weekend to rig something up? Our team is looking at using an external mapping tool or ETL tool to graphically represent the mappings and then use those for the transformations and I would really like the mappings to be represented as StructureMaps and ConceptMaps but it's a tough sell to maintain two separate mappings.
David Hay (Jul 27 2020 at 17:55):
@Jean Duteau Have you got an example of a conceptmap and/or structureMap that you'd like to visualize? Was wondering if the library I use for references between resources in clinFHIR could be useful...
Jean Duteau (Jul 27 2020 at 17:55):
i haven't made one, but I could quickly put something together
David Hay (Jul 27 2020 at 18:05):
I was imagining something where each element being mapped would be an 'object' with lines between them representing the mappings. Could get quite messy though, so not too sure if it would help... Was thinking something like the bundle visualizer - eg: http://clinfhir.com/bundleVisualizer.html?id=aupc-compositionComplete&server=http:%2F%2Fhome.clinfhir.com:8054%2FbaseR4%2F
David Hay (Jul 27 2020 at 18:06):
(This is a sample document so the 'objects' are all resources, but gives the idea...)
Grahame Grieve (Jul 27 2020 at 19:03):
no I didn't get to it - too many other things to look at. sorry
Last updated: Apr 12 2022 at 19:14 UTC