Profile Comparison between https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.BasicAudit.Query vs https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.BasicAudit.Query

Left:Basic AuditEvent for a successful Query (https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.BasicAudit.Query)
Right:Basic AuditEvent for a successful Query (https://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.BasicAudit.Query)

Messages

ErrorStructureDefinition.versionValues for version differ: '1.1.2' vs '1.1.3'
InformationStructureDefinition.dateValues for date differ: '2023-08-01T08:42:00-05:00' vs '2024-02-14T15:31:49-06:00'
InformationAuditEvent.outcomeElement minimum cardinalities differ: '0' vs '1'

Metadata

NameValueComments
.abstractfalse
    .baseDefinitionhttp://hl7.org/fhir/StructureDefinition/AuditEvent
      .copyright
        .date2023-08-01T08:42:00-05:002024-02-14T15:31:49-06:00
        • Values Differ
        .descriptionA basic AuditEvent profile for when a RESTful Query / Search action happens successfully. - Given a RESTful Query is requested - And the request does not have a Patient subject indicated - The requestor logging the event would potentially not know they have requested Patient specific data - The data objects may not be patient specific kind of objects - when the request is Patient specific then [PatientQuery](StructureDefinition-IHE.BasicAudit.PatientQuery.html) is used - And the request is authorized - Authorization failures should follow [FHIR core Access Denied](http://hl7.org/fhir/security.html#AccessDenied) - When successful - Note a failure AuditEvent may follow this pattern, but would not be a successful outcome and should have an OperationOutcome - Note success may result in zero or more results. The number of results and the content of the results are not recorded. - And the results are not Patient specific - when the results are Patient specific then [PatientQuery](StructureDefinition-IHE.BasicAudit.PatientQuery.html) are used - Then the AuditEvent recorded will conform - The raw search request is base64 encoded and placed in the .entity[query].query element. The base64 encoding of the raw search request enables preserving exactly what was requested, including possibly malicious patterns. This enables detection of malicious or malformed requests. - The cleaned search may be recorded (not base64) in the .entity[query].description. The cleaned search request would have removed parameters that were not understood/supported. The cleaned search request in the .description element enables more efficient processing. Note: the pattern defined in DICOM and IHE have the client is identified as the Source Role ID, and the server is identified as the Destination Role ID. This represents the query parameters are flowing from the client to the server. This may not be so obvious, as the data actually flows the opposite direction. This pattern is established and thus followed here.
          .experimental
            .fhirVersion4.0.1
              .jurisdiction
                ..jurisdiction[0]http://unstats.un.org/unsd/methods/m49/m49.htm#001
                  .kindresource
                    .nameQuery
                      .publisherIHE IT Infrastructure Technical Committee
                        .purpose
                          .statusactive
                            .titleBasic AuditEvent for a successful Query
                              .typeAuditEvent
                                .urlhttps://profiles.ihe.net/ITI/BALP/StructureDefinition/IHE.BasicAudit.Query
                                  .version1.1.21.1.3
                                  • Values Differ

                                  Structure

                                  NameL FlagsL Card.L TypeL Description & ConstraintsR FlagsR Card.L TypeL Description & ConstraintsCommentsdoco
                                  .. AuditEvent 0..*AuditEventEvent record kept for security purposes
                                  0..*AuditEventEvent record kept for security purposes
                                    ... id Σ0..1idLogical id of this artifactΣ0..1idLogical id of this artifact
                                      ... meta Σ0..1MetaMetadata about the resourceΣ0..1MetaMetadata about the resource
                                        ... implicitRules ?!Σ0..1uriA set of rules under which this content was created?!Σ0..1uriA set of rules under which this content was created
                                          ... language 0..1codeLanguage of the resource content
                                          Binding: ?? (preferred): A human language.

                                          Additional BindingsPurpose
                                          ??Max Binding
                                          0..1codeLanguage of the resource content
                                          Binding: ?? (preferred): A human language.

                                          Additional BindingsPurpose
                                          ??Max Binding
                                            ... text 0..1NarrativeText summary of the resource, for human interpretation0..1NarrativeText summary of the resource, for human interpretation
                                              ... contained 0..*ResourceContained, inline Resources
                                              0..*ResourceContained, inline Resources
                                                ... extension 0..*ExtensionAdditional content defined by implementations
                                                0..*ExtensionAdditional content defined by implementations
                                                  ... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
                                                  ?!0..*ExtensionExtensions that cannot be ignored
                                                    ... type Σ1..1CodingType/identifier of event
                                                    Binding: ?? (extensible): Type of event.


                                                    Required Pattern: {"system":"http://terminology.hl7.org/CodeSystem/audit-event-type","code":"rest"}
                                                    Σ1..1CodingType/identifier of event
                                                    Binding: ?? (extensible): Type of event.


                                                    Required Pattern: {"system":"http://terminology.hl7.org/CodeSystem/audit-event-type","code":"rest"}
                                                      ... Slices for subtype Σ1..*CodingMore specific type/id for the event
                                                      Slice: Unordered, Open by value:$this
                                                      Binding: ?? (extensible): Sub-type of event.


                                                      Σ1..*CodingMore specific type/id for the event
                                                      Slice: Unordered, Open by value:$this
                                                      Binding: ?? (extensible): Sub-type of event.


                                                        ... action Σ0..1codeType of action performed during the event
                                                        Binding: ?? (required): Indicator for type of action performed during the event that generated the event.


                                                        Required Pattern: E
                                                        Σ0..1codeType of action performed during the event
                                                        Binding: ?? (required): Indicator for type of action performed during the event that generated the event.


                                                        Required Pattern: E
                                                          ... period 0..1PeriodWhen the activity occurred0..1PeriodWhen the activity occurred
                                                            ... recorded Σ1..1instantTime when the event was recordedΣ1..1instantTime when the event was recorded
                                                              ... outcome Σ0..1codeWhether the event succeeded or failed
                                                              Binding: ?? (required): Indicates whether the event succeeded or failed.


                                                              Required Pattern: 0
                                                              Σ1..1codeWhether the event succeeded or failed
                                                              Binding: ?? (required): Indicates whether the event succeeded or failed.


                                                              Required Pattern: 0
                                                              • Element minimum cardinalities differ: '0' vs '1'
                                                              ... outcomeDesc Σ0..1stringDescription of the event outcomeΣ0..1stringDescription of the event outcome
                                                                ... purposeOfEvent Σ0..*CodeableConceptThe purposeOfUse of the event
                                                                Binding: ?? (extensible): The reason the activity took place.


                                                                Σ0..*CodeableConceptThe purposeOfUse of the event
                                                                Binding: ?? (extensible): The reason the activity took place.


                                                                  ... Slices for agent 2..*BackboneElementActor involved in the event
                                                                  Slice: Unordered, Open by pattern:type
                                                                  2..*BackboneElementActor involved in the event
                                                                  Slice: Unordered, Open by pattern:type
                                                                    .... id 0..1stringUnique id for inter-element referencing0..1stringUnique id for inter-element referencing
                                                                      .... extension 0..*ExtensionAdditional content defined by implementations
                                                                      0..*ExtensionAdditional content defined by implementations
                                                                        .... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                        ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                          .... type 0..1CodeableConceptHow agent participated
                                                                          Binding: ?? (extensible): The Participation type of the agent to the event.

                                                                          0..1CodeableConceptHow agent participated
                                                                          Binding: ?? (extensible): The Participation type of the agent to the event.

                                                                            .... role 0..*CodeableConceptAgent role in the event
                                                                            Binding: ?? (example): What security role enabled the agent to participate in the event.


                                                                            0..*CodeableConceptAgent role in the event
                                                                            Binding: ?? (example): What security role enabled the agent to participate in the event.


                                                                              .... who Σ0..1Reference(PractitionerRole | Practitioner | Organization | Device | Patient | RelatedPerson)Identifier of whoΣ0..1Reference(PractitionerRole | Practitioner | Organization | Device | Patient | RelatedPerson)Identifier of who
                                                                                .... altId 0..1stringAlternative User identity0..1stringAlternative User identity
                                                                                  .... name 0..1stringHuman friendly name for the agent0..1stringHuman friendly name for the agent
                                                                                    .... requestor Σ1..1booleanWhether user is initiatorΣ1..1booleanWhether user is initiator
                                                                                      .... location 0..1Reference(Location)Where0..1Reference(Location)Where
                                                                                        .... policy 0..*uriPolicy that authorized event
                                                                                        0..*uriPolicy that authorized event
                                                                                          .... media 0..1CodingType of media
                                                                                          Binding: ?? (extensible): Used when the event is about exporting/importing onto media.

                                                                                          0..1CodingType of media
                                                                                          Binding: ?? (extensible): Used when the event is about exporting/importing onto media.

                                                                                            .... network 0..1BackboneElementLogical network location for application activity0..1BackboneElementLogical network location for application activity
                                                                                              ..... id 0..1stringUnique id for inter-element referencing0..1stringUnique id for inter-element referencing
                                                                                                ..... extension 0..*ExtensionAdditional content defined by implementations
                                                                                                0..*ExtensionAdditional content defined by implementations
                                                                                                  ..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                  ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                    ..... address 0..1stringIdentifier for the network access point of the user device0..1stringIdentifier for the network access point of the user device
                                                                                                      ..... type 0..1codeThe type of network access point
                                                                                                      Binding: ?? (required): The type of network access point of this agent in the audit event.

                                                                                                      0..1codeThe type of network access point
                                                                                                      Binding: ?? (required): The type of network access point of this agent in the audit event.

                                                                                                        .... purposeOfUse 0..*CodeableConceptReason given for this user
                                                                                                        Binding: ?? (extensible): The reason the activity took place.


                                                                                                        0..*CodeableConceptReason given for this user
                                                                                                        Binding: ?? (extensible): The reason the activity took place.


                                                                                                          ... source S1..1BackboneElementAudit Event ReporterS1..1BackboneElementAudit Event Reporter
                                                                                                            .... id 0..1stringUnique id for inter-element referencing0..1stringUnique id for inter-element referencing
                                                                                                              .... extension 0..*ExtensionAdditional content defined by implementations
                                                                                                              0..*ExtensionAdditional content defined by implementations
                                                                                                                .... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                  .... site 0..1stringLogical source location within the enterprise0..1stringLogical source location within the enterprise
                                                                                                                    .... observer Σ1..1Reference(PractitionerRole | Practitioner | Organization | Device | Patient | RelatedPerson)The identity of source detecting the eventΣ1..1Reference(PractitionerRole | Practitioner | Organization | Device | Patient | RelatedPerson)The identity of source detecting the event
                                                                                                                      .... type 0..*CodingThe type of source where event originated
                                                                                                                      Binding: ?? (extensible): Code specifying the type of system that detected and recorded the event.


                                                                                                                      0..*CodingThe type of source where event originated
                                                                                                                      Binding: ?? (extensible): Code specifying the type of system that detected and recorded the event.


                                                                                                                        ... Slices for entity C1..*BackboneElementData or objects used
                                                                                                                        Slice: Unordered, Open by pattern:type
                                                                                                                        C1..*BackboneElementData or objects used
                                                                                                                        Slice: Unordered, Open by pattern:type
                                                                                                                          .... id 0..1stringUnique id for inter-element referencing0..1stringUnique id for inter-element referencing
                                                                                                                            .... extension 0..*ExtensionAdditional content defined by implementations
                                                                                                                            0..*ExtensionAdditional content defined by implementations
                                                                                                                              .... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                              ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                                .... what Σ0..1Reference(Resource)Specific instance of resourceΣ0..1Reference(Resource)Specific instance of resource
                                                                                                                                  .... type 0..1CodingType of entity involved
                                                                                                                                  Binding: ?? (extensible): Code for the entity type involved in the audit event.

                                                                                                                                  0..1CodingType of entity involved
                                                                                                                                  Binding: ?? (extensible): Code for the entity type involved in the audit event.

                                                                                                                                    .... role 0..1CodingWhat role the entity played
                                                                                                                                    Binding: ?? (extensible): Code representing the role the entity played in the audit event.

                                                                                                                                    0..1CodingWhat role the entity played
                                                                                                                                    Binding: ?? (extensible): Code representing the role the entity played in the audit event.

                                                                                                                                      .... lifecycle 0..1CodingLife-cycle stage for the entity
                                                                                                                                      Binding: ?? (extensible): Identifier for the data life-cycle stage for the entity.

                                                                                                                                      0..1CodingLife-cycle stage for the entity
                                                                                                                                      Binding: ?? (extensible): Identifier for the data life-cycle stage for the entity.

                                                                                                                                        .... securityLabel 0..*CodingSecurity labels on the entity
                                                                                                                                        Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


                                                                                                                                        0..*CodingSecurity labels on the entity
                                                                                                                                        Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


                                                                                                                                          .... name ΣC0..1stringDescriptor for entityΣC0..1stringDescriptor for entity
                                                                                                                                            .... description 0..1stringDescriptive text0..1stringDescriptive text
                                                                                                                                              .... query ΣC0..1base64BinaryQuery parametersΣC0..1base64BinaryQuery parameters
                                                                                                                                                .... detail 0..*BackboneElementAdditional Information about the entity
                                                                                                                                                0..*BackboneElementAdditional Information about the entity
                                                                                                                                                  ..... id 0..1stringUnique id for inter-element referencing0..1stringUnique id for inter-element referencing
                                                                                                                                                    ..... extension 0..*ExtensionAdditional content defined by implementations
                                                                                                                                                    0..*ExtensionAdditional content defined by implementations
                                                                                                                                                      ..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                                                      ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
                                                                                                                                                        ..... type 1..1stringName of the property1..1stringName of the property
                                                                                                                                                          ..... value[x] 1..1string, base64BinaryProperty value1..1string, base64BinaryProperty value

                                                                                                                                                            doco Documentation for this format