Measurable Properties Name Blood pressure Weight Length Age Shoe size Temperature IQ EQ PERSON A person may have a large number of properties that are quantitative. Representing all these properties in a schema can make it exceedingly large.
Measurement Pattern Phenomenon type MeasurementObjectQuantity 1 * * * 11 The Measurement Pattern enables a compact representation of quantitative properties. A measurement measures the quantity of a phenomenon type for a certain object.
Measurement Pattern :Phenomenon type name = temperature :Measurement date = :Object name = ‘Peter’ :Quantity unit = Celsius value = 37.5 This instance diagram states that Peter has the temperature 37.5 degrees Celsius
Category Observation Some properties are not quantitative, but rather classify objects into different groups, for example the gender or nationality of a person. Phenomenon type Category observation ObjectCategory 1 * * * 11
Category Observation :Phenomenon type name = gender :Category observation date = :Object name = ‘Peter’ :Category value = male This instance diagram states that Peter has the gender male
Observation Pattern Phenomenon type ObservationObject 1 * * * 1 1 Category observation Measurement CategoryQuantity 1 * Measurements and category obser- vations can be combined into one pattern.
Employment Name Age Address Employer Date of employment PERSON We can model the fact that a person is employed at some organisation by including a number of attributes in a type PERSON. However, a person may be employed at several different organisations. In order to handle such a situation, the model has to be expanded.
Employment Name Address ORGANISATION Name Age Address PERSON Salary EMPLOYMENT From To TIME PERIOD employee employer * **
Employment Name Address ORGANISATION Name Age Address PERSON Salary EMPLOYMENT From To TIME PERIOD employee employer * ** This model expresses that there exists a responsibility between two parties, the employer and the employee. Similar responsibilities may exist in many other contexts.
Accountability Pattern PERSON ACCOUNTABILITY ORGANISATION From To TIME PERIOD Name ACCOUNTABILITY TYPE Name Address PARTY responsiblecommissioner * * **
Accountability Pattern ACCOUNTABILITY ACCOUNTABILITY TYPE PARTY The Accountability Pattern can be used to model situations where there exists a relationship of responsibility between two parties: - Employment - Order - Contract - Membership - Offering ACCOUNTABILITY TYPE specifies different kinds of accountability. In an employment context, it could contain: permanent employment, project employment, time limited employment, etc.
Accountability :Accountability type name = permanent :Accountability :Time period from = to = :Person name = ‘Peter’ :Organisation name = ‘IBM’ responsible commissioner This instance diagram states that Peter is employed by IBM
Action Pattern PROPOSED ACTION IMPLEMENTED ACTION TIME POINTACTIONPARTYLOCATION An action is carried out by a party at a certain point in time at a certain location. An action may be only proposed or it may be implemented, i.e. carried out.
Action Pattern :Person name = ‘Peter’ :Proposed action name = surgery :Implemented action name = ‘Peter’ :Location room = C604 :Time point date = time = 1.00 a.m. :Location room = C608 :Time point date = time = 2.00 a.m.
Booking From To BOOKING RESOURCE 1 * for Using this simple booking schema, we can express that different resources are booked for different time intervals. In some situations, we do not want to book a specific resource, but rather a general resource type. For example, we only state that we want to book an anaesthesia nurse, it does not matter who. In other cases, we really want to book a specific nurse, say Ed Wallen.
Assets and other Resources Some resources are consumed in an activity, e.g. in a surgery blood plasma is consumed. Other resources are not consumed in an activity but can be reused. For example, a nurse is not consumed in a surgery.
Resource Allocation Pattern RESOURCE TYPE From To TEMPORAL RESOURCE SPECIFIC RAGENERAL RA Quantity RESOURCE ALLOCATION ASSET TYPEASSET * * * *
Resource Allocation :General RA quantity 3 :Resource Type name = Blood plasma :Asset Type name = Nurse :Asset name = ‘Peter’ :Specific RA :Temporal Resource from = 0101, 04 to = 0101, 06 Three bags of blood plasma are allocated - we do not care which ones. Peter is allocated for two hours.
Exercise The Resource Allocation Pattern has a number of limitations. Identify these and construct an extension of the pattern that overcomes these limitations. Consider whether it would be worthwhile to have several variants of the pattern to cover different situations.
Action and Resource Allocation PROPOSED ACTION IMPLEMENTED ACTION ACTION RESOURCE ALLOCATION books uses A proposed action books resources, while an implemented action uses resources.
Plans PLAN PROPOSED ACTION * * contains The simplest way to model a plan is to say that it consists of a number of proposed actions. Example: Plan for dinner party consists of buying food, cooking, and making the table. One limitation of this model is that we cannot express dependencies between proposed actions, i.e. that certain actions have to be performed before others.
Plan Pattern PLAN ACTION REFERENCE * 1 contains PROPOSED ACTION 1 * precedes By adding a type ACTION REFERENCE, we can express precedence relationships among proposed actions in a plan. We can also add descriptions of the role of an action within a plan, e.g. whether it is optional or not.
Subtypes VEHICLEBIKETRUCKBOATCAR One way to show different categories is to introduce a number of subtypes. However, such a solution may result in a very large schema.
Powertypes VEHICLEVEHICLE TYPE 1 * VEHICLE TYPE would have instances such as: Car, Truck, Boat, Bike, MC, Aeroplane,... VEHICLE would have instances such as: abc123 (which is a Car), vv22 (which is a Boat),...