MyHealtheVet use of PGHD
0.2.10-beta - ci-build United States of America flag

MyHealtheVet use of PGHD - Local Development build (v0.2.10-beta) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: VA MHV BodyWeight Observation

Official URL: https://johnmoehrke.github.io/MHV-PGHD/StructureDefinition/VA.MHV.bodyWeight Version: 0.2.10-beta
Standards status: Trial-use Maturity Level: 2 Computable Name: MHVbodyWeight

A profile on the Observation that declares how MHV will Create in PGHD for body weight measurements.

Note this is compliant with FHIR core vital-signs.

  • must be marked with MHV app tag
  • must have vital-signs category
  • must have LOINC#29463-7 code
  • must have effectiveDateTime
    • others might use effectivePeriod
  • must have valueQuantity with units from the MHV body weights (lbs and kg)
    • must be value 0.25 <= n <= 999 lbs
  • must have status at final
  • must point at the patient
  • may have a note (comment)
  • once created will or might have an id, versionId, lastUpdated, text, and identifier

Search PGHD

BodyWeight are recorded by various applications using the same LOINC codes, MHV will query PGHD asking for Observations with that code.

The following is a example, hitting the test PGHD service, about a test patient.

https://veteran.apps-staging.va.gov/smart-pgd-fhir/v2/Observation?patient.identifier=urn:uuid:2.16.840.1.113883.4.349|1012853550V207686&code=http://loinc.org|29463-7&_sort=-date&_count=100&_pretty=true&_format=json 

Breakdown of query parameters

  • patient.identifier – this takes the patient ICN, and the server will find appropriate entries for that patient
  • code - searching for Observations with the codes
  • _sort – ask that the results be sorted by date
  • _count – ask that no more than 100 be returned in each page
  • _pretty – ask that the results be pretty printed (normal json has no unnecessary whitespace)
  • _format – ask for json encoding

Results will be limited to 100 BodyWeight Observations.

The next page is retrieved using the FHIR paging mechanism.

The User Experience should NOT be aware of pages at the FHIR API level.

Profile

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

This structure is derived from observation-vitalsigns

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*observation-vitalsignsFHIR Vital Signs Profile
... meta
.... security 0..0
.... tag 1..1CodingTags applied to this resource
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
... implicitRules 0..0
... language 0..0
... contained 0..0
... extension 0..0
... modifierExtension 0..0
... basedOn 0..0
... partOf 0..0
... status 1..1coderegistered | preliminary | final | amended +
Required Pattern: final
... category 1..1CodeableConceptClassification of type of observation
... code 1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Open by type:$this
.... effective[x]:effectiveDateTime 1..1dateTimeOften just a dateTime for Vital Signs
... issued 0..0
... performer 0..0
... value[x] 0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value 0..1decimalNumerical value (with implicit precision)
.... unit 0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1AnnotationComments about the observation
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Observation.value[x].unitrequiredMHVbodyWeights
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
Required Pattern: final
... Slices for category S1..1CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... coding SΣ1..*CodingCode defined by a terminology system
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.statusrequiredPattern: final
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensiblePattern: LOINC code 29463-7("Body weight")
Observation.value[x].comparatorrequiredQuantityComparator
Observation.value[x].unitrequiredMHVbodyWeights
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source Σ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... tag Σ1..1CodingTags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".



Required Pattern: At least the following
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
... text 0..1NarrativeText summary of the resource, for human interpretation
... identifier Σ0..*IdentifierBusiness Identifier for observation
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
Required Pattern: final
... Slices for category S1..1CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding SΣ1..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
.... system ΣC0..1uriSystem that defines coded unit form
.... code Σ0..1codeCoded form of the unit
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.meta.tagexamplePattern: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
Observation.statusrequiredPattern: final
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensiblePattern: LOINC code 29463-7("Body weight")
Observation.value[x].comparatorrequiredQuantityComparator
Observation.value[x].unitrequiredMHVbodyWeights
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes

This structure is derived from observation-vitalsigns

Summary

Mandatory: 1 element (1 nested mandatory element)
Prohibited: 22 elements

Slices

This structure defines the following Slices:

  • The element Observation.effective[x] is sliced based on the value of type:$this

Maturity: 2

Differential View

