Stream: implementers
Topic: Proper use of 'source' in Provenance
Jean Duteau (Jan 25 2021 at 16:27):
I need some advice on the proper entity.role code in Provenance. I have a piece of software that takes in XML documents or FHIR bundles and creates the opposite version. I am using a Provenance instance to tie them together (via a DocumentReference for the XML document). Without reading the definition of 'source', it seems to me that it is most appropriate as the entity (either the XML document or the FHIR bundle) is the source for the transformation to the target. But the definition seems rather specific and I'm not sure if it applies to my use case:
"A primary source for a topic refers to something produced by some agent with direct experience and knowledge about the topic, at the time of the topic's study, without benefit from hindsight."
It is the "agent with direct experience and knowledge about the topic" that trips me up. Would this still apply to a piece of software that transforms an entity into a target?
Lloyd McKenzie (Jan 25 2021 at 17:16):
@John Moehrke
John Moehrke (Jan 25 2021 at 17:23):
I would agree that the current definition is not as clear as it should be. I welcome a jira ticket with recommended improvement.
Jean Duteau (Jan 25 2021 at 17:23):
@John Moehrke I can create a JIRA ticket, but I just want to confirm if you think I am right in using 'source' for my use case.
John Moehrke (Jan 25 2021 at 17:24):
I agree that as a Provenance.entity, something that is listed as a source for a Provenance.target, should simply be a primary source for the event.
Jean Duteau (Jan 25 2021 at 17:24):
ok, thx
John Moehrke (Jan 25 2021 at 17:24):
where quotation might be valid... if your Provenace.target is just re-using data from source
Jean Duteau (Jan 25 2021 at 17:25):
it is really a transformation - I'm taking the same data from the source, but transforming into a different format. Think of a CDA to FHIR or FHIR to CDA transformation (in my use case, it's not CDA, but that's a common transformation).
John Moehrke (Jan 25 2021 at 17:27):
okay, that is not a quote. so, yes source seems right.... or do we might feel we have a core new concept. The vocabulary we have is a perspective on W3C PROV model.
What I am not clear on is... where source is a primary, what do you indicate a source that is not 'the primary'? Or is the word primary not that important?
Jean Duteau (Jan 25 2021 at 17:28):
i'm writing up the issue to allow for changing source or create a new concept as needed
Jean Duteau (Jan 25 2021 at 17:38):
J#30580 was created
Jean Duteau (Jan 26 2021 at 01:08):
@Lloyd McKenzie @John Moehrke If I'm transforming my data and I have an incoming code for the transaction that determines whether I am creating/updating/deleting FHIR data, what should I put for my Provenance.activity? Should it be just the incoming transaction code? Should I put when of the CREATE/UPDATE/DELETE codes and a separate coding with my incoming transaction code? Should I find a different place for my transaction code?
John Moehrke (Jan 26 2021 at 01:10):
I am not understanding what you mean by "incoming code for the transaction"? Can you give an example?
Jean Duteau (Jan 26 2021 at 01:14):
My incoming XML data contains a transaction type, eg. register organization, deregister organization, no change notification of organization. Those result in a FHIR transaction bundle that has these REST methods: CREATE or UPDATE for register, DELETE for deregister, UPDATE for no change notification. I was going to use Provenance.activity to capture the incoming transaction type. But the binding is extensible and contains CREATE/UPDATE/DELETE, so I'm thinking I should use one of those?
John Moehrke (Jan 26 2021 at 01:14):
in IHE when the activity is to start with CDA and produce FHIR Resources I used
<system value="http://hl7.org/fhir/w3c-provenance-activity-type" />
<code value="Derivation" />
John Moehrke (Jan 26 2021 at 01:17):
In IHE, I put the QEDm transaction identifier in Provenance.policy
John Moehrke (Jan 26 2021 at 01:17):
<fixedUri value="urn:ihe:pcc:qedm:2017:document-provenance-policy" />
John Moehrke (Jan 26 2021 at 01:18):
not clear to me that is better than your proposal which is to put your transaction code into the Provenance.activity.... There is not much experience to use to declare one way or the other.
John Moehrke (Jan 26 2021 at 01:19):
I started from the point of viiew that Provenance.activity would be more restricted to the w3c-provenance-activity(s)...
John Moehrke (Jan 26 2021 at 01:20):
I am noticing that the current valueset is very different than STU3... not clear to me this was a good thing
Last updated: Apr 12 2022 at 19:14 UTC