The name(s), title(s) and email address(es) for representatives and focal point(s) for all work streams should be transmitted to DOALOS, as soon as possible and no later than 7 September 2020 , using the template below.
Focal points for each workstream and other representatives who are designated to participate in the BBNJ intersessional work
(please add rows as may be necessary)
Name and title(s) of the representative(s)
Email address
Please indicate by inserting “x” in the box(es) below if the representative concerned is the focal point for one or more of the work streams.
(...) The
name(s), title(s) and email
address(es)
for
representatives and focal point(s) for all
work
streams
should be transmitted to
DOALOS,
as soon as possible and
no later than
7
September 2020
, using the template below.
Focal points for each w
orkstream
and other representatives who are designated to participate in
the BBNJ intersessional work
(please add rows as may be necessary)
Name and title
(s)
of
the
representative
(s)
Email address
Please indicate by inserting “x”
in the box(es) below
i
f the
representative
concerned is the focal point for one or more of the work
streams.
(...) The name(s), title(s) and email address(es) for representatives and focal point(s) for all work streams should be transmitted to
DOALOS, as soon as possible and no later than 7 September 2020, using the template below.
Focal points for each workstream and other representatives who are designated to participate in
the BBNJ intersessional work
(please add rows as may be necessary)
Name and title(s) of
the representative(s)
Email address Please indicate by inserting “x” in the box(es) below if the representative
concerned is the focal point for one or more of the work streams.
Language:English
Score: 1144086.2
-
https://www.un.org/bbnj/sites/..._bbnj_insersessional_work.docx
Data Source: un
module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ...8601DateTimePatterns.ttcn3.txt
Data Source: un
module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ.../ISO8601DateTimePatterns.ttcn3
Data Source: un
module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ.../ISO8601DateTimePatterns.ttcn3
Data Source: un
ISO8601DateTimePatterns.ttcn3 (ITU-T Z.167 (05/2012))
-- TTCN3 module extracted from ITU-T Z.167 (05/2012) module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ...2/ISO8601DateTimePatterns.html
Data Source: un
ISO8601DateTimePatterns.ttcn3 (ITU-T Z.167 (03/2011))
-- TTCN3 module extracted from ITU-T Z.167 (03/2011) module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g. //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ...1/ISO8601DateTimePatterns.html
Data Source: un
module ISO8601DateTimePatterns { //========================================================================= // Imports //========================================================================= import from nc all; //========================================================================= // Templates //========================================================================= //============================DATE FORMS================================== //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarBasic := pattern "{nc.yearExpansionOpt}({nc.century}|{nc.year}({nc.month}{nc.dayOfMonth}|" & "{dash}{nc.month})#(,1))"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete and expanded) //* in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendarExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.month}{dash}{nc.dayOfMonth}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.2 //* //* @desc Matches all calendar date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateCalendar := ( t_ISO8601DateCalendarBasic, t_ISO8601DateCalendarExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinalExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.dayOfYear}"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.3 //* //* @desc Matches all ordinal date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateOrdinal := ( t_ISO8601DateOrdinalBasic, t_ISO8601DateOrdinalExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekBasic := pattern "{nc.yearExpansionOpt}{nc.year}{nc.week}{nc.dayOfWeek}#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeekExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}{nc.week}({dash}{nc.dayOfWeek})#(,1)"; //***************************************************************************** //* //* @reference ISO_8601 $4.1.4 //* //* @desc Matches all week date representations (complete, reduced //* accuracy and expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateWeek := ( t_ISO8601DateWeekBasic, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in basic formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateBasic := ( t_ISO8601DateCalendarBasic, t_ISO8601DateOrdinalBasic, t_ISO8601DateWeekBasic ) //***************************************************************************** //* //* @reference ISO_8601 $4.1 //* //* @desc Matches all date representations (complete, reduced accuracy //* and expanded) in extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateExtended := ( t_ISO8601DateCalendarExtended, t_ISO8601DateOrdinalExtended, t_ISO8601DateWeekExtended ) //***************************************************************************** //* //* @reference ISO_8601 //* //* @desc Matches all date representations (complete, reduced accuracy and //* expanded) in basic and extended formats //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Date := ( t_ISO8601DateBasic, t_ISO8601DateExtended ) //============================TIME-OF-DAY============================ //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference //* between local time and UTC of day ($4.2.5)and the optional time //* designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeBasic := pattern "{nc.optionalT}({nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|60|" & "{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)|{nc.endOfDay})" & "{nc.optZorTimeZone}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601TimeExtended := pattern "{nc.optionalT}({nc.hour}{colon}({nc.minute}({colon}({nc.second}" & "{nc.sFraction}#(,1)|60)|{nc.mFraction})#(,1)|60)|{nc.endOfDayExt})" & "{nc.optZorTimeZoneExt}"; //***************************************************************************** //* //* @reference ISO_8601 $4.2 //* //* @desc Matches all time of day representations in basic and extended formats //* Supports all time of day representations as local time: complete //* ($4.2.2.2), reduced accuracy($4.2.2.3) and with decimal fraction //* ($4.2.2.4), midnight($4.2.3); UTC of day ($4.2.4) and difference between //* local time and UTC of day ($4.2.5)and the optional time designator //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Time := ( t_ISO8601TimeBasic, t_ISO8601TimeExtended ) //============================DATE-TIME FORMATS================================ //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in basic formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeBasic := pattern "{nc.yearExpansionOpt}{nc.year}({nc.month}{nc.dayOfMonth}|{nc.dayOfYear}|" & "{nc.week}{nc.dayOfWeek})T({nc.hour}({nc.minute}({nc.second}" & "{nc.sFraction}#(,1)|60|{nc.mFraction})#(,1)|60|{nc.hFraction})#(,1)" & "{nc.optZorTimeZone}|{nc.endOfDay}{nc.optZorTimeZone})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3.3 c) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTimeExtended := pattern "{nc.yearExpansionOpt}{nc.year}{dash}({nc.month}{dash}{nc.dayOfMonth}|" & "{nc.dayOfYear}|{nc.week}{dash}{nc.dayOfWeek})T({nc.hour}{colon}" & "({nc.minute}({colon}({nc.second}{nc.sFraction}#(,1)|60)|{nc.mFraction})" & "#(,1)|60){nc.optZorTimeZoneExt}|{nc.endOfDayExt}{nc.optZorTimeZoneExt})"; //***************************************************************************** //* //* @reference ISO_8601 $4.3 //* //* @desc Matches all date/time of day representations in all formats //* //* @remark Acc. to $4.3... ?) the date part shall always be complete //* @remark Omitting the T designer between the date and time parts is not //* supported //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DateTime := ( t_ISO8601DateTimeBasic, t_ISO8601DateTimeExtended ) //============================DURATION============================ //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing only date components //* and using the format with designators; Both week and caledar dates //* are supported (the alternative format in $4.4.3.3 is excluded: it is //* covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignDate := pattern "P{nc.nums}(Y({nc.nums}(M({nc.nums}(D|{nc.dFraction}D))#(,1)|" & "{nc.dFraction}[MD]|D))#(,1)|{nc.dFraction}[YMDW]|M({nc.nums}" & "(D|{nc.dFraction}D)|{nc.dFraction}D)#(,1)|D|W)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations containing time components //* only and using the format with designators //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesignTime := pattern "PT{nc.nums}(H({nc.nums}(M({nc.nums}(S|{nc.dFraction}S))#(,1)|" & "{nc.dFraction}[MS]|S))#(,1)|{nc.dFraction}[HMS]|M({nc.nums}(S|" & "{nc.dFraction}S)|{nc.dFraction}M)#(,1)|S)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.2 //* //* @desc Matches duration representations using the format with designators; //* Both week and caledar dates are supported (the alternative format in //* $4.4.3.3 is excluded: it is covered by t_ISO8601DurationAlternative...) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationDesign := pattern "P({nc.nums}((Y({nc.nums}(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|" & "{nc.durTime}#(,1))|{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}" & "#(,1))|{nc.dFraction}[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|" & "{nc.dFraction}D)|{nc.dFraction}D|{nc.durTime}#(,1))|D{nc.durTime}#(,1)|" & "W{nc.durTime}#(,1))|{nc.durTime})" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative basic format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeBasic := pattern "P{nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative extended format //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternativeExtended := pattern "P{nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3.3 //* //* @desc Matches duration representations using the alternative format; //* both the basic and the extended formats are supported //* //* @remark Both caledar and ordinal dates are supported //* @remark Any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationAlternative := ( t_ISO8601DurationAlternativeBasic, t_ISO8601DurationAlternativeExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with //* designators and the alternative representation; in the alternative //* representation only the basic format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P00011200T000000, P00010130T000000, //* P001365T000000, P0001001T006000 and //* P0001001T000060 //* are NOT accepted, only //* P00020000T000000, P00010200T000000, //* P002000T000000, P0001001T010000 and //* P0001001T000100 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationBasic := pattern "P({nc.year}({nc.monthDurAlt}{nc.dayOfMonthDurAlt}|{nc.dayOfYearDurAlt})" & "T{nc.hour}(({nc.minute}({nc.second}{nc.sFraction}#(,1)|{nc.mFraction})" & "#(,1)|{nc.hFraction})#(,1))|({nc.nums}((Y({nc.nums}(M({nc.nums}" & "(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|{nc.dFraction}" & "[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}[YMDW])|" & "M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using the both formats: with designators //* and the alternative representation; in the alternative representation only //* the extended format is allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601DurationExtended := pattern "P({nc.year}{dash}({nc.monthDurAlt}{dash}{nc.dayOfMonthDurAlt}|" & "{nc.dayOfYearDurAlt})T{nc.hour}{colon}{nc.minute}({colon}{nc.second}" & "{nc.sFraction}#(,1)|{nc.mFraction})#(,1)|({nc.nums}((Y({nc.nums}" & "(M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.durTime}#(,1))|" & "{nc.dFraction}[MD]|D{nc.durTime}#(,1))|{nc.durTime}#(,1))|{nc.dFraction}" & "[YMDW])|M({nc.nums}(D{nc.durTime}#(,1)|{nc.dFraction}D)|{nc.dFraction}D|" & "{nc.durTime}#(,1))|D{nc.durTime}#(,1)|W{nc.durTime}#(,1))|{nc.durTime}))" //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches duration representations using both formats: with designators //* and the alternative representation; in the alternative representation both //* the basic and the extended formats are allowed //* //* @remark both caledar and ordinal dates are supported //* @remark any of the components may be numerically 0; //* @remark Carry over points are 12 month, 30 days, (365 days in case of //* ordinal dates), 24 hours, 60 minutes and //* 60 seconds; e.g., //* P0001-12-00T00:00:00, P0001-01-30T00:00:00, //* P001-365T00:00:00, P0001-001T00:60:00 and //* P0001-001T00:00:60 //* are NOT accepted, only //* P0002-00-00T00:00:00, P0001-02-00T00:00:00, //* P002-000T00:00:00, P0001-001T01:00:00 and //* P0001-001T00:01:00 //* are valid //* @remark The time part may be of reduced accuracy (by using decimal fraction //* or omitting lower order time element(s)), the date part shall be //* complete (i.e., numerically 0 elements shall not be omitted) //* //* @status verified //* //***************************************************************************** template charstring t_ISO8601Duration := ( t_ISO8601DurationBasic, t_ISO8601DurationExtended ) //***************************************************************************** //* //* @reference ISO_8601 $4.4.3 //* //* @desc Matches both complete and reduced accuracy (see note below)time //* interval representations identified by start and end and using the //* basic format //* //* @remark $ 4.4.4.5 is contradictory as allows omitting higher order time //* elements in the part representing end date/time (the expression //* after the solidus), while the time part may also be of reduced //* accuracy (either by omitting the lower order elements or by a //* decimal fraction).
Language:English
Score: 1136472.7
-
https://www.itu.int/wftp3/Publ...ateTimePatterns.ttcn3.2012.txt
Data Source: un
It is noted that the submission with complete information should include description template (including a link budget template), compliance template, self-evaluation and compliance with IPR policy as described in section 5.1 and 5.2 of Report ITU-R M.2411.
(...) It would be available on a subscription basis for ITU-R Members, designated representatives of the proponents of candidate technology submissions and designated representatives of the IEGs. The proponents and IEGs are requested to provide details of the designated representatives.
WP 5D looks forward to fruitful collaboration with proponents on this matter and will provide further information under Step 3 of IMT-2020 process.
Language:English
Score: 1114822.3
-
https://www.itu.int/dms_pub/it...0a/06/R0A0600007E0002MSWE.docx
Data Source: un
GC Active COP Using the Basic Template | UN Global Compact
All
Participants
Search
Who We Are
The SDGs
Participation
Take Action
Engage Locally
Explore Our Library
About
News
Sign In
Contact Us
Explore our enhanced library
Designed to help you find the resources you need to take the next step on your sustainability journey.
Back to Listings
Resource Author
United Nations Global Compact
Report
(2014)
GC Active COP Using the Basic Template
Resource Author
United Nations Global Compact
The Basic COP Template is an easy-to-use web-based template with examples.
Access Resource
Step-by-step submission guide
(English)
Basic Template
(Arabic)
Basic Template
(Chinese-Mandarin)
Basic Template
(English)
Basic Template
(French)
Basic Template
(Japanese)
Basic Template
(Russian)
Basic Template
(Spanish)
Basic Template
(German)
Basic Template
(Turkish)
Basic Template
(Korean)
Basic Template
(Portuguese)
Basic Template
(Italian)
Resource Details
Topics
Communication on Progress
Issues
Communication on Progress
Reporting
Share Resource
Mail
Twitter
Facebook
LinkedIn
Help us transform the world through business
Contribute Today
Sign Up for Our Bulletin
Have a Question?
Language:English
Score: 1100679.7
-
https://www.unglobalcompact.org/library/2971
Data Source: un
Template for the Communication on Engagement | UN Global Compact
All
Participants
Search
Who We Are
The SDGs
Participation
Take Action
Engage Locally
Explore Our Library
About
News
Sign In
Contact Us
Explore our enhanced library
Designed to help you find the resources you need to take the next step on your sustainability journey.
Back to Listings
Resource Author
United Nations Global Compact
Report
(2015)
Template for the Communication on Engagement
Resource Author
United Nations Global Compact
The COE Template is an easy-to-use web-based template with examples.
Access Resource
Basic Template
(English)
Basic Template
(Spanish)
Basic Template
(French)
Basic Template
(Arabic)
Basic Template
(Chinese-Mandarin)
Basic Template
(Portuguese)
Basic Template
(Japanese)
Basic Template
(Korean)
Basic Template
(Turkish)
Resource Details
Topics
Communication on Engagement
Issues
Communication on Progress
Ten Principles
Reporting
Share Resource
Mail
Twitter
Facebook
LinkedIn
Help us transform the world through business
Contribute Today
Sign Up for Our Bulletin
Have a Question?
Language:English
Score: 1098942.7
-
https://www.unglobalcompact.org/library/3771
Data Source: un