ScheduleSolver solution data

XML format for ScheduleSolver solutions

This document describes the data format used for ScheduleSolver solutions. After the rostering engine has solved the problem it returns the solution as XML. The XML schema is available here.

A solution XML file can also be opened using RosterViewer if a <ProblemFile> tag is added after the opening <Schedule> tag. The ProblemFile is the path to the problem instance XML that this solution was generated from. The path can be absolute or relative to the solution file. For example:

<?xml version="1.0" encoding="UTF-8"?>
<Schedule>

  <ProblemFile>..\..\ExampleProblem.xml</ProblemFile>
  
  <Employee ID="E1">...

</Schedule>

The root element (opening tag) of the XML is <Schedule>.

<Schedule>

The root element of the document.

Attributes

None

Elements

Schedule contains zero or more <Employee> elements.

Name Required Type Description
<Employee> Optional Employee Contains the shift assignments in the solution for an employee.

Example

<?xml version="1.0" encoding="UTF-8"?>
<Schedule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Schedule.xsd">

  <ProblemFile>D:/TestData/ScheduleSolver/ExampleData.ros</ProblemFile>
  
  <Employee ID="0">
    <Shift ID="235"/>
    <Shift ID="92"/>
    <Shift ID="234"/>
    <Shift ID="108"/>
    <Shift ID="248"/>
    <Shift ID="19"/>
    <Shift ID="166"/>
  </Employee>
  
  <Employee ID="1">
    <Shift ID="65"/>
    <Shift ID="153"/>
    <Shift ID="229"/>
    <Shift ID="247"/>
    <Shift ID="148"/>
    <Shift ID="143"/>
    <Shift ID="294"/>
  </Employee>
	
</Schedule>

<Employee>

Contains the assignments in the solution for an employee.

Parents : Schedule

Attributes

Name Required Type Description
ID Required string The ID of this employee (defined in the problem instance).

Elements

Employee contains zero or more <Shift> elements.

Name Required Type Description
<Shift> Optional Shift A shift assignment.

Example

<Employee ID="0">
    <Shift ID="235"/>
    <Shift ID="92"/>
    <Shift ID="234"/>
    <Shift ID="108"/>
    <Shift ID="248"/>
    <Shift ID="19"/>
    <Shift ID="166"/>
</Employee>

<Shift>

A shift assigned to this employee.

Parents : Employee

Attributes

Name Required Type Description Ver.
ID Required string The shift ID. 1.0+

Elements

None

Example

<Shift ID="123"/>