IPS Tooling Wish List
These are my thoughts on what kind of software tool(s) I would like to have for testing the IPS Profile.
FHIR Content and Transactions
- I need a tool that validates an IPS document as a complete document.
- Required elements are present
- Resources referenced in the composition are in the document and not somewhere else.
- Resources in the document are valid per IPS requirements.
- Cannot assume that the document resides on a FHIR server. Again, valid use case, but too restrictive for our testing.
- Document upload to a website is possible; I know you already have this infrastructure. CLI tool is also an option. As a developer, I actually prefer this because it is easy to script. If I can hit your website with a curl script to do validation, that satisfies my CLI request
- I want to be able to validate the Composition by itself. I want the Creator to know if the Composition has all required elements in it.
- Same comments apply as above. Cannot assume the Composition lives on a FHIR server.
- I want to be able to validate individual resources.
- Same comments as above.
- I am telling a Creator that it has to create a patient with specific clinical content. I want to able to validate that the specified content is present in the document. I will have a number of patients, so the tool needs to be able to manage content for multiple patients. I want to add new patients and new clinical content at runtime without having to write Ruby code or understand how to build your tool. I just want some kind of specification (say IPS XML or json with further annotations) to drive a test case.
- Traditional validation tools give you errors when required elements are missing and warnings when optional elements are missing. That is understandable.
- I need additional tests where I can raise the bar and say "These optional elements are required for this test."
- That will support things like a track that is focused on Immunizations. Rather than me wading through a bunch of warnings looking for the ones that are for Immunizations, I want to be able to elevate those items to the error level so I can point out to people: You are working in the Immunization Track. Because you are working here, missing Immunizations are errors and no longer warnings.
- These fall in the Nice to Have category.
- Assume the resource I want to question does exist on a FHIR server. I can tell some creators to "send your document over there", and we can use your existing infrastructure. I think I get this for free.
- Have Inferno publish an endpoint where I can push a resource and have you validate against one or more contexts. Contexts is not the right word; I want to use profile, but that means different things to different people. Maybe I should have said scenario. I want to be able to find the resource in Inferno after it is submitted and tell it to validate against A, B, C and E. This is for a Creator that is normally pushing a document to a FHIR server. I am purposely not including other metadata in the HTTP transaction that would specify the context because I do not want to require the client application to write extra code on top of their normal work.
- That being said, a URL that accepts a resource with extra context (test A, B, C, E) would be useful. Because I am a CLI guy, that simplifies things for me as a developer. If Epic wants to put this in their app, then can knock themselves out.
- As in 6.2., have Inferno publish an endpoint that accepts an IHE XDS Provide and Register transaction and then supports validation. I do not imagine this would ever be on your radar, but it does not hurt to ask.
- As in 6.2., have Inferno publish an endpoint that accepts an ITI-65 MHDS transaction. In brief, some IHE Creators will submit the document with an extra wrapper around it. If you took it natively, that simplifies things. Again, I don't see this as a priority for you.
- Integration with Gazelle: You have already been in discussion with the Kereval team about how to integrate Inferno and Gazelle. I should probably see the API you are workings towards rather than opining any further.