Upload
tobit
View
82
Download
0
Tags:
Embed Size (px)
DESCRIPTION
AIXM 5 Temporality Model. xNOTAM Workshop #2 Brussels, 20-21 November 2007 Item 5. European Organisation for the Safety of Air Navigation. Contents. The Temporality Model Applying the Temporality Model Usage Examples. Summary - Time Slice types. - PowerPoint PPT Presentation
Citation preview
1
AIXM 5 Temporality Model
xNOTAM Workshop #2Brussels, 20-21 November 2007Item 5
European Organisation for the Safety of Air Navigation
2
Contents
The Temporality ModelApplying the Temporality ModelUsage Examples
3
Summary - Time Slice types
BASELINE = A kind of Time Slice that describes the feature state (the set of all feature’s properties) as result of a permanent change;
PERMDELTA = A kind of Time Slice that describes the difference in a feature state as result of a permanent change;
TEMPDELTA = A kind of Time Slice that describes the transitory changes of a feature state during a temporary event;
SNAPSHOT = A kind of Time Slice that describes the state of a feature at a time instant, as result of combining the actual BASELINE Time Slice valid at that time instant with all TEMPDELTA Time Slices applicable at that time instant.
4
An Example: Navaid frequency change
Imagine that AML Navaid undergoes an upgrade that changes its frequency from 112.0 MHz to 113.2 MHz…
5
Building the Temporality Model
Time is essential for AIFor operational reasons, distinction
between:Permanent changesTemporary status
Two levels:Life of the featureChanges in properties
6
Time varying properties
Time
P1
FeatureProperties
value 1 value 2 value 3 value 4
P2 value a value b
P3 value x
P4 value z
P5 value $ value #
7
The basic Time Slice model
Time
P1
FeatureProperties
value 1 value 2 value 3 value 4
P2 value a value b
P3 value x
P4 value z
P5 value $ value #
8
The basic Time Slice model
P1
FeatureProperties
P2
P3
P4
P5
TimeSlices: TS 1 TS 2 TS 3 TS 4 TS 5 TS 6 TS 7 TS 8
9
The basic Time Slice model
P1
FeatureProperties
P2
P3
P4
P5
TimeSlices: TS 1 TS 2 TS 3 TS 4 TS 5 TS 6 TS 7 TS 8
states
10
The basic Time Slice modelUML
11
P1
FeatureProperties
P2
P3
P4
P5
TimeSlices: TS 1 TS 2 TS 3 TS 4 TS 5 TS 6 TS 7 TS 8
temporaryvalue w
TS "temp”
event
Temporary events – digital NOTAM
12
Temporary events
Two kinds of Time SlicesBaseline = describes the
feature state (the set of all feature’s properties) as result of a permanent change;
Temporary Delta = describes the transitory overlay of a feature state during a temporary event.
AIXMFeatureidentifier : CodeUUIDType
<<feature>>
AIXMFeatureTimeSlicevalidTimeinterpretationfeatureLifetimeproperty1property2property3...
1..* +time varying properties1..*
13
The model up to this pointBASELINE & TEMPDELTA
Compliant with the requirements for Completeness - all temporal states must be
representable; Minimalism - use of minimal number of elements; Consistency - no reuse of elements with different
meaning; Context-free - meaning of (atomic) elements
independent of context; no functional dependency of (atomic) elements at the data encoding level;
But, a bit inconvenient for real applications…
14
P1
FeatureProperties
P2
P3
P4
P5
TimeSlices: TS 1 TS 2 TS 3 TS 4 TS 5 TS 6 TS 7 TS 8
temporaryvalue w
Current status of a feature
SNAPSHOT
SNAPSHOT = describes the state of a feature at a time instant, as result of combining the actual BASELINE Time Slice valid at that time instant with all TEMPDELTA Time Slices applicable at that time instant.
15
Permanent changes
Two types of applications:“Pull” Systems - provide an interface by
which a client can query the aeronautical information;
“Push” Systems - generate and transmit to the client notifications about aeronautical information changes.Need to notify a permanent changeNeed to notify “end of life”
16
P1
FeatureProperties
P2
P3
P4
P5
TimeSlices: TS 1 TS 2 TS 3 TS 4 TS 5 TS 6 TS 7 TS 8
temporaryvalue w
TS "temp”
Permanent changes
event
PERMDELTA = A kind of Time Slice that describes the difference in a feature state as result of a permanent change.
17
P1
FeatureProperties
P2
P3
P4
P5
Time
Time Slice Types
PERMDELTA 1(start of life)
PERMDELTA 2 PERMDELTA 3PERMDELTA 4
PERMDELTA 5 PERMDELTA 6PERMDELTA 7
PERMDELTA 8PERMDELTA 9
(end of life)
TEMPDELTA
temporaryvalue w
SNAPSHOT
18
Temporality – something different
999NEW ! - 2
5 %999 999
How much is the TV?
899
Let’s lower prices!
19
Corrections
Information about events that are planned to take place in futureupdate the already communicated informationmay affect “event” Time Slices - of type
PERMDELTA and TEMPDELTA.Solution
Identify Time Slice concerned by a “sequence number”
Also needed: “correctionNumber”
20
Final UML representation
AIXMFeatureidentifier : CodeUUIDType
<<feature>>
AIXMFeatureTimeSlicevalidTimeinterpretationsequenceNumbercorrectionNumberfeatureLifetimeproperty1property2property3...
1..* +time varying properties1..*
AIXMFeaturePropertyGroup<<object>>
1 +propertyGroup1
21
AIXM UML – including
temporality
22
Summary - Time Slice types
BASELINE = A kind of Time Slice that describes the feature state (the set of all feature’s properties) as result of a permanent change;
PERMDELTA = A kind of Time Slice that describes the difference in a feature state as result of a permanent change;
TEMPDELTA = A kind of Time Slice that describes the transitory changes of a feature state during a temporary event;
SNAPSHOT = A kind of Time Slice that describes the state of a feature at a time instant, as result of combining the actual BASELINE Time Slice valid at that time instant with all TEMPDELTA Time Slices applicable at that time instant.
23
Applying the model
Undetermined end of validityMultiple occurring propertiesComplex propertiesIdentifying the feature affectedCancelling a time slice
24
Baseline – undetermined end of validity
BASELINE 8
BASELINE 5
BASELINE 2
BASELINE 4
BASELINE 1
FeatureProperties
BASELINE 3
BASELINE 6
BASELINE 9
PERMDELTA 1(start of life) PERMDELTA 2 PERMDELTA 3
PERMDELTA 4PERMDELTA 5 PERMDELTA 6
PERMDELTA 7PERMDELTA 8
Time
Corrected BASELINES validity B1 Validity B2 B3 B 5 B6 B7 B8
temporary a
SNAPSHOT
TEMPDELTA
25
“Delta” for multiple occurring properties
<AirportHeliportTimeSlice> …. <serves> <City>
<name>…</name> </City> </serves> <serves> <City>
<name>…</name> </City> </serves>…
AirportHeliport
designator : CodeAirportHeliportDesignatorTypename : TextNameTypelocationIndicatorICAO : CodeICAOTypedesignatorIATA : CodeIATATypetype : CodeAirportHeliportTypeprivate : CodeYesNoTypecontrolType : CodeMilitaryOperationsTypereferencePointDescription : TextDescriptionTypefieldElevation : ValDistanceVerticalTypefieldElevationAccuracy : ValDistanceVerticalTypeverticalDatum : CodeVerticalDatumTypelocationDescription : TextDescriptionTypemagneticVariation : ValMagneticVariationTypedateMagneticVariation : DateYearTypemagneticVariationChange : ValMagneticVariationChangeTypereferenceTemperature : ValTemperatureTypealtimeterCheckLocation : TextDescriptionTypesecondaryPowerSupply : TextDescriptionTypewindDirectionIndicator : TextDescriptionTypelandingDirectionIndicator : TextDescriptionTypetransitionAltitude : ValDistanceVerticalTypetransitionLevel : ValFLTypelowestTemperature : ValTemperatureTypeabandoned : CodeYesNoType
<<feature>>
City
name : TextNameType
<<object>>
0..*0..* serves
Rule: Include all occurrences of the <serves> property in a TEMPDELTA or a PERMDELTA!
26
“Delta” for complex properties
<AirportHeliportLimitation> …. <hasApplicableTimes> <Timetable> <workingHours>…</workingHours> <isComposedOf>
<Timesheet>…</Timesheet> </isComposedOf> <isComposedOf>
<Timesheet>…</Timesheet> </isComposedOf> …. </hasApplicableTimes>…Rule: Include the whole complex property!
(“delta” applies strictly to the 1st level of properties!)
AirportHeliportUsageLimitation
codeUsageLimitation : CodeUsageLimitationType
<<object>>
Timesheet
timeReference : CodeTimeReferenceTypestartDate : DateMonthDayTypeendDate : DateMonthDayTypeday : CodeDayTypedayTil : CodeDayTypestartTime : TimeTypestartEvent : CodeTimeEventTypestartTimeRelativeEvent : ValDurationTypestartEventInterpretation : CodeTimeEventCombinationTypeendTime : TimeTypeendEvent : CodeTimeEventTypeendTimeRelativeEvent : ValDurationTypeendEventInterpretation : CodeTimeEventCombinationType
(f rom Time Management)
<<object>>
Timetable(f rom Time Management)
<<object>>0..10..1
hasAppl icableTimes
1
0..*
1
0..*isComposedOf
27
Identifying the feature affected by “delta”
<Feature> <gml:identifier>35149fb2-971f-492c-94c2-5671d4580587</gml:identifier> <timeSlice> <validTime>….</validTime> <interpretation>BASELINE</interpretation> <sequenceNumber>23</sequenceNumber> <property1>….</property1> <property2>….</property2> …. </timeSlice> <timeSlice> <validTime>….</validTime> <interpretation>TEMPDELTA</interpretation> <sequenceNumber>23</sequenceNumber> <property4>….</property4> </timeSlice></Feature>
AIXMFeatureidentifier : CodeUUIDType
<<feature>>
AIXMFeatureTimeSlicevalidTimeinterpretationsequenceNumbercorrectionNumberfeatureLifetimeproperty1property2property3...
1..* +time varying properties1..*
AIXMFeaturePropertyGroup<<object>>
1 +propertyGroup1
28
Cancelling a Time Slice
Indicate a cancellation: validTime is empty Use same sequence number Use a higher correction number
<Feature> <gml:identifier>35149fb2-971f-492c-94c2-5671d4580587</gml:identifier> <timeSlice> <gml:validTime nilReason=“inapplicable” /> <interpretation>PERMDELTA</interpretation> <sequenceNumber>23</sequenceNumber> <correctionNumber>1</correctionNumber> …. </timeSlice></Feature>
29
Other implementation considerations
The temporal model is complete. No requirement on systems to support all the types
of Time Slices E.g. some systems may only store BASELINE Time Slices
and disregard temporary changes Interacting parties should negotiate specific
temporal data exchange requirements
30
Business Rules
These are to be developed. Examples: TEMPDELTA Time Slices cannot change the start
of life and the end of life PERMDELTA shall have a TimeInstant as the
validTime
31
Usage examples
Start of lifeChange of propertiesTemporary situation (digital NOTAM)End of life…
32
Start of life
Feature creation (commissioning)
Feature - gml:identifier
33
Change of properties
Permanent change (amendment) Feature - gml:identifier
34
digital NOTAM
Temporary event
Feature - gml:identifier
Optional: include the BASELINE/SNAPSHOT
35
End of Life
Feature withdrawing (decommissioning) Feature - gml:identifier
Timeslice - validTime = timeInstant… - interpretation = PERMDELTA - sequenceNumber = 3 - endOfLife = same timeInstant…
36
Feature histories
A history can be built up by transmitting the sequence of changes:
37
xNOTAM TimeLine
39
Thank you!