Skip to content

Commit

Permalink
add/redo generic pages
Browse files Browse the repository at this point in the history
  • Loading branch information
marcusfearnett-nhsdigital committed Jun 3, 2024
1 parent 85d9d0e commit 8a4bf39
Show file tree
Hide file tree
Showing 18 changed files with 205 additions and 30 deletions.
50 changes: 50 additions & 0 deletions input/images-source/add-ra-record-sequence.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
@startuml

skinparam actorStyle hollow

actor "Practitioner" as pra
actor "Patient" as pat
participant "FHIR API" as api
entity "Consent" as con
entity "Patient Flag" as flg
entity "Adjustment Flag" as adj
entity "Condition" as cod

pra -> pat : Examine patient
pra -> pat : Suggest adjustments
pra <-- pat : Provide consent\nto share information

pra -> api : Record adjustment record (transaction Bundle)

api -> con : Create/update resource
con -> con : Validate
api <-- con : return
alt Validation failed
api -> api : rollback
end

api -> flg : Create/update resource
flg -> flg : Validate
api <-- flg : return
alt Validation failed
api -> api : rollback
end

api -> adj : Create/update resource
adj -> adj : Validate
api <-- adj : return
alt Validation failed
api -> api : rollback
end

alt Condition also to be recorded
api -> cod : Create/update resource
cod -> cod : Validate
api <-- cod : return
alt Validation failed
api -> api : rollback
end
pra <-- api : OperationOutcome

@enduml

21 changes: 21 additions & 0 deletions input/images-source/add-ra-record-usecase.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
@startuml

skinparam actorStyle awesome

actor Practitioner as pra
package Consenter {
actor "Patient Advocate" as pad
actor Patient as pat
}

usecase "Consent to share information" as CON
usecase "Add Reasonable Adjustment record" as ADD

pat -- CON
pad -- CON
pra -- CON
pra -- ADD

CON <.. ADD : include

@enduml
30 changes: 30 additions & 0 deletions input/images-source/remove-ra-record-sequence.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
@startuml

skinparam actorStyle hollow

actor "Practitioner" as pra
actor "Patient" as pat
participant "FHIR API" as api
entity "Consent" as con
entity "Patient Flag" as pfg
entity "Adjustment Flag" as adj
entity "Condition" as cod

pra -> pat : Request consent
pra <-- pat : Deny/revoke consent

pra -> api : Record consent was not given
api -> con : Update resource
con -> con : Validate
api <-- con : return
alt Validation failed
api -> api : rollback
pra <-- api : OperationOutcome
else Validation passed
api -> pfg : Delete adjustment patient flag
api -> adj : Delete adjustment flag(s)
api -> cod : Delete condition flag(s)
pra <-- api : OperationOutcome
end

@enduml
21 changes: 21 additions & 0 deletions input/images-source/remove-ra-record-usecase.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
@startuml

skinparam actorStyle awesome

actor Practitioner as pra
package Consenter {
actor "Patient Advocate" as pad
actor Patient as pat
}

usecase "Consent to share information" as CON
usecase "Remove Reasonable Adjustment record" as RET

pat -- CON
pad -- CON
pra -- CON
pra -- RET
CON <.. RET : include


@enduml
39 changes: 39 additions & 0 deletions input/images-source/retrieve-ra-record-sequence.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
@startuml

skinparam actorStyle hollow

actor "Practitioner" as pra
actor "Patient" as pat
participant "FHIR API" as api
entity "Consent" as con
entity "Patient Flag" as pfg
entity "Adjustment Flag" as adj
entity "Condition" as cod

pra -> pat : Request confirmation\n of consent to\n access information

alt Consent provided
pra <-- pat : Provide consent

pra -> api : Query for records
pra <-- api : SearchSet Bundle
else Consent not provided
pra <-- pat : No consent provided
else Consent revoked
pra <-- pat : Previous consent is revoked

pra -> api : Record consent was revoked
api -> con : Update resource
con -> con : Validate
api <-- con : return
alt Validation failed
api -> api : rollback
else Consent updated
api -> pfg : Delete adjustment patient flag
api -> adj : Delete adjustment flag(s)
api -> cod : Delete condition flag(s)
end
pra <-- api : OperationOutcome
end