This structure is derived from observation-vitalsigns

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation 0..*observation-vitalsignsFHIR Vital Signs Profile
... meta
.... security 0..0
.... tag 1..1CodingTags applied to this resource
Required Pattern: At least the following
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
... implicitRules 0..0
... language 0..0
... contained 0..0
... extension 0..0
... modifierExtension 0..0
... basedOn 0..0
... partOf 0..0
... status 1..1coderegistered | preliminary | final | amended +
Required Pattern: final
... category 1..1CodeableConceptClassification of type of observation
... code 1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
... focus 0..0
... encounter 0..0
... Slices for effective[x] 1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Open by type:$this
.... effective[x]:effectiveDateTime 1..1dateTimeOften just a dateTime for Vital Signs
... issued 0..0
... performer 0..0
... value[x] 0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value 0..1decimalNumerical value (with implicit precision)
.... unit 0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
... dataAbsentReason 0..0
... interpretation 0..0
... note 0..1AnnotationComments about the observation
... bodySite 0..0
... method 0..0
... specimen 0..0
... device 0..0
... referenceRange 0..0
... hasMember 0..0
... derivedFrom 0..0
... component 0..0

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
Observation.value[x].unitrequiredMHVbodyWeights

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
Required Pattern: final
... Slices for category S1..1CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... coding SΣ1..*CodingCode defined by a terminology system
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.


Required Pattern: At least the following
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.statusrequiredPattern: final
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensiblePattern: LOINC code 29463-7("Body weight")
Observation.value[x].comparatorrequiredQuantityComparator
Observation.value[x].unitrequiredMHVbodyWeights
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Observation C0..*observation-vitalsignsFHIR Vital Signs Profile
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... versionId Σ0..1idVersion specific identifier
.... lastUpdated Σ0..1instantWhen the resource version last changed
.... source Σ0..1uriIdentifies where the resource comes from
.... profile Σ0..*canonical(StructureDefinition)Profiles this resource claims to conform to
.... tag Σ1..1CodingTags applied to this resource
Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".



Required Pattern: At least the following
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: https://wiki.mobilehealth.va.gov/x/Onc1C
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
..... display0..1stringRepresentation defined by the system
..... userSelected0..1booleanIf this coding was chosen directly by the user
... text 0..1NarrativeText summary of the resource, for human interpretation
... identifier Σ0..*IdentifierBusiness Identifier for observation
... status ?!SΣ1..1coderegistered | preliminary | final | amended +
Binding: ObservationStatus (required)
Required Pattern: final
... Slices for category S1..1CodeableConceptClassification of type of observation
Slice: Unordered, Open by value:coding.code, value:coding.system
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


.... category:VSCat S1..1CodeableConceptClassification of type of observation
Binding: ObservationCategoryCodes (preferred): Codes for high level observation categories.


..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding SΣ1..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system SΣ1..1uriIdentity of the terminology system
Fixed Value: http://terminology.hl7.org/CodeSystem/observation-category
...... version Σ0..1stringVersion of the system - if relevant
...... code SΣ1..1codeSymbol in syntax defined by the system
Fixed Value: vital-signs
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
... code SΣ1..1CodeableConceptCoded Responses from C-CDA Vital Sign Results
Binding: VitalSigns (extensible): This identifies the vital sign result type.


Required Pattern: At least the following
.... id0..1stringUnique id for inter-element referencing
.... extension0..*ExtensionAdditional content defined by implementations
.... coding1..*CodingCode defined by a terminology system
Fixed Value: (complex)
..... id0..1stringUnique id for inter-element referencing
..... extension0..*ExtensionAdditional content defined by implementations
..... system1..1uriIdentity of the terminology system
Fixed Value: http://loinc.org
..... version0..1stringVersion of the system - if relevant
..... code1..1codeSymbol in syntax defined by the system
Fixed Value: 29463-7
..... display1..1stringRepresentation defined by the system
Fixed Value: Body weight
..... userSelected0..1booleanIf this coding was chosen directly by the user
.... text0..1stringPlain text representation of the concept
... subject SΣ1..1Reference(Patient)Who and/or what the observation is about
... Slices for effective[x] SΣC1..1dateTimeOften just a dateTime for Vital Signs
Slice: Unordered, Closed by type:$this
.... effective[x]:effectiveDateTime SΣC1..1dateTimeOften just a dateTime for Vital Signs
... value[x] SΣC0..1QuantityVital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept.
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ0..1decimalNumerical value (with implicit precision)
.... comparator ?!Σ0..1code< | <= | >= | > - how to understand the value
Binding: QuantityComparator (required): How the Quantity should be understood and represented.

