You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

On this page

What is a JWT calendar?

It defines custom schedules that can be used for time calculations like time subtraction and time addition.

The basic operations that can be done using the JWT calendars are:

  1. Belonging: Check if a certain time does or does not belong to a particular calendar.
  2. Time addition: Calculates the new time instant by adding a certain time duration to the time suggest defined by a particular calendar.
  3. Time subtraction: Calculates the difference between two particular time instants by a time subset defined by a particular calendar. 

Where to find JWT Calendars?

Head over to Administration → Manage apps → Jira Workflow Toolbox → Calendars

JWT calendars syntax

Main concepts

  • Calendar: A system on which we will be able to do time calculations. Calendars are composed of at least one time specifier.
  • Time Specifier: They are composed of a time definition and a block. (They are written in the following way: <time_definition> { <block_content> } ).
    • Time definition: Defines a part of the time continuum (a set of real numbers ℝ).
    • Block: Is written between braces {} and defines a scope where the lower level time specifiers can be written.
  • Time Specifier's Level: Time specifiers are ordered in a 5 level hierarchy:
    1. Global
    2. Year
    3. Month
    4. Week
    5. Day

A time specifier of a particular level is always explicitly or implicitly contained in a time specifier of the immediately higher level. When the higher level time specifier is not written, then it's implicitly contained in an unrestricted higher level time specifier.

  • Time Specifier's Priority: Time specifiers have also a priority associated, so that when 2 time specifiers overlap in the same level, the one with the highest priority is applied. Time specifiers with the same priority in the same level are not allowed to overlap, i.e., the intersection of their time definitions must be empty.
  • Time Specifier's Category: We can classify time specifiers in 2 categories:
    1. Absolute: Defines the unique and specific parts of the time continuum. This category of time specifiers represents the ones in the global level.
    2. Relative: Define parts of the time in the context of other time specifiers, i.e., the actual part of the time continuum defined depends on the time specifier where it is contained. This category of time specifiers is contained in the all levels besides the global.
  • Comment: JWT calendars supports single-line comments. Comments begin with a #. e.g.: #Summer Calendar

Time specifiers

The following table represents all the available time specifiers ordered by level and priority:

LevelHigh priorityInterval listLow priority
Global

Date list

2018/03/25, 2018/AUG/18
2017/01/01, 2017/05/01, 2017/12/25-2017/12/31

Can contain intervals.

Date

2018/JUN/15-2018/SEP/15
2018/01/01-2018/01/07, 2018/04/10-2018/04/20

Year list

2000, 2005, 2010
2000-2011
2010-2015, 2018, 2020-2025

Can contain intervals.

Year


Month-Day List

JAN/1, MAY/1, JUL/4, DEC/25

Month-Day

MAR/20-MAR/25
AUG/1-AUG/15, NOV/5-NOV-15

Month List

JAN, MAR, MAY, DEC
JAN-JUN, SEP-DEC
JAN-MAR, MAY, JUL, OCT-DEC

Can contain intervals.

DayWhole Day

00:00-00:00;
Time

8:00-15:00;
8:00-15:00, 16:00-19:00;
21:00-3:00;

Empty

;

Used for defining holidays.

Month

Day of Month List

1, 15, 30
1-5, 15, 25-3
1, 15-31
25-5

Can contain intervals.



Week

Day of Week List

MON-THU
MON-WED, FRI
MON, WED, FRI
SAT-MON, WED

Can contain intervals.



Get started with JWT calendars

Learn how to Add your first JWT calendar and visit our JWT calendars examples to get some inspiration and boost your steps.


If you still have questions, feel free to refer to our support team.