Package com.ibm.fhir.model.resource
Class Provenance
- java.lang.Object
-
- com.ibm.fhir.model.visitor.AbstractVisitable
-
- com.ibm.fhir.model.resource.Resource
-
- com.ibm.fhir.model.resource.DomainResource
-
- com.ibm.fhir.model.resource.Provenance
-
- All Implemented Interfaces:
Visitable
@Generated("com.ibm.fhir.tools.CodeGenerator") public class Provenance extends DomainResource
Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Provenance.Agent
An actor taking a role in an activity for which it can be assigned some degree of responsibility for the activity taking place.static class
Provenance.Builder
static class
Provenance.Entity
An entity used in this activity.
-
Field Summary
-
Fields inherited from class com.ibm.fhir.model.resource.DomainResource
contained, extension, modifierExtension, text
-
Fields inherited from class com.ibm.fhir.model.resource.Resource
id, implicitRules, language, meta
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(String elementName, int elementIndex, Visitor visitor)
Accept a Visitor and invoke the appropriate visit methods.static Provenance.Builder
builder()
boolean
equals(Object obj)
CodeableConcept
getActivity()
An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.List<Provenance.Agent>
getAgent()
An actor taking a role in an activity for which it can be assigned some degree of responsibility for the activity taking place.List<Provenance.Entity>
getEntity()
An entity used in this activity.Reference
getLocation()
Where the activity occurred, if relevant.Element
getOccurred()
The period during which the activity occurred.List<Uri>
getPolicy()
Policy or plan the activity was defined by.List<CodeableConcept>
getReason()
The reason that the activity was taking place.Instant
getRecorded()
The instant of time at which the activity was recorded.List<Signature>
getSignature()
A digital signature on the target Reference(s).List<Reference>
getTarget()
The Reference(s) that were generated or updated by the activity described in this resource.boolean
hasChildren()
int
hashCode()
Provenance.Builder
toBuilder()
Create a new Builder from the contents of this Resource-
Methods inherited from class com.ibm.fhir.model.resource.DomainResource
getContained, getExtension, getModifierExtension, getText
-
Methods inherited from class com.ibm.fhir.model.resource.Resource
as, getId, getImplicitRules, getLanguage, getMeta, is
-
-
-
-
Method Detail
-
getTarget
public List<Reference> getTarget()
The Reference(s) that were generated or updated by the activity described in this resource. A provenance can point to more than one target if multiple resources were created/updated by the same activity.- Returns:
- An unmodifiable list containing immutable objects of type
Reference
that is non-empty.
-
getOccurred
public Element getOccurred()
The period during which the activity occurred.- Returns:
- An immutable object of type
Element
that may be null.
-
getRecorded
public Instant getRecorded()
The instant of time at which the activity was recorded.- Returns:
- An immutable object of type
Instant
that is non-null.
-
getPolicy
public List<Uri> getPolicy()
Policy or plan the activity was defined by. Typically, a single activity may have multiple applicable policy documents, such as patient consent, guarantor funding, etc.- Returns:
- An unmodifiable list containing immutable objects of type
Uri
that may be empty.
-
getLocation
public Reference getLocation()
Where the activity occurred, if relevant.- Returns:
- An immutable object of type
Reference
that may be null.
-
getReason
public List<CodeableConcept> getReason()
The reason that the activity was taking place.- Returns:
- An unmodifiable list containing immutable objects of type
CodeableConcept
that may be empty.
-
getActivity
public CodeableConcept getActivity()
An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.- Returns:
- An immutable object of type
CodeableConcept
that may be null.
-
getAgent
public List<Provenance.Agent> getAgent()
An actor taking a role in an activity for which it can be assigned some degree of responsibility for the activity taking place.- Returns:
- An unmodifiable list containing immutable objects of type
Provenance.Agent
that is non-empty.
-
getEntity
public List<Provenance.Entity> getEntity()
An entity used in this activity.- Returns:
- An unmodifiable list containing immutable objects of type
Provenance.Entity
that may be empty.
-
getSignature
public List<Signature> getSignature()
A digital signature on the target Reference(s). The signer should match a Provenance.agent. The purpose of the signature is indicated.- Returns:
- An unmodifiable list containing immutable objects of type
Signature
that may be empty.
-
hasChildren
public boolean hasChildren()
- Overrides:
hasChildren
in classDomainResource
-
accept
public void accept(String elementName, int elementIndex, Visitor visitor)
Description copied from interface:Visitable
Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:if (visitor.preVisit(this)) { visitor.visitStart(elementName, elementIndex, this); if (visitor.visit(elementName, elementIndex, this)) { // visit children } visitor.visitEnd(elementName, elementIndex, this); visitor.postVisit(this); }
- Specified by:
accept
in interfaceVisitable
- Specified by:
accept
in classAbstractVisitable
- Parameters:
elementName
- the name of the element in the context of this visitelementIndex
- the index of the element in a list or -1 if it is not contained within a Listvisitor
- the visitor to use
-
toBuilder
public Provenance.Builder toBuilder()
Description copied from class:Resource
Create a new Builder from the contents of this Resource- Specified by:
toBuilder
in classDomainResource
-
builder
public static Provenance.Builder builder()
-
-