@enduml
21 changes: 21 additions & 0 deletions input/images-source/retrieve-ra-record-usecase.plantuml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
@startuml

skinparam actorStyle awesome

actor Practitioner as pra
package Consenter {
actor "Patient Advocate" as pad
actor Patient as pat
}

usecase "Consent to share information" as CON
usecase "Retrieve Reasonable Adjustment record" as RET

pat -- CON
pad -- CON
pra -- CON
pra -- RET

CON <.. RET : include

@enduml
13 changes: 4 additions & 9 deletions input/pagecontent/add-patient-flag-record.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,12 @@
### Overview

Patient consent must be obtained before recording any adjustment or impairment. See [Consent to Share Information](consent-to-share-information.html) for details of requirements around consent.

For high level requirements, see [Key purposes of the Reasonable Adjustment Flag](index.html#key-purposes)
For high level requirements, see [Key purposes of the Patient Flag](index.html#key-purposes)

### Usecase
After obtaining consent from a patient, a Reasonable Adjustment Record may be created. This consists of a Flag resource containing an adjustment and a Condition resource may also optionally be created to record the details of an impairment.

If a Reasonable Adjustment Record exists, a Flag resource designated as the patient flag must be created to indicate that there are reasonable adjustments recorded for the patient. There is a single instance of this type of resource per patient.

<div style="text-align: left;">

{%include add-record-usecase.svg%}
{%include add-pf-record-usecase.svg%}

</div>

Expand Down Expand Up @@ -84,15 +79,15 @@ Then a freetext note may be added to the flag
A practitioner performs an examination and determines that a condition and/or an adjustment should be recorded. If the patient does not consent, no details are recorded. If the patient consents, then the adjustment is recorded, and optionally the condition as well.

<div style="text-align: left;">
<img style="max-width: 70%" alt="Add record workflow BPMN diagram." src="add-record-workflow.svg"/>
<img style="max-width: 70%" alt="Add Patient Flag record workflow BPMN diagram." src="add-pf-record-workflow.svg"/>
</div>

### System Interactions

The practioner decides to record a condition with the patients consent. This could be done with individual calls to the required endpoints, or can be done in a single transaction Bundle. A transaction Bundle can help with data integrity requirements and also help to reduce required http calls.

<div style="text-align: left;">
{%include add-record-sequence.svg%}
{%include add-pf-record-sequence.svg%}
</div>

### Examples
Expand Down
12 changes: 4 additions & 8 deletions input/pagecontent/remove-patient-flag-record.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,13 @@
### Overview

A patient may deny or revoke their consent to share adjustment or impairment information at any point. See [Consent to Share Information](consent-to-share-information.html) for details of requirements around consent.

For high level requirements, see [Key purposes of the Reasonable Adjustment Flag](index.html#key-purposes)
For high level requirements, see [Key purposes of the Patient Flag](index.html#key-purposes)


#### UseCase

If a patient denys consent, then this must be recorded and all adjustment records must be removed.

<div style="text-align: left;">

{%include remove-record-usecase.svg%}
{%include remove-pf-record-usecase.svg%}

</div>

Expand All @@ -34,7 +30,7 @@ A patient may revoke consent to share information about Reasonable Adjustment re
</p>

<div>
<img style="max-width: 70%" alt="Remove record workflow BPMN diagram." src="remove-record-workflow.svg"/>
<img style="max-width: 70%" alt="Remove Patient Flag record workflow BPMN diagram." src="remove-pf-record-workflow.svg"/>
</div>

### System Interactions
Expand All @@ -43,7 +39,7 @@ In the following sequence diagram, a patient revokes consent. The Consent resou

<div style="text-align: left;">

{%include remove-record-sequence.svg%}
{%include remove-pf-record-sequence.svg%}

</div>

Expand Down
6 changes: 3 additions & 3 deletions input/pagecontent/remove-reasonable-adjustment-record.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ If a patient denys consent, then this must be recorded and all adjustment record

<div style="text-align: left;">

{%include remove-record-usecase.svg%}
{%include remove-ra-record-usecase.svg%}

</div>

Expand All @@ -34,7 +34,7 @@ A patient may revoke consent to share information about Reasonable Adjustment re
</p>

<div>
<img style="max-width: 70%" alt="Remove record workflow BPMN diagram." src="remove-record-workflow.svg"/>
<img style="max-width: 70%" alt="Remove Reasonable Adjustment record workflow BPMN diagram." src="remove-ra-record-workflow.svg"/>
</div>

### System Interactions
Expand All @@ -43,7 +43,7 @@ In the following sequence diagram, a patient revokes consent. The Consent resou

<div style="text-align: left;">

{%include remove-record-sequence.svg%}
{%include remove-ra-record-sequence.svg%}

</div>

Expand Down
16 changes: 9 additions & 7 deletions input/pagecontent/retrieve-patient-flag-record.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
### Overview

Patient consent must be obtained before retrieving any adjustment or impairment. See [Consent to Share Information](consent-to-share-information.html) for details of requirements around consent.

For high level requirements, see [Key purposes of the Reasonable Adjustment Flag](index.html#key-purposes)
For high level requirements, see [Key purposes of the Patient Flag](index.html#key-purposes)

### Usecase

After obtaining consent from a patient, a Reasonable Adjustment Record may be retrieved if it exists. It will be possible to determine that a adjustment flags exist by searching for a [Patient Flag](StructureDefinition-PatientFlag.html) with the code [NRAF](CodeSystem-PatientFlagCategory.html#PatientFlagCategory-NRAF), or [Programme Flags](StructureDefinition-ProgrammeFlag.html) with a category of [NRAF](CodeSystem-PatientFlagCategory.html#PatientFlagCategory-NRAF).
A Patient Flag Record may be retrieved if it exists. It will be possible to determine that a adjustment flags exist by searching for a [Patient Flag](StructureDefinition-PatientFlag.html) with:

- [Programme Flags](StructureDefinition-ProgrammeFlag.html)
- [Programme Flags](StructureDefinition-ProgrammeFlag.html) with a category of [NRAF](CodeSystem-PatientFlagCategory.html#PatientFlagCategory-NRAF)
- or the code [NRAF](CodeSystem-PatientFlagCategory.html#PatientFlagCategory-NRAF),

<div style="text-align: left;">

{%include retrieve-record-usecase.svg%}
{%include retrieve-pf-record-usecase.svg%}

</div>

Expand Down Expand Up @@ -38,14 +40,14 @@ Then all other resources associated with reasonable adjustment records will be r
A practitioner confirms that a patient consents to share information about Reasonable Adjustment records. A patient may revoke consent to share information about Reasonable Adjustment records and if they do, all records must be removed.

<div>
<img style="max-width: 70%" alt="Retrieve record workflow BPMN diagram." src="retrieve-record-workflow.svg"/>
<img style="max-width: 70%" alt="Retrieve Patient Flag record workflow BPMN diagram." src="retrieve-pf-record-workflow.svg"/>
</div>

### System Interaction

<div style="text-align: left;">

{%include retrieve-record-sequence.svg%}
{%include retrieve-pf-record-sequence.svg%}

</div>

Expand Down
6 changes: 3 additions & 3 deletions input/pagecontent/retrieve-reasonable-adjustment-record.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ After obtaining consent from a patient, a Reasonable Adjustment Record may be re

<div style="text-align: left;">

{%include retrieve-record-usecase.svg%}
{%include retrieve-ra-record-usecase.svg%}

</div>

Expand Down Expand Up @@ -38,14 +38,14 @@ Then all other resources associated with reasonable adjustment records will be r
A practitioner confirms that a patient consents to share information about Reasonable Adjustment records. A patient may revoke consent to share information about Reasonable Adjustment records and if they do, all records must be removed.

<div>
<img style="max-width: 70%" alt="Retrieve record workflow BPMN diagram." src="retrieve-record-workflow.svg"/>
<img style="max-width: 70%" alt="Retrieve Reasonable Adjustment record workflow BPMN diagram." src="retrieve-ra-record-workflow.svg"/>
</div>

### System Interaction

<div style="text-align: left;">

{%include retrieve-record-sequence.svg%}
{%include retrieve-ra-record-sequence.svg%}

</div>

Expand Down

0 comments on commit 8a4bf39

Please sign in to comment.