HealthOntology
type: Ontology
imports: DataRepresentation.owl
imports: Disease.owl
imports: Location.owl
imports: Profile.owl
imports: ServiceBus.owl
imports: HealthMeasurement.owl
comment: The ontology defining the health service, based on the treatment concept.

HeartRateRequirement
type: Class
subclass of: HeartRateRequirement
subclass of: Restriction
  on property: maxValueAllowed
  all values from: HeartRate
subclass of: Restriction
  on property: minValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: maxValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: minValueAllowed
  all values from: HeartRate
comment: This class describes a heart rate measurement requirement during the activity.

Blood Preasure Measurement
type: Class
subclass of: TakeMeasurementActivity
subclass of: Restriction
  on property: hasPerformedSession
  all values from: Restriction
    on property: hasMeasurement
    all values from: BloodPressure
subclass of: Restriction
  on property: hasMeasurementRequirements
  all values from: BloodPressureMeasurement

BloodPressureMeasurement
type: Class
subclass of: MeasurementRequirements
subclass of: Restriction
  on property: minValueAllowed
  all values from: BloodPressure
subclass of: Restriction
  on property: minValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: maxValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: maxValueAllowed
  all values from: BloodPressure
comment: This class describes a blood pressure measurement requirement.

Diet
type: Class
subclass of: HealthyHabitsAdoption

HealthDisplayTreatmentService
type: Class
subclass of: Service
subclass of: Restriction
  on property: targetUser
  max cardinality: 1
subclass of: Restriction
  on property: treatmentToBeDisplayed
  max cardinality: 1
subclass of: Restriction
  on property: treatmentToBeDisplayed
  all values from: Treatment
subclass of: Restriction
  on property: targetUser
  all values from: AssistedPerson
comment: Services to display specific treatments.

HealthProfile
type: Class
subclass of: SubProfile
subclass of: Restriction
  on property: diseases
  all values from: Disease
subclass of: Restriction
  on property: lastMeasurements
  all values from: HealthMeasurement
subclass of: Restriction
  on property: birthDate
  all values from: dateTime
subclass of: Restriction
  on property: gender
  cardinality: 1
subclass of: Restriction
  on property: isAssignedToAP
  cardinality: 1
subclass of: Restriction
  on property: birthDate
  cardinality: 1
subclass of: Restriction
  on property: isAssignedToAP
  all values from: AssistedPerson
subclass of: Restriction
  on property: gender
  all values from: Gender
subclass of: Restriction
  on property: hasTreatment
  all values from: Treatment
comment: Health profile listing all treatments for an Assisted Person

HealthProfileManagementService
type: Class
subclass of: HealthService
comment: Services to manage Health Profile.

HealthService
type: Class
subclass of: Service
subclass of: Restriction
  on property: assistedPerson
  all values from: AssistedPerson
subclass of: Restriction
  on property: healthProfile
  all values from: HealthProfile
subclass of: Restriction
  on property: healthProfile
  max cardinality: 1
subclass of: Restriction
  on property: assistedPerson
  max cardinality: 1
comment: Description of the health service.

HealthyHabitsAdoption
type: Class
subclass of: Treatment
comment: This concept describes all the activities that can be considered as healthy habits

Pulse Measurement
type: Class
subclass of: TakeMeasurementActivity
subclass of: Restriction
  on property: hasPerformedSession
  all values from: Restriction
    on property: hasMeasurement
    all values from: HeartRate
subclass of: Restriction
  on property: hasMeasurementRequirements
  all values from: HeartRateRequirement

HeartRateRequirement
type: Class
subclass of: MeasurementRequirements
comment: This class describes a heart rate measurement requirement.

MeasurementRequirements
type: Class
subclass of: ManagedIndividual
subclass of: PrivateResource
subclass of: Restriction
  on property: minValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: maxValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: minValueAllowed
  all values from: HealthMeasurement
subclass of: Restriction
  on property: maxValueAllowed
  all values from: HealthMeasurement
comment: This concept involves all the measurement types that are required in a treatment.

MotivationalStatusType
type: Class
equivalent class: Class
  one of: contemplation
  one of: precontemplation
  one of: undefined
  one of: action
  one of: maintenance
comment: This class defines the types of motivational status of the treatment: precontemplation, contemplation, action or maintenance.

PerformedSession
type: Class
subclass of: PrivateResource
subclass of: PerformedSession
subclass of: Restriction
  on property: hasMeasurement
  cardinality: 1
subclass of: Restriction
  on property: hasMeasurement
  all values from: HealthMeasurement
comment: This class describes a session with a health measurement involved that has been performed.

PerformedSession
type: Class
subclass of: ManagedIndividual
subclass of: PrivateResource
comment: This class describes a session that has been performed.

MeasuredPhysicalActivity
type: Class
subclass of: HealthyHabitsAdoption
subclass of: Restriction
  on property: hasAssociatedMeasurement
  cardinality: 1
subclass of: Restriction
  on property: hasAssociatedMeasurement
  all values from: TakeMeasurementActivity
comment: This concept describes a physical activity.

ReposeHeartRateRequirement
type: Class
subclass of: HeartRateRequirement
subclass of: Restriction
  on property: minValueAllowed
  all values from: HeartRate
subclass of: Restriction
  on property: maxValueAllowed
  all values from: HeartRate
subclass of: Restriction
  on property: maxValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: minValueAllowed
  max cardinality: 1
comment: This class describes a reposed heart rate measurement requirement.

PlannedSession
type: Class
subclass of: ManagedIndividual
subclass of: PrivateResource
subclass of: Restriction
  on property: startTime
  all values from: dateTime