.... unit Σ0..1stringUnit representation
Binding: The body weight measurement types that MHV supports (required)
.... system ΣC0..1uriSystem that defines coded unit form
.... code Σ0..1codeCoded form of the unit
... note 0..1AnnotationComments about the observation

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
Observation.meta.tagexamplePattern: 2ce6d9aa-c068-4809-8dda-662bcb16d09a
Observation.statusrequiredPattern: final
Observation.categorypreferredObservationCategoryCodes
Observation.category:VSCatpreferredObservationCategoryCodes
Observation.codeextensiblePattern: LOINC code 29463-7("Body weight")
Observation.value[x].comparatorrequiredQuantityComparator
Observation.value[x].unitrequiredMHVbodyWeights
Observation.referenceRange.typepreferredObservationReferenceRangeMeaningCodes
Observation.referenceRange.appliesToexampleObservationReferenceRangeAppliesToCodes
Observation.component.codeextensibleVitalSigns
Observation.component.value[x]requiredVitalSignsUnits
Observation.component.dataAbsentReasonextensibleDataAbsentReason
Observation.component.interpretationextensibleObservationInterpretationCodes

This structure is derived from observation-vitalsigns

Summary

Mandatory: 1 element (1 nested mandatory element)
Prohibited: 22 elements

Slices

This structure defines the following Slices:

  • The element Observation.effective[x] is sliced based on the value of type:$this

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron

Notes:

This is the notes for the VA.MHV.bodyWeight Profile

Example Mapping:

  • Positive Tests
    • create simple MHV Weight
      • weight is recorded
    • read set of weights
      • display of basic values from weights
    • read simple weight
      • weight is viewed
    • read good but extensive weight
      • weight is viewed
    • update a simple existing weight
      • weight is updated
    • update an extensive weight
      • weight is updated, all non-MHV elements are removed
      • weight saved is simple
  • Negative Tests
    • read set of weights where one is not valid
      • the not valid one will not be displayed

See the create-simple-weight feature file

Positive Tests

all compliant examples can be found load all of the body weight examples that are compliant to the MHV profile into PGHD,

  • show them in MHV, they should show fine.

Simple MHV Weight

Feature: simple MHV weight

Variations of legitimate weights

Scenario Outline: Entering weights Given Michael creates a new body weight When Michale enters a and | comment | weight | units | | infant | 15 | oz | | a bit heavy | 185 | lbs | | big | 567 | lbs | | European | 97 | kgs | Then the PGHD will hold a resource with the And the resource will be compliant with the MHV weight profile

example driven simple MHV weights

Feature: view of sample weights a set of example weights that are known to be compliant with the body weight profile, these should all be viewable in MHV

Scenario: read and view simple weight Given Example MHV weight Observation is loaded into PGHD When Michale views body weight values Then Michale sees the weight as 185 lbs with the comment of “a bit heavy”

Scenario: update and view simple weight Given Example MHV weight Observation is loaded into PGHD When Michale edits this weight changing the weight value to 200 lbs And submits the change to PGHD Then saving will fail as no update is allowed

Simple MHV Weight

Given Example MHV weight Observation is loaded into PGHD

WHEN MHV shows body weight values

THEN MHV shows the weight as 83.9146 kg with the comment of “a bit podgy”

WHEN MHV edits this values

THEN MHV shows the weight as 83.9146 kg with the comment of “a bit podgy”

WHEN the test-user changes the weight value to 200 lbs AND submits the changes

THEN MHV will succeed to save to MHV AND the Test-Bench can retrieve the resource successfully AND the Test-Bench shows the weight value has changed to 200 lbs AND no other elements from the original are changed

Stress Positive Tests

TODO write this in gherkin.

load all of the body weight examples into PGHD,

  • show them in MHV, they should show fine. Some data won’t show at all. They should not crash MHV.
  • edit them in MHV, they should show the data that MHV understands. When the edit is saved, the resulting resource in PGHD should now be conformant to the MHV body weight profile

Negative Tests

TODO write this in gherkin.

EKG should NOT show in MHV????