What Is a Baseline?
A baseline is a snapshot of task dates at a specific point in time. When you compare the current schedule against a baseline, each task shows two bars: the current (actual) bar representing today’s plan, and a secondary baseline bar showing where the task was scheduled at the comparison point.Three Comparison Modes
The Gantt provides three ways to select a historical comparison point, each suited to different scenarios:| Mode | Source | Best for |
|---|---|---|
| Date | A specific calendar date (e.g., 2025-01-15) | Comparing against a known milestone date |
| Named baseline | A Polarion baseline (named snapshot) | Comparing against an official project checkpoint |
| Revision | A Polarion SVN revision number | Comparing against a precise configuration state |
Comparison by Date
You select a date, and the Gantt retrieves each task’s start date and duration as they were on that date. This is the simplest mode — useful for ad-hoc comparisons like “How did the plan look at the start of this quarter?” The Gantt passes a_baselineDate parameter to the server, which looks up the historical values and returns them alongside the current data as planned_start_date and planned_duration fields.
Comparison by Named Baseline
Polarion supports creating named baselines — formal snapshots of a project’s state at a specific point. The Gantt retrieves available baselines from the server and presents them in a dropdown. When you select a baseline, the Gantt loads task data as it existed at that baseline’s revision. Named baselines are particularly useful for contractual or regulatory scenarios where you need to demonstrate how the plan has evolved relative to an approved checkpoint.Comparison by Revision
For the most precise comparison, you can enter a specific SVN revision number. This is useful when you know the exact configuration state you want to compare against — for example, the revision that was used for a particular delivery or review. If the specified revision does not exist in the task data, the Gantt displays an error.Persistent vs. One-Time Comparison
The Gantt supports two baseline display modes: Persistent baselines are configured through theShow Baselines parameter. When enabled, the Gantt automatically loads baseline data every time it opens. You configure a default comparison point — either a relative date (e.g., “T-minus 30 days”), a specific date, or a date supplied via a page parameter. This mode is ideal for dashboard pages where you always want to see schedule drift.
The Compare to date sub-parameter only appears when Show Baselines is enabled, following the Gantt’s progressive parameter disclosure pattern.
One-time comparison is triggered from the toolbar using the Compare with History button. This opens a dialog where you select one of the three comparison modes (date, named baseline, or revision) and click Compare. The baseline overlay appears for the current session only and is not persisted when the page is reloaded.
Interaction Between Modes
WhenShow Baselines is configured for persistent display and a user triggers a one-time comparison with a different date, the one-time comparison takes precedence. The baseline display refreshes to show the user-selected comparison point instead of the preconfigured one. This allows users to temporarily explore different historical points without changing the widget configuration.
Baseline Data Fields
When baseline comparison is active, the server includes two additional fields in each task’s data response:| Field | Content |
|---|---|
planned_start_date | The task’s start date as of the comparison point |
planned_duration | The task’s duration (in working days) as of the comparison point |
The API Approach
For advanced baseline scenarios, you can use the Item Script API to populate baseline fields from custom sources. Instead of relying on the built-in date/baseline/revision comparison, you can write a script that loads baseline values from dedicated custom fields on each work item. This approach is useful when baselines are captured through workflow transitions rather than Polarion’s baseline mechanism. For example, a workflow action “Approve Schedule” could copy the currentstart and duration values into initial_start and initial_duration fields. The Item Script then loads these item-specific baseline values, providing a per-task comparison rather than a single point-in-time snapshot.
Visual Representation
The baseline bar appears as a secondary, typically lighter-colored bar rendered behind the main task bar. The visual difference between the two bars communicates:- Baseline bar extends further right than the current bar — the task was originally planned to take longer (or end later) than it currently does
- Current bar extends further right than the baseline bar — the task has slipped past its original end date
- Bars are identical — the task is on track with no schedule change
- Only a current bar exists (no baseline) — the task was added after the comparison point (shown with a “NEW” badge)
Interaction with Other Features
Baseline comparison interacts with several Gantt capabilities:- Critical path — You can compare the current critical path against a baseline to see how the critical path has shifted over time
- Working calendars — Baseline duration values use the same working calendar rules as current durations, ensuring the comparison accounts for non-working days
- Date range conflicts — Date range conflict detection operates on current task dates only; baseline dates do not trigger conflict warnings
Related Topics
- Auto-Scheduling and Dependency Propagation — How dependency-driven changes create the schedule drift that baselines reveal
- Critical Path Analysis — Comparing current and historical critical paths
- Configuration Layers and Precedence — Where baseline settings are configured
Sources
Sources
KB Articles
- How to show the difference of actual vs initial schedule
- Browse Project Baselines and show Plan Comparison View
prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/model/Task.javaprod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/widget/WorkItemsGanttWidget.javaprod-gantt-src/com.nextedy.polarion.gantt.client/src/js/main.jsprod-gantt-src/com.nextedy.polarion.gantt.client/cypress/e2e/gantt-Baseline.cy.tsprod-gantt-src/com.nextedy.polarion.gantt.client/src/js/baseline.js