subclass of: Restriction
  on property: duration
  all values from: duration
subclass of: Restriction
  on property: startTime
  cardinality: 1
subclass of: Restriction
  on property: details
  cardinality: 1
subclass of: Restriction
  on property: performed
  all values from: PerformedSession
subclass of: Restriction
  on property: date
  all values from: dateTime
subclass of: Restriction
  on property: details
  all values from: string
subclass of: Restriction
  on property: duration
  cardinality: 1
subclass of: Restriction
  on property: performed
  max cardinality: 1
subclass of: Restriction
  on property: date
  cardinality: 1
comment: A planned session is a session that has been schedule so as to perform an assigned activity.

PerformedSessionManagementService
type: Class
subclass of: HealthService
subclass of: Restriction
  on property: sessionsFrom
  max cardinality: 1
subclass of: Restriction
  on property: sessionsTo
  all values from: long
subclass of: Restriction
  on property: sessionsTo
  max cardinality: 1
subclass of: Restriction
  on property: managesSession
  all values from: PlannedSession
subclass of: Restriction
  on property: sessionsTreatment
  max cardinality: 1
subclass of: Restriction
  on property: sessionsFrom
  all values from: long
subclass of: Restriction
  on property: sessionsTreatment
  all values from: Treatment
comment: Description of the performed session management service.

StatusType
type: Class
equivalent class: Class
  one of: prolonged
  one of: cancelled
  one of: planned
  one of: finished
  one of: actived
comment: This class defines the types of possible status of the treatment: planned, actived, finished or cancelled.

TakeMeasurementActivity
type: Class
subclass of: Treatment
subclass of: Restriction
  on property: hasMeasurementRequirements
  all values from: MeasurementRequirements
subclass of: Restriction
  on property: hasMeasurementRequirements
  max cardinality: 1
subclass of: Restriction
  on property: hasPerformedSession
  all values from: PerformedSession
comment: This is a treatment that consists of taking measurements.

Treatment
type: Class
subclass of: ManagedIndividual
subclass of: PrivateResource
subclass of: Restriction
  on property: hasCaregiver
  all values from: Caregiver
subclass of: Restriction
  on property: isAssociatedToADisease
  cardinality: 1
subclass of: Restriction
  on property: hasPerformedSession
  all values from: PerformedSession
subclass of: Restriction
  on property: description
  all values from: string
subclass of: Restriction
  on property: motivationalStatus
  cardinality: 1
subclass of: Restriction
  on property: isAssociatedToADisease
  all values from: string
subclass of: Restriction
  on property: status
  all values from: StatusType
subclass of: Restriction
  on property: name
  cardinality: 1
subclass of: Restriction
  on property: hasTreatmentPlanning
  cardinality: 1
subclass of: Restriction
  on property: hasTreatmentPlanning
  all values from: TreatmentPlanning
subclass of: Restriction
  on property: description
  cardinality: 1
subclass of: Restriction
  on property: hasCaregiver
  cardinality: 1
subclass of: Restriction
  on property: completeness
  all values from: float
subclass of: Restriction
  on property: status
  cardinality: 1
subclass of: Restriction
  on property: completeness
  cardinality: 1
subclass of: Restriction
  on property: motivationalStatus
  all values from: MotivationalStatusType
subclass of: Restriction
  on property: name
  all values from: string
comment: This class describes the concept of treatment, that is the set of activities that an assisted person is suggested to do.

TreatmentManagementService
type: Class
subclass of: HealthService
subclass of: Restriction
  on property: listsTreatmentsTimestampTo
  all values from: long
subclass of: Restriction
  on property: managesTreatments
  all values from: Treatment
subclass of: Restriction
  on property: listsTreatmentsTimestampTo
  max cardinality: 1
subclass of: Restriction
  on property: listsTreatmentsTimestampFrom
  all values from: long
subclass of: Restriction
  on property: listsTreatmentsTimestampFrom
  max cardinality: 1
comment: Description of the treatment management service.

TreatmentPlanning
type: Class
subclass of: ManagedIndividual
subclass of: PrivateResource
subclass of: Restriction
  on property: recurrence
  all values from: string
subclass of: Restriction
  on property: startDate
  cardinality: 1
subclass of: Restriction
  on property: hasSessions
  all values from: PlannedSession
subclass of: Restriction
  on property: endDate
  max cardinality: 1
subclass of: Restriction
  on property: description
  max cardinality: 1
subclass of: Restriction
  on property: endDate
  all values from: dateTime
subclass of: Restriction
  on property: recurrence
  max cardinality: 1
subclass of: Restriction
  on property: startDate
  all values from: dateTime
subclass of: Restriction
  on property: description
  all values from: string
comment: This class describes the planning of the sessions that composes the treatment.

Walking
type: Class
subclass of: HealthyHabitsAdoption
comment: This concept describes all the activities that can be considered as healthy habits

WeightMeasurement
type: Class
subclass of: MeasurementRequirements
subclass of: Restriction
  on property: maxValueAllowed
  all values from: PersonWeight
subclass of: Restriction
  on property: maxValueAllowed
  max cardinality: 1
subclass of: Restriction
  on property: minValueAllowed
  all values from: PersonWeight
subclass of: Restriction
  on property: minValueAllowed
  max cardinality: 1
comment: This class describes a weight measurement requirement.

Weight Measurement
type: Class
subclass of: TakeMeasurementActivity
subclass of: Restriction
  on property: hasPerformedSession
  all values from: Restriction
    on property: hasMeasurement
    all values from: PersonWeight
subclass of: Restriction
  on property: hasMeasurementRequirements
  all values from: WeightMeasurement