Financial Dates Ontology
Copyright (c) 2014 EDM Council, Inc.
Copyright (c) 2014 Object Management Group, Inc.
FinancialDates.rdf
This ontology provides definitions of date and schedule concepts for use in other FIBO ontologies.
This ontology was added to Foundations in advance of the December 2014 Long Beach meeting in support of the SEC specification. It is also needed to provide temporal relationships for Ownership and Control.
These three ontologies are designed for use together:
* FinancialDates -- financial Dates and Schedules
* BusinessDates -- business day adjustments
* Occurrences -- occurrences (events) and kinds of occurrences
They are modularized this way to minimize the ontological committments that are imposed upon ontologies that rely upon them. Ontologies can import FinancialDates alone, or FinancialDates + BusinessDates, or FinancialDates + Occurrences, or all three together.
fibo-fnd-dt-fd
http://www.omg.org/spec/EDMC-FIBO/AboutTheEDMC-FIBOFamily/
http://www.omg.org/spec/EDMC-FIBO/FND/AboutFND/
http://www.omg.org/spec/EDMC-FIBO/FND/DatesAndTimes/AboutDatesAndTimes/
http://www.omg.org/spec/EDMC-FIBO/FND/Relations/Relations/
http://www.omg.org/spec/EDMC-FIBO/FND/Utilities/AnnotationVocabulary/
http://www.omg.org/spec/ODM/
http://www.omg.org/techprocess/ab/SpecificationMetadata/MITLicense
http://www.w3.org/standards/techs/owl#w3c_all
date value
A literal (explicit) date captured in the format specified for xsd:date (i.e., ISO 8601 format), WITHOUT a timezone field. The semantics are identical to those of xsd:date.
For consistency with FPML (reference FPML Coding Schemes 30 June 2014, Version 1.56, section 2.1.1), the year MUST be specified as 4 digits, and the month and day MUST be specified as 2 digits with a leading zero if needed. Timezones should NOT be specified.
This datatype substitutes for xsd:date, which OWL 2 does not support.
2002-10-10 means October 10, 2002
duration value
A literal (explicit) duration (amount of time) captured in the format specified for xsd:duration (i.e., ISO 8601 format). The semantics are identical to those of xsd:duration.
Negative durations are used to indicate RelativeDates that are before (rather than after) some other Date.
This datatype substitutes for xsd:duration, which OWL2 does not support.
P3D means 3 days
P1Y means 1 year
-P3D means negative 3 days duration. This is used with OffsetDates to specify 3 days before (prior) to some other Date.
P2M means 2 months
PT6S means 6 seconds
PT5M means 5 minutes
PT4H means 4 hours
P1Y2M3DT4H5M6S means 1 year, 2 months, 3 days, 4 hours, 5 minutes, 6 seconds
has calendar period
CalendarPeriod identifies a calendar period used in computing a CalendarSpecifiedDate, such as a calendar week, calendar month, calendar quarter, or calendar year.
has date
has date period
has date time
has date time stamp
has duration
This duration may be omitted or unknown (hasSettledDuration missing) if either the start or end Date of the DatePeriod is a CalculatedDate or a DefinedDate.
the duration of a DatePeriod
has end date
the ending date of some Schedule or DatePeriod
has explicit date
has final stub
a final stub identifies any special period at the end of a RegularSchedule
has initial stub
An initial stub identifies any special period at the start of a RegularSchedule.
has overall period
the DatePeriod that includes all the Dates of a Schedule, including any ScheduleStubs
has recurrence interval
has recurrence start date
the starting Date of the first recurrence of a RegularSchedule
has start date
the starting Date of something
has stub
has time direction
A TimeDirection indicates whether a CalendarSpecifiedDate is figured from the beginning or end of a calendar period.
is relative to
A RelativeDate or RelativeDatePeriod is defined relative to this Date.
has count
The count of the number of entries in a RegularSchedule.
has date specification
A rule that specifies how a SpecifiedDate is computed.
The rule is modeled as a simple String because OWL2 provides no way to model the semantics of such a rule.
has date time stamp value
has date time value
has date value
'hasDatevValue' refers to actual date associated with any kind of Date, if the actual date has been established
has duration value
The amount of a Duration.
has ordinal number
An ordinal number meaning 1st, 2nd, 3rd, etc.
Negative ordinal numbers mean 1st before, 2nd before, etc.
has relative duration
A relative duration may be negative.
The Duration between two Dates.
ad hoc schedule
An AdHocSchedule is a Schedule that consists of (comprises) AdHocScheduleEntries, each of which specifies a Date. Other ontologies can extend AdHocScheduleEntry to relate the Date to something.
Other ontologies can extend AdHocSchedule and/or AdHocScheduleEntry as needed.
In particular, the Occurrences ontology extends AdHocScheduleEntry to associate an OccurrenceKind with each entry. The intended meaning is that an Occurrence of the OccurrenceKind happens on the corresponding Date.
ad hoc schedule entry
1
An AdHocScheduleEntry identifies one Date among multiple AdHocScheduleEntries that jointly make up an AdHocSchedule.
Other ontologies can extend AdHocScheduleEntry as needed.
In particular, the Occurrences ontology extends AdHocScheduleEntry to 'comprise' an OccurrenceKind. The meaning is that an ad hoc schedule entry comprises a date and an event which is scheduled to occur on that date; in other words Occurrence of the OccurrenceKind should happen on the Date of the OccurrenceKind.
The Date of an AdHocScheduleEntry can be an ExplicitDate or any kind of CalculatedDate, such as:
* An OccurrenceBasedDate -- a Date that itself is defined by an Occurrence (see the Occurrences ontology)
* A RelativeDate - a Date relative to another Date, such as T+3
* A SpecifiedDate - a Date that is defined by an arbitrary rule
calculated date
A CalculatedDate is a Date that is or will be calculated in some way.
The 'hasDateValue' property of a CalculatedDate is not set until the Date is calculated. Since the calculation may depend upon future events that may or may not ever happen, the 'hasDateValue' property may never be set.
The BusinessDates ontology extends 'CalculatedDate' with an optional BusinessDayAdjustment that specifies what should happen if a CalculatedDate falls on a weekend or a holiday.
The Occurrences ontology adds another kind of CalculatedDate called an 'OccurrenceBasedDate', the Date of an Occurrence of an OccurrenceKind.
calendar period
CalendarPeriod is an enumeration that indicates whether a CalendarSpecifiedDate is figured with respect to a calendar week, a calendar month, a calendar quarter, or a calendar year.
The terms "calendar xxx" are intended to reinforce that these are periods on a calendar, not durations.
For example, a calendar year always starts on a January 1 and ends on a December 31. The term "calendar year" does not mean the same thing as a duration (an amount of time) of 1 year, nor can a calendar year start on any arbitrary day of a year. For example, a calendar year never starts on September 1.
Similar points apply to other kinds of calendar periods, such as "calendar week", "calendar month", and "calendar quarter".
calendar specified interval
1
1
1
A CalendarSpecifiedInterval is a RecurrenceInterval that it is specified as the nth day of some CalendarPeriod (such as a calendar month), and a TimeDirection (forward from the beginning of the month, or backwards from the end).
The nth day is an ordinal number, not a cardinal number. '1' means the first day of the calendar period.
The 15th day of each calendar month.
The last day of each quarter, specified as RelativeDay 1, and TimeDirection set to FromEnd.
date
1
A Date identifies a calendar day on some calendar.
A Date may or may not have a value, and may be explicit or calculated.
A Date that has a value is one that is either explicitly set as a literal when it is created, or is some form of CalculatedDate. In an instance of Date, the existence of the 'hasDateValue' property both indicates that the Date is known, and gives the value of the Date.
A Date that does not have a value is one that is some form of CalculatedDate, in which the actual date has not (yet) been established.
date period
1
1
1
A DatePeriod is unknown if either the startDate or the endDate has no value. If a DatePeriod is unknown, then the periodDuration should either be omitted or unknown (have no value).
A time span over one or more calendar days, defined by at least two of three properties:
1. startDate
2. endDate
3. periodDuration
If more than one of these properties is missing, the DatePeriod is invalid.
date time
1
"hasDateTimeValue" is omitted if the DateTime is not (yet) known.
The combination of a Date and a time, without a time zone.
Use DateTime for the combination of a Date and a time, without a time zone.
Use DateTimeStamp for the combination of a Date and a time and a time zone.
date time stamp
1
"hasDateTimeStampValue" is omitted if the DateTimeStamp is not (yet) established.
A DateTimeStamp combines a Date, a time, and a time zone.
Use DateTimeStamp when the time stamp includes a time zone field.
Use DateTime for the combination of a Date and a time, without a time zone.
time stamp
date time stamp
duration
1
An amount of time.
The "hasDurationValue" property is absent if the duration is not (yet) known.
explicit date
1
An ExplicitDate is a Date in which the "hasDateValue" property is required.
explicit date period
1
1
1
A DatePeriod where the start date, end date, and duration are all explicit.
As with DatePeriod, any one of {start date, end date, duration} may be omitted because the missing property can be inferred from the other two
explicit duration
1
A Duration in which the 'hasSettledDuration' property is always set. This class is used when a Duration is guaranteed to be known when it is created.
explicit recurrence interval
1
An ExplicitRecurrenceInterval defines a RecurrenceInterval via an ExplicitDuration.
recurrence interval
A RecurrenceInterval defines the time interval between each element of a RegularSchedule.
The BusinessDates ontology adds a 'BusinessRecurrenceInterval' subclass of RecurrenceInterval that specifies various intervals via an enumeration.
recurrence interval
frequency
regular schedule
1
1
1
1
1
A 30 year mortgage is payable monthly on the 10th of the month, starting July 2015. The mortgage is issued on June 15, 2015 so the first payment is for the period June 15-June 30, and the last payment is for June 1-14 2045.
The payment schedule is a RegularSchedule with these properties:
* comprises: regular payment OccurrenceKind (with payment details) (see the 'comprises' property of the Occurrences ontology)
* hasInitialStub: June 15-30, 2015 for initial payment
* hasFinalStub: June 1-14, 2045 for final payment
* hasCount: 358
* hasOverallPeriod starting Date: June 15, 2015 with a duration of 30 years
* hasRecurrenceInterval: specifies 10th day of each calendar month
* hasRecurrenceStartDate: July 1, 2015
A RegularSchedule is a Schedule defined as a set of Dates that start on a recurrence start date and repeat after each recurrence interval. The size of this set is defined by a count.
The "initial ScheduleStub" associated with a RegularSchedule identifies any special treatment applied before the recurrence start date. Simiilarly, a "final ScheduleStub" identifies any special handling at the end of the recurrences. For example, a mortgage loan that is due each calendar month may have an initial payment due before the first calendar month, or a final payment due after the last monthly payment.
A RegularSchedule is a Schedule that recurs regularly.
A corporate bond pays interest for 10 years starting on the first day of 2015. Interest payments are due 15 days after the expiration of each 6 month period: on July 15 and January 16.
The payment schedule is a RegularSchedule, wiith these properties:
* comprises: identifies the interest payment details
* overall DatePeriod starting date is "2015-01-01", ending date is '2025-01-15', and duration is 'P10Y15D"
* hasCount is 20 (2 payments per year for 10 years)
* hasRecurrenceInterval is "P6M"
* hasRecurrenceStartDate is "2015-01-15"
Other ontologies can extend RegularSchedule as needed.
In particular, the Occurrences ontology extends RegularSchedule to 'comprise' an 'OccurrenceKind'. The intended meaning is that a regular schedule comprises a number of scheduled dates and an event which is scheduled to occur on each of those dates – in other words an Occurrence of the OccurrenceKind should happen on each Date defined by the RegularSchedule.
The BusinessDates ontology extends 'RegularSchedule' with an optional BusinessDayAdjustment that specifies what should happen if a scheduled date falls on a weekend or a holiday.
The recurrence start date can be an ExplicitDate or any kind of CalculatedDate. Hence, the starting date could be relative to another Date (e.g. T+3) or triggered by the Occurrence of an OccurrenceKind, etc.
The recurrence start date can also be relative to the starting Date of the overall DatePeriod of the Schedule.
relative date
1
1
A RelativeDate is a CalculatedDate that is some Duration before or after another Date. When the 'hasRelativeDuration' property is negative, the RelativeDate is before the 'isRelativeTo' Date; otherwise the RelativeDate is after the 'isRelativeTo' Date.
A settlement date, defined as T+3: three days after the trade date. The "hasRelativeDayNumber" property is set to "3".
schedule
1
A Schedule is a table of Dates.
The overall period covers the entire DatePeriod of the Schedule, from the earliest Date to the final Date of the Schedule
schedule stub
1
A 30 year mortgage calls for monthly payments on the first day of each month, according to a RegularSchedule. If the mortgage does not start on the first day of a calendar month, then an initial ScheduleStub specifies the payment due for the DatePeriod up to the first day of the next calendar month. Similarly, a final ScheduleStub specifies the last payment due for the DatePeriod after the end of the last full calendar month.
A ScheduleStub identifies a DatePeriod before the start of the recurring part of a Schedule or after the end of the recurring part, and an associated OccurrenceKind.
The Occurrences ontology extends ScheduleStub to 'comprise' an OccurrenceKind. The meaning is that a schedule stub comprises a date period and an event which is scheduled to occur during that date period; in other words that an Occurrence of the OccurrenceKind should happen during the DatePeriod of the ScheduleStub.
specified date
1
A SpecifiedDate is a CalculatedDate that is defined by a rule, which is captured as a string by the "hasDateSpecification" property.
time direction
TimeDirection is an enumeration class that indicates whether a CalendarSpecifiedDate is figured from the start or the end of a calendar period.
The enumeration values of this class are modeled as instances of the class so that instances of CalendarSpecifiedDate can directly reference them.
calendar month
ISO 8601, clause 2.2.11
time interval resulting from the division of a calendar year in 12 time intervals, each with a specific name and containing a specific number of calendar days
calendar quarter
time interval of 3 months, starting on January 1, April 1, July 1, or October 1
calendar week
ISO 8601, clause 2.2.8
time interval of seven calendar days starting on a Monday
calendar year
ISO 8601 clause 2.2.13
cyclic time interval in a calendar which is required for one revolution of the Earth around the Sun and approximated to an integral number of calendar days; a year in the Gregorian calendar
from the end
The CalendarSpecifiedDate is the nth date from the end of a calendar period.
Two days before the end of a calendar month.
from the start
The CalendarSpecifiedDate is the nth day from the beginning of a calendar period.
The first day of a calendar quarter. (The offsetDay is zero.)