Microsoft Project XML Schema

(C) 2002 Microsoft Corporation. All rights reserved.

Contents

Overview
  Open a project from an XML DOM document
  Open a project from an XML file
  Open a project from a string containing XML
  Saving a project to an XML DOM document
  Save a project file as an XML file that conforms to the Microsoft Project XML Schema
  Appending XML data to existing projects
  Microsoft Project XML element and data types

The Microsoft Project XML Schema
  TimephasedDataType
  Project
  OutlineCode
  WBSMasks
  ExtendedAttribute
  Calendar
  Task
  Resource
  Assignment

Overview

This document provides the information necessary to understand individual elements of the Microsoft Project XML Schema. In addition to descriptions for each element within the schema, the overall structure of the schema is detailed, and some sample macros that show how to use the XML Document Object Model (DOM) to access the Microsoft Project XML Schema are included.

Note   To ensure that all required elements and default settings are included when you create a project in XML, it is recommended that you start by saving an empty project to XML that you can use as a template.

Top

Open a project from an XML DOM document

The following code sample shows how to transform a DOM document into a project XML DOM document and open it in Microsoft Project. This method is useful when transforming an XML document containing project data that does not conform to the Microsoft Project Data Interchange Schema.

Public Sub fileopen_xmldom(xml As String)

    On Error GoTo err_fileopen_xmldom
    
    Dim app As New MSProject.Application
    Dim xmlDom, xslDom, projDom, xslFileName As String
    
    'Load the XML string parameter into a DOM document
    Set xmlDom = CreateObject("MSXML2.DOMDocument")
    xmlDom.async = False
    xmlDom.loadXML xml
    
    'Specify an XSL template file name
    xslFileName = "C:\project\xml\project.xsl"
    
    'Load the XSL template into a DOM document
    Set xslDom = CreateObject("MSXML2.DOMDocument")
    xslDom.async = False
    xslDom.Load xslFileName
    
    'Transform the XML input into a project XML document
    Set projDom = CreateObject("MSXML2.DOMDocument")
    projDom.Load xmlDom.transformNode(xslDom)
    
    'Open a project from the XML DOM document
    app.FileOpen FormatID:="MSProject.XMLDOM", XMLName:=projDom

exit_fileopen_xmldom:
    Exit Sub
    
err_fileopen_xmldom:
    MsgBox "error: " & Err.Description
    GoTo exit_fileopen_xmldom
End Sub

Public Sub Fileopen_xmldom_test()
    Dim xmlDom, XMLfileName As String
    XMLfileName = "C:\proj10\xml\xmldemo\x1.xml"
    Set xmlDom = CreateObject("MSXML2.DOMdocument")
    xmlDom.async = False
    xmlDom.Load XMLfileName
    fileopen_xmldom (xmlDom.xml)
End Sub

Top

Open a project from an XML file

The following code sample shows how to use a project XML document file created by a third party application to create a project in Microsoft Project. This sample assumes that the file created by a third party application already contains valid XML that conforms to the Microsoft Project XML Schema.

Public Sub fileopen_xmlfile()

    On Error GoTo err_fileopen_xmlfile
    
    Dim app As New MSProject.Application, xmlFile As String
    
    'Specify a Microsoft Project XML file name
    xmlFile = "C:\project\xml\someProject.xml"
    
    'Open a project from the XML file
    app.FileOpen Name:=xmlFile, FormatID:="MSProject.XML"

exit_fileopen_xmlfile:
    Exit Sub
    
err_fileopen_xmlfile:
    MsgBox "error: " & Err.Description
    GoTo exit_fileopen_xmlfile

End Sub

Top

Open a project from a string containing XML

The following code sample shows how to use Simple Object Access Protocol (SOAP) to call a web page that returns an XML string that conforms to the Microsoft Project XML Schema.

Note   The Microsoft SOAP client must be installed to use this sample.

Public Sub openxml_xmlstring(xmlRequest As String)

    On Error GoTo err_openxml_xmlstring
    
    Dim app As New MSProject.Application
    Dim XMLHttp As XMLHttp
    Dim xmlResponse As String, URL As String
    
    'Specify the web page to call
    URL = "http://myserver/getProjectXML.asp"
    
    'Create the SOAP client and call the page
    Set XMLHttp = New XMLHttp
    XMLHttp.Open "POST", URL, False
    XMLHttp.send xmlRequest
    xmlResponse = XMLHttp.responseXML.xml
    
    'Open a project from the response string
    app.OpenXML xmlResponse

exit_openxml_xmlstring:
    Exit Sub
    
err_openxml_xmlstring:
    MsgBox "error: " & Err.Description
    GoTo exit_openxml_xmlstring

End Sub

Top

Saving a project to an XML DOM document

The following code sample shows how to save a project created in Microsoft Project as an XML DOM document that conforms to the Microsoft Project XML Schema. This will allow users to use the properties and methods of the DOM to manipulate and extract project data.

Public Sub filesaveas_xmldom()

    On Error GoTo err_filesaveas_xmldom
    
    Dim app As New MSProject.Application
    Dim doc
    
    'Create an XML DOM document
    Set doc = CreateObject("MSXML2.DOMDocument")
    
    'Save the project to the DOM document
    app.FileSaveAs FormatID:="MSProject.XMLDOM", XMLName:=doc

exit_filesaveas_xmldom:
    Exit Sub
    
err_filesaveas_xmldom:
    MsgBox "error: " & Err.Description
    GoTo exit_filesaveas_xmldom

End Sub

Top

Save a project file as an XML file that conforms to the Microsoft Project XML Schema

The following code sample shows how to save Microsoft Project data as an XML file that conforms to the Microsoft Project XML Schema. This code sample can be used to drop a project XML document to a file share to be picked up and used later by an asynchronous process.

Public Sub filesaveas_xmlfile()

    On Error GoTo err_filesaveas_xmlfile
    
    Dim app As New MSProject.Application, xmlFile As String
    
    'Specify a Microsoft Project XML file name
    xmlFile = "C:\path to location\fileName.xml"
    
    'Open a project from the XML file
    app.FileSaveAs Name:=xmlFile, FormatID:="MSProject.XML"

exit_filesaveas_xmlfile:
    Exit Sub
    
err_filesaveas_xmlfile:
    MsgBox "error: " & Err.Description
    GoTo exit_filesaveas_xmlfile

End Sub

Top

Appending XML data to existing projects

When Microsoft Project appends XML data to an existing project, a summary task's unique ID is incremented from 0 to 1. Microsoft Project then checks for duplicate unique IDs elsewhere in the appending XML data; if any are found, the duplicate unique IDs are given new unique IDs. This process can cause assignments, tasks, resources, and cross-project links to become disassociated with original data.

Note   To ensure that data doesn't end up in unintended locations, it is recommended that you separate this data into its smallest possible component: a task, a resource, an assignment, and so on, before appending. You can also create a custom solution using Microsoft Project VBA and MSXML. See Microsoft Project VBA Help for more information.

Top

Microsoft Project XML element and data types

The following XML Schema Definition (XSD) element types are used in the Microsoft Project XML Schema:

Element Types Description
schema Contains the definition of the schema.
annotation Defines an annotation.
complexType A type definition for elements that contains elements and attributes. This data can contain elements and attributes.
documentation Specifies information to be read or used by users within the annotation element.
sequence Requires the elements in the group to appear in the specified sequence within the containing element.
element Declares an element.
simpleType A type definition for a value that can be used as the content of an element or attribute. This data type cannot contain elements or have attributes.
restriction Defines constraints on a simpleType definition.
enumeration A specified set of values for an element. Data is constrained to the specific values described.

The following data types are used in the Microsoft Project XML Schema:

Data Types Description
integer A sequence of decimal digits with an optional leading sign (+ or -). This data type is derived from decimal.
float A single-precision, 32-bit floating point number.
string A character string.
datetime A specific instance of time.
time An instance of time that recurs every day.
duration A duration of time.
Boolean A Boolean value, which is either true or false.
decimal An arbitrary precision number.

Top

The Microsoft Project XML Schema

The tables below explain each individual element of the Microsoft Project XML Schema. The schema is broken into tables in this document by concept of data in relation to how it exists in Microsoft Project, Microsoft Project Server, and the OLE databases, rather than being based on the literal organization of the actual schema itself. For example:

<xsd:element name="Project">
   <xsd:complexType>
      <xsd:sequence>
         <xsd:element name="UID" minOccurs="0">
            <xsd:simpleType>
               <xsd:restriction base="xsd:string">
                  <xsd:maxLength value="16" />
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="CreationDate">
         </xsd:element>
      </xsd:sequence>
   </xsd:complexType>
</xsd:element>

The elements in the example shown above are contained in the Project table below. Both UID and CreationDate have their own descriptions in the table. Another way the data is described in this document is as follows:

<xsd:element name="Calendars">
...
...
   <xsd:element name="Weekday">
      <xsd:complexType>
         <xsd:sequence>
            <xsd:element name="DayWorking" minOccurs="0">
            <xsd:element name="DayType" minOccurs="0">
            ...
               <xsd:element name="FromTime" minOccurs="0">
               <xsd:element name="ToTime" minOccurs="0">
            ...
         </xsd:sequence>
      </xsd:complexType>
   </xsd:element>
...
...
</xsd:element>

The elements in the example shown above are contained in the Calendar table below. Both FromTime and ToTime are part of the WorkingTimes element (note the plural). WorkingTimes is a collection of the singular WorkingTime, which is defined by a FromTime and ToTime.

Top

TimephasedDataType

This section defines timephased data, including the type of timephased data, the start and finish time, and the unit of time and the length of time each unit spans. This section represented as XML is as follows:

<TimephasedDataType>
	<Type />
	<UID />
	<Start />
	<Finish />
	<Unit />
	<Value />
</TimephasedDataType>

 Column NameData TypeDescription
TypeintegerThe type of timephased data:
1 Assignment Remaining Work
2 Assignment Actual Work
3 Assignment Actual Overtime Work
4 Assignment Baseline Work
5 Assignment Baseline Cost
6 Assignment Actual Cost
7 Resource Baseline Work
8 Resource Baseline Cost
9 Task Baseline Work
10 Task Baseline Cost
11 Task Percent Complete
16 Assignment Baseline 1 Work
17 Assignment Baseline 1 Cost
18 Task Baseline 1 Work
19 Task Baseline 1 Cost
20 Resource Baseline 1 Work
21 Resource Baseline 1 Cost
22 Assignment Baseline 2 Work
23 Assignment Baseline 2 Cost
24 Task Baseline 2 Work
25 Task Baseline 2 Cost
26 Resource Baseline 2 Work
27 Resource Baseline 2 Cost
28 Assignment Baseline 3 Work
29 Assignment Baseline 3 Cost
30 Task Baseline 3 Work
31 Task Baseline 3 Cost
32 Resource Baseline 3 Work
33 Resource Baseline 3 Cost
34 Assignment Baseline 4 Work
35 Assignment Baseline 4 Cost
36 Task Baseline 4 Work
37 Task Baseline 4 Cost
38 Resource Baseline 4 Work
39 Resource Baseline 4 Cost
40 Assignment Baseline 5 Work
41 Assignment Baseline 5 Cost
42 Task Baseline 5 Work
43 Task Baseline 5 Cost
44 Resource Baseline 5 Work
45 Resource Baseline 5 Cost
46 Assignment Baseline 6 Work
47 Assignment Baseline 6 Cost
48 Task Baseline 6 Work
49 Task Baseline 6 Cost
50 Resource Baseline 6 Work
51 Resource Baseline 6 Cost
52 Assignment Baseline 7 Work
53 Assignment Baseline 7 Cost
54 Task Baseline 7 Work
55 Task Baseline 7 Cost
56 Resource Baseline 7 Work
57 Resource Baseline 7 Cost
58 Assignment Baseline 8 Work
59 Assignment Baseline 8 Cost
60 Task Baseline 8 Work
61 Task Baseline 8 Cost
62 Resource Baseline 8 Work
63 Resource Baseline 8 Cost
64 Assignment Baseline 9 Work
65 Assignment Baseline 9 Cost
66 Task Baseline 9 Work
67 Task Baseline 9 Cost
68 Resource Baseline 9 Work
69 Resource Baseline 9 Cost
70 Assignment Baseline 10 Work
71 Assignment Baseline 10 Cost
72 Task Baseline 10 Work
73 Task Baseline 10 Cost
74 Resource Baseline 10 Work
75 Resource Baseline 10 Cost
76 Physical Percent Complete
UIDintegerThe unique ID for the timephased data record.
StartdatetimeThe start date for the timephased data record.
FinishdatetimeThe finish date for the timephased data record.
UnitintegerThe time unit for the timephased data record.
0 Minute
1 Hour
2 Day
3 Week
5 Month
8 Year
ValuestringThe value for each unit in the timephased data record.

Top

Project

This section stores all data for each project, including calendars, assignments, tasks, resources, extended attributes, work breakdown structure (WBS codes), and custom outline codes.

Note: You will experience a rounding error with the MoveCompletedEndsBack, MoveRemainingStartsBack , MoveRemainingStartsForward, and MoveCompletedEndsForward elements. The internal work values for these elements have eight digits; they will lose .001 seconds for every minute, causing a rounding error.

This section represented as XML is as follows:

<Project>
	<UID />
	<Name />
	<Title />
	<Subject />
	<Category />
	<Company />
	<Manager />
	<Author />
	<CreationDate />
	<Revision />
	<LastSaved />
	<ScheduleFromStart />
	<StartDate />
	<FinishDate />
	<FYStartDate />
	<CriticalSlackLimit />
	<CurrencyDigits />
	<CurrencySymbol />
	<CurrencySymbolPosition />
	<CalendarUID />
	<DefaultStartTime />
	<DefaultFinishTime />
	<MinutesPerDay />
	<MinutesPerWeek />
	<DaysPerMonth />
	<DefaultTaskType />
	<DefaultFixedCostAccrual />
	<DefaultStandardRate />
	<DefaultOvertimeRate />
	<DurationFormat />
	<WorkFormat />
	<EditableActualCosts />
	<HonorConstraints />
	<EarnedValueMethod />
	<InsertedProjectsLikeSummary />
	<MultipleCriticalPaths />
	<NewTasksEffortDriven />
	<NewTasksEstimated />
	<SplitsInProgressTasks />
	<SpreadActualCost />
	<SpreadPercentComplete />
	<TaskUpdatesResource />
	<FiscalYearStart />
	<WeekStartDay />
	<MoveCompletedEndsBack />
	<MoveRemainingStartsBack />
	<MoveRemainingStartsForward />
	<MoveCompletedEndsForward />
	<BaselineForEarnedValue />
	<AutoAddNewResourcesAndTasks />
	<StatusDate />
	<CurrentDate />
	<MicrosoftProjectServerURL />
	<Autolink />
	<NewTaskStartDate />
	<DefaultTaskEVMethod />
	<ProjectExternallyEdited />
	<OutlineCodes>
		...
	</OutlineCodes>
	<WBSMasks>
		...
	</WBSMasks>
	<ExtendedAttributes>
		...
	</ExtendedAttributes>
	<Calendars>
		...
	</Calendars>
	<Tasks />
		...
	</Tasks>
	<Resources>
		...
	</Resources>
	<Assignments />
		...
	</Assignments>
</Project>

 Column NameData TypeDescription
UIDstring(16)The unique ID for the project.
Namestring(255)The name of the project.
Titlestring(512)The title of the project.
Subjectstring(512)The subject of the project.
Categorystring(512)The category the project belongs to.
Companystring(512)The name of the company that created the project.
Managerstring(512)The manager of the project.
Authorstring(512)The author of the project.
CreationDatedatetimeThe date the project was created.
RevisionintegerThe number of times that the project has been saved.
LastSaveddatetimeThe date the project was last saved.
ScheduleFromStartBooleanIndicates whether the project is scheduled from its start date or finish date.
StartDatedatetimeThe date and time that a project is scheduled to begin; required if ScheduleFromStart is true.
FinishDatedatetimeThe date and time that a project is scheduled to end; required if ScheduleFromStart is false.
FYStartDateintegerThe month the fiscal year begins:
1 January (default)
2 February
3 March
4 April
5 May
6 June
7 July
8 August
9 September
10 October
11 November
12 December
CriticalSlackLimitintegerThe number of days past its end date that a task can go before Microsoft Project marks that task as a critical task.
CurrencyDigitsintegerThe number of digits that appear after the decimal when currency values are shown in Microsoft Project:
0 No digits after the decimal: $0
1 One digit after the decimal: $0.0
2 Two digits after the decimal: $0.00
CurrencySymbolstring(20)The currency symbol used to represent the type of currency used in the project.
CurrencySymbolPositionintegerIndicates the placement of the currency symbol in relation to the currency value:
0 Before, no space (default): $0
1 After, no space: 0$
2 Before, with space: $ 0
3 After, with space: 0 $
CalendarUIDintegerThe unique ID for the calendar used in the project.
DefaultStartTimeTimeThe default start time for all new tasks.
DefaultFinishTimeTimeThe default finish time for all new tasks.
MinutesPerDayintegerThe default number of minutes per day.
MinutesPerWeekintegerThe default number of minutes per week.
DaysPerMonthintegerThe default number of working days per month.
DefaultTaskTypeintegerThe default type for all new tasks in the project:
0 Fixed units (default); the number of resources (Assignment Units) remains constant, regardless of the amount of work or duration on the task
1 Fixed duration; the duration of the task remains constant, regardless of the number of resources (Assignment Units) assigned or the amount of work
2 Fixed work; the amount of work remains constant, regardless of any change in duration or the number of resources (Assignment Units) assigned to the task
DefaultFixedCostAccrualintegerThe default measuring point when fixed costs are accrued:
1 Start
2 Prorated
3 End
DefaultStandardRateFloatThe default standard rate for new resources.
DefaultOvertimeRateFloatThe default overtime rate for new resources.
DurationFormatintegerThe default format for all durations in the project:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
WorkFormatintegerThe default format for all work durations in the project.
1 m
2 h
3 d
4 w
5 mo
7 y
EditableActualCostsBooleanIndicates whether Microsoft Project automatically calculates actual costs.
HonorConstraintsBooleanIndicates whether Microsoft Project schedules tasks according to their constraint dates instead of any task dependencies.
EarnedValueMethodintegerThe default method for calculating earned value:
0 Percent complete
1 Physical percent complete
InsertedProjectsLikeSummaryBooleanIndicates whether inserted projects are treated as summary tasks rather than as separate projects for schedule calculation.
MultipleCriticalPathsBooleanIndicates whether Microsoft Project calculates and displays a critical path for each independent network of tasks within a project.
NewTasksEffortDrivenBooleanIndicates whether new tasks are effort-driven.
NewTasksEstimatedBooleanIndicates whether new tasks have estimated durations.
SplitsInProgressTasksBooleanIndicates whether in-progress tasks may be split.
SpreadActualCostBooleanIndicates whether actual costs are spread to the status date.
SpreadPercentCompleteBooleanIndicates whether percent complete is spread to the status date.
TaskUpdatesResourceBooleanIndicates whether updates to tasks update resources.
FiscalYearStartBooleanIndicates whether fiscal year numbering is used.
WeekStartDayintegerThe start day of the week:
0 Sunday
1 Monday
2 Tuesday
3 Wednesday
4 Thursday
5 Friday
6 Saturday
MoveCompletedEndsBackBooleanIndicates whether the end of completed portions of tasks scheduled to begin after the status date, but begun early, should be moved back to the status date.
MoveRemainingStartsBackBooleanIndicates whether the beginning of remaining portions of tasks scheduled to begin after the status date, but begun early, should be moved back to the status date.
MoveRemainingStartsForwardBooleanIndicates whether the beginning of remaining portions of tasks scheduled to have begun late should be moved up to the status date.
MoveCompletedEndsForwardBooleanIndicates whether the end of completed portions of tasks scheduled to have been completed before the status date, but begun late, should be moved up to the status date.
BaselineForEarnedValueBooleanThe specific baseline used to calculate Variance values:
0 Baseline
1 Baseline 1
2 Baseline 2
3 Baseline 3
4 Baseline 4
5 Baseline 5
6 Baseline 6
7 Baseline 7
8 Baseline 8
9 Baseline 9
10 Baseline 10
AutoAddNewResourcesAndTasksBooleanIndicates whether to automatically add new resources to the resource pool.
StatusDatedatetimeDate used for calculation and reporting.
CurrentDatedatetimeThe system date that the XML was generated.
MicrosoftProjectServerURLBooleanIndicates whether the project was created by a Microsoft Project Server user or a Microsoft Windows NT user.
AutolinkBooleanIndicates whether to autolink inserted or moved tasks.
NewTaskStartDateintegerThe default start date for a new task:
0 Project start date
1 Current date
DefaultTaskEVMethodintegerThe default earned value method for tasks:
0 Percent complete
1 Physical percent complete
ProjectExternallyEditedBooleanIndicates whether the project was edited externally.
OutlineCodesThe collection of outline code definitions associated with the project; these codes may be associated with any number of projects; see OutlineCode below.
WBSMasksThe table of entries that define an outline code mask; see WBSMasks below.
ExtendedAttributesThe collection of extended attribute (custom field) definitions associated with a project; see ExtendedAttribute below.
CalendarsThe collection of calendars associated with the project; see Calendar below.
TasksThe collection of tasks that make up the project; see Task below.
ResourcesThe collection of resources that make up the project; see Resource below.
AssignmentsThe collection of assignments that make up the project; see Assignment below.

Top

OutlineCode

This section stores information related to the collection of custom outline codes associated with the project. These codes can be associated with more than one project. This section represented as XML is as follows:

	<OutlineCodes>
		<OutlineCode>
			<FieldID />
			<FieldName />
			<Alias />
			<PhoneticAlias />
			<Values>
				<Value>
					<ValueID />
					<ParentValueID />
					<Value />
					<Description />
				</Value>
			</Values>
			<Enterprise />
			<EnterpriseOutlineCodeAlias />
			<ResourceSubstitutionEnabled />
			<LeafOnly />
			<AllLevelsRequired />
			<OnlyTableValuesAllowed />
			<Masks>
				<Mask>
					<Level />
					<Type />
					<Length />
					<Separator />
				</Mask>
			</Masks>
		</OutlineCode>
	</OutlineCodes>

 Column NameData TypeDescription
FieldIDstringThe field number the outline code refers to.
FieldNamestringThe name of the custom outline code.
AliasstringThe alias of the custom outline code.
PhoneticAliasstringContains phonetic information in either Hiragana or Katakana for a custom outline code; used only in the Japanese version of Microsoft Project.
ID (Value)integerThe unique ID for the custom outline code.
ParentID (Value)integerThe unique ID for the parent node of the custom outline code.
Value (Value)stringThe actual value of the custom outline code.
Description (Value)stringThe description of the custom outline code.
EnterpriseBooleanIndicates whether the custom outline code is an enterprise custom outline code.
EnterpriseOutlineCodeAliasintegerRefers to another custom field for which this is an alias.
ResourceSubstitutionEnabledBooleanIndicates whether the custom outline code is used with the Resource Substitution Wizard in Microsoft Project; only used with enterprise custom outline codes.
LeafOnlyBooleanIndicates whether the values specified in the custom outline code must be leaf values.
AllLevelsRequiredBooleanIndicates whether new codes must have all levels present; not used for enterprise custom outline codes.
OnlyTableValuesAllowedBooleanIndicates whether the custom outline code value must come from the values table.
MasksBooleanIndicates whether the custom outline code must be used with all related resources and tasks.
Level (Mask)integerThe level that has been assigned to each custom outline code, beginning with 1.
Type (Mask)integerThe type of code string for first-level tasks:
0 Numbers (ordered); a numeric WBS code for this level (default).
1 Uppercase Letters (ordered); uppercase, alphabetical WBS codes (for example, A, B, and C for the first three summary tasks in the project).
2 Lowercase Letters (ordered); lowercase, alphabetical WBS codes (for example, a, b, and c for the first three summary tasks in the project).
3 Characters (unordered); any combination of numbers and uppercase or lowercase letters (for example, Arch1, Const1, or Insp1) for the first three summary tasks in the project). Microsoft Project displays an asterisk (*) in the custom outline field until you type or enter a string of characters for this code.
Length (Mask)integerThe maximum length in characters of the outline code values, from 1 - 255. If length is any, the value is zero.
Separator (Mask)stringThe character used to separate custom outline code levels. The following values are examples; however, any symbol may be used as the custom outline code separator:
. Period (default)
- Minus
+ Plus
/ Forward slash

Top

WBSMasks

The table of entries that define an outline code mask. This section represented as XML is as follows:

	<WBSMasks>
		<VerifyUniqueCodes />
		<GenerateCodes />
		<Prefix />
		<WBSMask>
			<Level />
			<Type />
			<Length />
			<Separator />
		</WBSMask>
	</WBSMasks>

 Column NameData TypeDescription
VerifyUniqueCodesBooleanIndicates whether WBS codes are unique for new tasks.
GenerateCodesBooleanIndicates whether WBS codes are generated for new tasks.
Prefixstring(50)The prefix for all WBS codes.
Level (WBSMask)integerThe level that has been assigned to each WBS level, beginning with 1.
Type (WBSMask)integerThe type of code string for first-level tasks:
0 Numbers (ordered); a numeric WBS code for this level (default).
1 Uppercase Letters (ordered); uppercase, alphabetical WBS codes (for example, A, B, and C for the first three summary tasks in the project).
2 Lowercase Letters (ordered); lowercase, alphabetical WBS codes (for example, a, b, and c for the first three summary tasks in the project).
3 Characters (unordered); any combination of numbers and uppercase or lowercase letters (for example, Arch1, Const1, or Insp1) for the first three summary tasks in the project). Microsoft Project displays an asterisk (*) in the custom outline field until you type or enter a string of characters for this code.
Length (WBSMask)stringThe maximum length in characters of the WBS mask values, from 1 - 255. If length is any, the value is zero.
Separator (WBSMask)stringThe character used to separate the WBS mask. The following values are examples, however any symbol may be used as the WBS Mask separator:
. Period (default)
- Minus
+ Plus
/ Forward slash

Top

ExtendedAttribute

Each of the individual extended attributes are defined with the following elements. There are no limits to the number of children that may appear, but Microsoft Project will only accept the default names for extended attributes (for example, Flag1, Flag2 ).

Note When loading a project stored as XML data, a maximum of 5000 ValueList elements and 128 Indicators elements will be recognized by Microsoft Project. All others will be ignored.

This section represented as XML is as follows:

	<ExtendedAttributes>
		<ExtendedAttribute>
			<FieldID />
			<FieldName />
			<Alias />
			<PhoneticAlias />
			<RollupType />
			<CalculationType />
			<Formula />
			<RestrictValues />
			<AppendNewValues />
			<Default />
			<ValueList>
	 			<Value>
		 			<ID />
			 		<Value />
				 	<Description />
				 </Value>
			 </ValueList>
			<Type />
		</ExtendedAttribute>	
	</ExtendedAttributes>

 Column NameData TypeDescription
FieldIDstringThe localized name of the field; you should not use this to identify uniqueness across versions.
FieldNamestringThe name of the custom field.
Aliasstring(50)The alias of the custom field.
PhoneticAliasstringContains phonetic information in either Hiragana or Katakana for an extended attribute; used only in the Japanese version of Microsoft Project.
RollupTypeintegerIndicates the method used to calculate roll-ups:
0 Maximum (OR for flag fields)
1 Minimum (AND for flag fields)
2 Count all
3 Sum
4 Average
5 Average, first sub-level
4 Count, first sub-level
4 Count, nonsummaries
CalculationTypeintegerIndicates whether roll-ups are calculated for task and group summary rows:
0 None
1 Rollup
2 Calculation
FormulastringThe formula that Microsoft Project uses to populate the custom field.
RestrictValuesBooleanIndicates whether only values in the list are allowed in the file.
AppendNewValuesBooleanIndicates whether new values added to the project are automatically added to the list.
DefaultintegerRefers to the ID of the default value in the list; not used if there is no default set.
ID (Value)integerThe unique ID of the value across the project.
Value (Value)stringThe actual value.
Description (Value)stringThe description of the value in the list.

Top

Calendar

Calendars are used to define standard working and nonworking times. A project must have one base calendar. Tasks and resources may have their own calendars, which are based on a base calendar. This section represented as XML is as follows:

	<Calendars>
		<Calendar>
			<UID />
			<Name />
			<IsBaseCalendar />
			<BaseCalendarUID />
			<WeekDays>
				<WeekDay>
					<DayType />
					<DayWorking />
					<TimePeriod>
						<FromDate />
						<ToDate />
					</TimePeriod>
					<WorkingTimes>
						<WorkingTime>
							<FromTime />
							<ToTime />
						</WorkingTime>
					</WorkingTimes>
				</Weekday>
			</Weekdays>
		</Calendar>
	</Calendars>

 Column NameData TypeDescription
UIDintegerThe unique ID for the calendar.
Namestring(512)The name of the calendar.
IsBaseCalendarBooleanIndicates whether the calendar is a base calendar.
BaseCalendarUIDintegerThe unique ID for the base calendar on which this calendar depends; only used if this calendar is not a base calendar.
DayType (Weekday)integerThe type of working day:
0 Exception
1 Monday
2 Tuesday
3 Wednesday
4 Thursday
5 Friday
6 Saturday
7 Sunday
DayWorking (Weekday)BooleanIndicates whether the specified date or date type is a working day.
TimePeriod (Weekday)Defines a set of exception days:
FromDate datetime The start of the exception time.
ToDate datetime The end of the exception time.
WorkingTimes (Weekday)The collection of working times that define the time worked during the weekday. There must be at least one working time, and there may be no more than five. The following elements make up the collection of working times:
FromTime time The start of the working time.
ToTime time The end of the working time.

Top

Task

The collection of tasks that make up a project. There must be at least one task in a Tasks collection. This section represented as XML is as follows:

	<Tasks>
		<Task>
			<UID />
			<ID />
			<Name />
			<Type />
			<IsNull />
			<CreateDate />
			<Contact />
			<WBS />
			<WBSLevel />
			<OutlineNumber />
			<OutlineLevel />
			<Priority />
			<Start />
			<Finish />
			<Duration />
			<DurationFormat />
			<Work />
			<Stop />
			<Resume />
			<ResumeValid />
			<EffortDriven />
			<Recurring />
			<OverAllocated />
			<Estimated />
			<Milestone />
			<Summary />
			<Critical />
			<IsSubproject />
			<IsSubprojectReadOnly />
			<SubprojectName />
			<ExternalTask />
			<ExternalTaskProject />
			<EarlyStart />
			<EarlyFinish />
			<LateStart />
			<LateFinish />
			<StartVariance />
			<FinishVariance />
			<WorkVariance />
			<FreeSlack />
			<TotalSlack />
			<FixedCost />
			<FixedCostAccrual />
			<PercentComplete />
			<PercentWorkComplete />
			<Cost />
			<OvertimeCost />
			<OvertimeWork />
			<ActualStart />
			<ActualFinish />
			<ActualDuration />
			<ActualCost />
			<ActualOvertimeCost />
			<ActualWork />
			<ActualOvertimeWork />
			<RegularWork />
			<RemainingDuration />
			<RemainingCost />
			<RemainingWork />
			<RemainingOvertimeCost />
			<RemainingOvertimeWork />
			<ACWP />
			<CV />
			<ConstraintType />
			<CalendarUID />
			<ConstraintDate />
			<Deadline />
			<LevelAssignments />
			<LevelingCanSplit />
			<LevelingDelay />
			<PreLeveledStart />
			<PreLeveledFinish />
			<Hyperlink />
			<HyperlinkAddress />
			<HyperlinkSubAddress />
			<IgnoreResourceCalendar />
			<Notes />
			<HideBar />
			<Rollup />
			<BCWS />
			<BCWP />
			<PhysicalPercentComplete />
			<EarnedValueMethod />
			<PredecessorLink>
				<PredecessorUID />
				<Type />
				<CrossProject />
				<CrossProjectName />
				<LinkLag />
				<LagFormat />
			</PredecessorLink>
			<ExtendedAttribute>
				<UID />
				<FieldID />
				<Value />
				<ValueID />
				<DurationFormat />
			</ExtendedAttribute>
			<Baseline>
				<TimephasedData />
				<Number />
				<Interim />
				<Start />
				<Finish />
				<Duration />
				<DurationFormat />
				<EstimatedDuration />
				<Work />
				<Cost />
				<BCWS />
				<BCWP />
			</Baseline>
			<OutlineCode>
				<UID />
				<FieldID />
				<ValueID />
			</OutlineCode>
			<TimephasedData />
		</Task>
	</Tasks>

 Column NameData TypeDescription
UIDintegerThe unique ID for the task.
IDintegerThe position identifier of the task in the list of tasks.
Namestring(512) The name of the task.
TypeintegerThe type of task:
0 Fixed units
1 Fixed duration
2 Fixed work
IsNullBooleanIndicates whether a task is null.
CreateDatedatetimeThe date and time that a task was added to a project.
Contactstring(512)The name of the individual who is responsible for a task.
WBSintegerA unique code (WBS) used to represent a task's position within the hierarchical structure of the project.
WBSLevelintegerThe right-most level of the task. For example, if the task level was A.01.03, the right-most level would be 03.
OutlineNumberstring(512)The number that indicates the level of a task in the project outline hierarchy.
OutlineLevelintegerIndicates the exact position of a task in the outline. For example, 7.2 indicates that a task is the second subtask under the seventh top-level summary task.
PriorityintegerIndicates the level of importance assigned to a task, with 500 being no priority; the higher the number, the higher the priority:
0 Lowest priority; task will always be leveled
1000 Highest priority; task will never be leveled
StartdatetimeThe date and time that a task is scheduled to begin.
FinishdatetimeThe date and time that a task is scheduled to be completed.
DurationdurationThe total span of active working time for a task.
DurationFormatintegerThe format used to show the duration of the task:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
WorkdurationThe total amount of work scheduled to be performed on a task by all assigned resources.
StopdatetimeThe date that represents the end of the actual portion of a task.
ResumedatetimeThe date the remaining portion of a task is scheduled to resume.
ResumeValidBooleanIndicates whether the task can be resumed.
EffortDrivenBooleanIndicates whether scheduling for a task is effort-driven.
RecurringBooleanIndicates whether a task is a recurring task.
OverAllocatedBooleanIndicates whether an assigned resource on a task has been assigned to more work on the task than can be done within the normal working capacity.
EstimatedBooleanIndicates whether the task's duration is flagged as an estimate.
MilestoneBooleanIndicates whether a task is a milestone.
SummaryBooleanIndicates whether a task is a summary task.
CriticalBooleanIndicates whether a task has room in the schedule to slip, or if it is on the critical path.
IsSubprojectBooleanIndicates whether the task is an inserted project.
IsSubprojectReadOnlyBooleanIndicates whether the inserted project is a read-only project.
SubprojectNamestring(512)The source location of the inserted project.
ExternalTaskBooleanIndicates whether the task is linked from another project or whether it originated in the current project.
ExternalTaskProjectstring(512)The source of an external task.
EarlyStartdatetimeThe earliest date that a task could possibly begin, based on the early start dates of predecessor and successor tasks and other constraints.
EarlyFinishdatetimeThe earliest date that a task could possibly finish, based on early finish dates of predecessor and successor tasks, other constraints, and any leveling delay.
LateStartdatetimeThe latest date that a task can start without delaying the finish of the project.
LateFinishdatetimeThe latest date that a task can finish without delaying the finish of the project.
StartVarianceintegerThe difference between a task's baseline start date and its currently scheduled start date.
FinishVarianceintegerThe amount of time that represents the difference between a task's baseline finish date and its current finish date.
WorkVarianceFloatThe difference between a task's baseline work and the currently scheduled work.
FreeSlackintegerThe amount of time that a task can be delayed without delaying any successor tasks; if a task has zero successor tasks, free slack is the amount of time a task can be delayed without delaying the entire project.
TotalSlackintegerThe amount of time a task can be delayed without delaying a project's finish date.
FixedCostFloatA task expense that is not associated with a resource cost.
FixedCostAccrualintegerIndicates how fixed costs are to be charged, or accrued, to the cost of a task:
1 Start; costs are accrued as soon as the task starts, as indicated by a date entered in the ActualStart field.
2 Prorated (default); costs accrue as work is scheduled to occur and as actual work is reported.
3 End; costs are not incurred until remaining work is zero.
PercentCompleteintegerThe current status of a task, expressed as the percentage of the task's duration that has been completed.
PercentWorkCompleteintegerThe current status of a task, expressed as the percentage of the task's work that has been completed.
CostdecimalThe total scheduled, or projected, cost for a task, based on costs already incurred for work performed by all resources assigned to the task, in addition to the costs planned for the remaining work for the assignment.
OvertimeCostdecimalThe sum of the actual overtime cost for the task.
OvertimeWorkdurationThe amount of overtime scheduled to be performed by all resources assigned to a task and charged at overtime rates.
ActualStartdatetimeThe date and time that a task actually began.
ActualFinishdatetimeThe date and time that a task actually finished.
ActualDurationdurationThe span of actual working time for a task so far, based on the scheduled duration and current remaining work or percent complete. Actual duration can be calculated in two ways, either based on Percent Complete or Remaining Duration.
ActualCostdecimalThe costs incurred for work already performed by all resources on a task, along with any other recorded costs associated with the task.
ActualOvertimeCostdecimalThe costs incurred for overtime work already performed on a task by all assigned resources.
ActualWorkdurationThe amount of work that has already been done by the resources assigned to a task.
ActualOvertimeWorkdurationThe actual amount of overtime work already performed by all resources assigned to a task.
RegularWorkdurationThe total amount of non-overtime work scheduled to be performed by all resources assigned to a task.
RemainingDurationdurationThe amount of time required to complete the unfinished portion of a task. Remaining duration can be calculated in two ways (either based on Percent Complete or Actual Duration).
RemainingCostdecimalThe remaining scheduled expense of a task that will be incurred in completing the remaining scheduled work by all resources assigned to a task.
RemainingWorkdurationThe amount of time still required by all assigned resources to complete a task.
RemainingOvertimeCostdecimalThe remaining scheduled overtime expense for a task.
RemainingOvertimeWorkdurationThe amount of remaining overtime scheduled by all assigned resources to complete a task.
ACWPdecimalThe costs incurred for work already done on a task, up to the project status date or today's date.
CVdecimalThe difference between how much it should have cost to achieve the current level of completion on the task and how much it has actually cost to achieve the current level of completion up to the status date or today's date; also called cost variance.
ConstraintTypeintegerThe constraint on a scheduled task:
0 As soon as possible
1 As late as possible
2 Must start on
3 Must finish on
4 Start no earlier than
5 Start no later than
6 Finish no earlier than
7 Finish no later than
CalendarUIDintegerRefers to a valid UID in the Calendar section of the Microsoft Project XML Schema.
ConstraintDatedatetimeIndicates the constrained start or finish date as defined in TaskConstraintType. Required unless TaskContstraintType is set to As late as possible or As soon as possible.
DeadlinedatetimeThe date entered as a deadline for the task.
LevelAssignmentsBooleanIndicates whether the leveling function can delay and split individual assignments (rather than the entire task) to resolve overallocations.
LevelingCanSplitBooleanIndicates whether the resource leveling function can cause splits on remaining work on a task.
LevelingDelayintegerThe amount of time that a task is to be delayed from its early start date as a result of resource leveling.
PreLeveledStartdatetimeThe start date of a task as it was before resource leveling was done.
PreLeveledFinishdatetimeThe finish date of a task as it was before resource leveling was done.
Hyperlinkstring(512)The title or explanatory text for a hyperlink associated with a task.
HyperlinkAddressstring(512)The address for a hyperlink associated with a task.
HyperlinkSubAddressstring(512)The specific location in a document within a hyperlink associated with a task.
IgnoreResourceCalendarBooleanIndicates whether the scheduling of the task takes into account the calendars of the resources assigned to the task.
NotesstringNotes entered about a task.
HideBarBooleanIndicates whether the Gantt bars and Calendar bars for a task are hidden.
RollupBooleanIndicates whether the summary task bar displays rolled-up bars or whether information on the subtask Gantt bars will be rolled up to the summary task bar; must be set to True for subtasks to be rolled up to summary tasks.
BCWSdecimalThe cumulative timephased baseline costs up to the status date or today's date; also known as budgeted cost of work performed.
BCWPdecimalThe cumulative value of the task's timephased percent complete multiplied by the task's timephased baseline cost, up to the status date or today's date; also known as budgeted cost of work performed.
PhysicalPercentCompleteintegerThe physical percent of the total work on a task that has been completed.
EarnedValueMethodintegerIndicates the type of earned value method to use:
0 Use % complete
1 Use physical % complete
PredecessorUID (PredecessorLink)integerThe unique ID number for the predecessor tasks on which this task depends before it can be started or finished.
Type (PredecessorLink)integer
0 FF (finish-to-finish)
1 FS (finish-to-start)
2 SF (start-to-finish)
3 SS (start-to-start)
CrossProject (PredecessorLink)BooleanIndicates whether the task predecessor is part of another project.
CrossProjectName (PredecessorLink)stringThe external predecessor project.
LinkLag (PredecessorLink)integerThe amount of lag.
LagFormat (PredecessorLink)integerIndicates the format for the amount of lag specified in PredecessorLag:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
UID (ExtendedAttribute)integerThe unique ID for the extended attribute.
FieldID (ExtendedAttribute)integerThe field ID for the extended attribute.
Value (ExtendedAttribute)stringThe actual value of the extended attribute.
ValueID (ExtendedAttribute)stringThe ID of the value in the extended attribute lookup table.
DurationFormat (ExtendedAttribute)stringThe duration format for the extended attribute:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
TimephasedData (Baseline)TimePhased DataTypeThe timephased data block associated with the task baseline.
Number (Baseline)intetgerThe unique number of the baseline data record.
Interim (Baseline)BooleanIndicates whether the baseline is an interim baseline.
Start (Baseline)datetimeThe scheduled start date of the task when the baseline was saved.
Finish (Baseline)datetimeThe scheduled finish date of the task when the baseline was saved.
Duration (Baseline)durationThe scheduled duration of the task when the baseline was saved.
DurationFormat (Baseline)durationThe format for expressing the Duration of the Task baseline:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
EstimatedDuration (Baseline)BooleanIndicates whether the duration of the task is estimated.
Work (Baseline)durationThe scheduled work for the task when the baseline was saved.
Cost (Baseline)decimalThe projected cost of the task when the baseline was saved.
BCWS (Baseline)decimalThe cumulative timephased baseline costs up to the status date or today's date; also known as budgeted cost of work scheduled.
BCWP (Baseline)decimalThe cumulative value of the task's timephased percent complete multiplied by the task's timephased baseline cost, up to the status date or today's date; also known as budgeted cost of work performed.
UID (OutlineCode)integerThe unique ID for the value in the outline code collection.
FieldID (OutlineCode)stringThe localized name of the field.
ValueID (OutlineCode)integerThe unique ID in the value list associated with the definition in the outline code collection.
TimephasedDataTimePhased DataTypeThe timephased data block associated with the task.

Top

Resource

The collection of resources that make up the project. There must be at least one resource in each Resources collection. This section represented as XML is as follows:

	<Resources>
		<Resource>
			<UID />
			<ID />
			<Name />
			<Type />
			<IsNull />
			<Initials />
			<Phonetics />
			<NTAccount />
			<MaterialLabel />
			<Code />
			<Group />
			<WorkGroup />
			<EmailAddress />
			<Hyperlink />
			<HyperlinkAddress />
			<HyperlinkSubAddress />
			<MaxUnits />
			<PeakUnits />
			<OverAllocated />
			<AvailableFrom />
			<AvailableTo />
			<Start />
			<Finish />
			<CanLevel />
			<AccrueAt />
			<Work />
			<RegularWork />
			<OvertimeWork />
			<ActualWork />
			<RemainingWork />
			<ActualOvertimeWork />
			<RemainingOvertimeWork />
			<PercentWorkComplete />
			<StandardRate />
			<StandardRateFormat />
			<Cost />
			<OvertimeRate />
			<OvertimeRateFormat />
			<OvertimeCost />
			<CostPerUse />
			<ActualCost />
			<ActualOvertimeCost />
			<RemainingCost />
			<RemainingOvertimeCost />
			<WorkVariance />
			<CostVariance />
			<SV />
			<CV />
			<ACWP />
			<CalendarUID />
			<Notes />
			<BCWS />
			<BCWP />
			<IsGeneric />
			<IsInactive />
			<ExtendedAttribute>
				<UID />
				<FieldID />
				<Value />
				<ValueID />
				<DurationFormat />
			</ExtendedAttribute>
			<Baseline>
				<Number />
				<Work />
				<Cost />
				<BCWS />
				<BCWP />
			</Baseline>
			<OutlineCode>
				<UID />
				<FieldID />
				<ValueID />
			</OutlineCode>	
			<AvailabilityPeriods>
				<AvailabilityPeriod>
					<AvailableFrom />
					<AvailableTo />
					<AvailableUnits />
				</AvailabilityPeriod>
			</AvailabilityPeriods>
			<Rates>
				<Rate>
					<RatesFrom />
					<RatesTo />
					<RateTable />
					<StandardRate />
					<StandardRateFormat />
					<OvertimeRate />
					<OvertimeRateFormat />
					<CostPerUse />
				</Rate>
			</Rates>
			<TimephasedData />
		</Resource>
	</Resources>

 Column NameData TypeDescription
UIDintegerThe unique ID for the resource.
IDintegerThe position identifier of the resource within the list of resources.
Namestring(512)The name of the resource; must be unique within the enterprise whether or not the resource is active.
TypeintegerThe resource type (work or material):
0 Material (consumable supplies like steel, concrete, or soil)
1 Work (people and equipment)
IsNullBooleanIndicates whether the resource is a null resource.
Initialsstring(512)The initials of a resource name.
Phoneticsstring(512)Contains phonetic information in either Hiragana or Katakana for resource names; used only in the Japanese version of Microsoft Project.
NTAccountstring(512)The Windows NT Account name for a resource; for example: domain name\user name.
MaterialLabelstring(512)The unit of measurement entered for a material resource, for example, tons, boxes, or cubic yards. This is used in conjunction with the material resource's Assignment Units and is only available if Type is set to 1.
Codestring(512)A code, abbreviation, or number entered as part of a resource's information.
Groupstring(512)The name of the group the resource belongs to.
WorkGroupintegerThe messaging method used to communicate with a project team:
0 Default
1 None; workgroup messaging is not used on this project
2 E-mail only
3 Web (Microsoft Project Web Access)
EmailAddressstring(512)The e-mail address of a resource.
Hyperlinkstring(512)The title or explanatory text for a hyperlink associated with a resource.
HyperlinkAddressstring(512)The address for a hyperlink associated with a resource.
HyperlinkSubAddressstring(512)The specific location in a document within a hyperlink associated with a resource.
MaxUnitsFloatThe maximum percentage, or number of units, that represents the maximum capacity that a resource is available to accomplish any tasks during the current time period:
.00-.99 Resource is 0%-99% available for the specified task
1.00 Resource is 100% available for the specified task (default)
PeakUnitsFloatThe maximum percentage, or number of units, that a resource is assigned at any one time for all tasks assigned to the resource.
OverAllocatedBooleanIndicates whether a resource is assigned to do more work on all assigned tasks than can be done within the resource's normal work capacity.
AvailableFromdatetimeThe starting date that a resource is available for work at the units specified for the current time period.
AvailableTodatetimeThe ending date that a resource will be available for work at the units specified for the current time period.
Start datetimeThe date and time that a resource is scheduled to start work on all assigned tasks.
FinishdatetimeThe date and time that a resource is scheduled to complete work on all assigned tasks.
CanLevelBooleanIndicates whether resource leveling can be done with a resource.
AccrueAtintegerIndicates how and when resource standard and overtime costs are to be charged, or accrued, to the cost of a task:
1 Start; costs are accrued as soon as the task starts, as indicated by a date entered in the ActualStart field.
2 End; costs are not incurred until remaining work is zero.
3 Pro-rated (default); costs accrue as work is scheduled to occur and as actual work is reported.
WorkdurationThe total amount of work scheduled to be performed by a resource on all assigned tasks.
RegularWorkdurationThe total amount of non-overtime work scheduled to be performed for all assignments assigned to a resource.
OvertimeWorkdurationThe amount of overtime to be performed for all tasks assigned to a resource and charged at the resource's overtime rate.
ActualWorkdurationThe actual amount of work that has already been done for all assignments assigned to a resource.
RemainingWorkdurationThe amount of time, or person-hours, still required by a resource to complete all assigned tasks.
ActualOvertimeWorkdurationThe actual amount of overtime work already performed for all assignments assigned to a resource.
RemainingOvertimeWorkdurationThe remaining amount of overtime required by a resource to complete all tasks.
PercentWorkCompleteintegerThe current status of all tasks assigned to a resource, expressed as the total percentage of the resource's work that has been completed.
StandardRatedecimalThe rate of pay for regular, non-overtime work performed by a resource.
StandardRateFormatdecimalThe units used to display the standard rate:
1 m
2 h
3 d
4 w
5 mo
8 y
CostdecimalThe total scheduled cost for a resource for all assigned tasks, based on costs already incurred for work performed by the resource on all assigned tasks in addition to the costs planned for all remaining work.
OvertimeRatedecimalThe rate of pay for overtime work performed by a resource.
OvertimeRateFormatdecimalThe units used to display the standard rate:
1 m
2 h
3 d
4 w
5 mo
8 y
OvertimeCostdecimalThe total overtime cost for a resource on all assigned tasks.
CostPerUsedecimalThe cost that accrues each time a resource is used.
ActualCostdecimalThe sum of costs incurred for the work already performed by a resource for all assigned tasks.
ActualOvertimeCostdecimalThe cost incurred for overtime work already performed by a resource for all assigned tasks.
RemainingCostdecimalThe remaining scheduled expense that will be incurred in completing the remaining work assigned to a resource.
RemainingOvertimeCostdecimalThe remaining scheduled overtime expense of a resource that will be incurred in completing the remaining planned overtime work by a resource on all assigned tasks.
WorkVarianceFloatThe difference between a resource's total baseline work and the currently scheduled work.
CostVarianceFloatThe difference between the baseline cost and total cost for a resource.
SVdecimalThe difference in cost between the current progress and the baseline plan of all the resource's assigned tasks up to the status date or today's date; also called Earned Value Schedule Variance.
CVdecimalThe difference between how much it should have cost for the resource to achieve the current level of completion, and how much it has actually cost to achieve the current level of completion, up to the status date or today's date.
ACWPdecimalThe sum of actual cost of work performed (ACWP) values for all of a resource's assignments, up to the status date or today's date.
CalendarUIDintegerThe unique ID for the calendar associated with this resource.
NotesintegerNotes about a resource.
BCWSdecimalThe rolled-up summary of a resource's BCWS values for all assigned tasks; also called budgeted cost of work scheduled.
BCWPdecimalThe rolled-up summary of a resource's BCWP values for all assigned tasks, calculated up to the status date or today's date; also called budgeted cost of work performed.
IsGenericBooleanIndicates whether the resource is an enterprise-level generic resource.
IsInactiveBooleanIndicates whether the resource is an Active (Enabled) or Inactive user.
UID (ExtendedAttribute)integerThe unique ID for the extended attribute.
FieldID (ExtendedAttribute)integerThe field ID for the extended attribute.
Value (ExtendedAttribute)stringThe actual value of the extended attribute.
ValueID (ExtendedAttribute)stringThe ID of the value in the extended attribute lookup table.
DurationFormat (ExtendedAttribute)stringThe duration format for the extended attribute:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
Number (Baseline)integerThe unique number for the baseline data record.
Work (Baseline)floatThe work assigned to the resource when the baseline is saved.
Cost (Baseline)floatThe projected cost for the resource when the baseline was saved.
BCWS (Baseline)decimalThe budgeted cost of work performed for the resource.
BCWP (Baseline)decimalThe budgeted cost of the work performed by the resource on the project to-date.
UID (OutlineCode)integerThe unique ID for the value in the outline code collection.
FieldID (OutlineCode)stringThe localized name of the field.
ValueID (OutlineCode)integerThe unique ID in the value list associated with the definition in the outline code collection.
AvailableFrom (AvailabiltyPeriod)datetimeThe starting date that a resource is available for work at the units specified for the current time period.
AvailableTo (AvailabiltyPeriod)datetimeThe ending date that a resource will be available for work at the units specified for the current time period.
AvailableUnits (AvailabiltyPeriod)floatThe percentage that the resource is available during the specified time period.
RatesFrom (Rate)datetimeThe date the rate becomes available.
RatesTo (Rate)datetimeThe last date the rate is available.
RateTable (Rate)integerThe unique identifier of the cost rate table for the resource:
0 A
1 B
2 C
3 D
4 E
StandardRate (Rate)decimalThe standard rate for the resource for the defined period.
StandardRateFormat (Rate)integerThe units used to display the standard rate:
1 m
2 h
3 d
4 w
5 mo
8 y
OvertimeRate (Rate)decimalThe overtime rate for the resource for the defined period
OvertimeRateFormat (Rate)integerThe units used to display the overtime rate:
1 m
2 h
3 d
4 w
5 mo
8 y
CostPerUse (Rate)decimalThe cost per use of the resource. This value is as of the current date if a rate table exists for the resource.
TimephasedDataTimePhased DataTypeThe timephased data block associated with the task.

Top

Assignment

The collection of assignments that make up the project. There must be at least one assignment in each Assignments collection. This section represented as XML is as follows:

	<Assignments>
		<Assignment>
			<UID />
			<TaskUID />
			<ResourceUID />
			<PercentWorkComplete />
			<ActualCost />
			<ActualFinish />
			<ActualOvertimeCost />
			<ActualOvertimeWork />
			<ActualStart />
			<ActualWork />
			<ACWP />
			<Confirmed />
			<Cost />
			<CostRateTable />
			<CostVariance />
			<CV />
			<Delay />
			<Finish />
			<FinishVariance />
			<Hyperlink />
			<HyperlinkAddress />
			<HyperlinkSubAddress />
			<WorkVariance />
			<HasFixedRateUnits />
			<FixedMaterial />
			<LevelingDelay />
			<LinkedFields />
			<Milestone />
			<Notes />
			<Overallocated />
			<OvertimeCost />
			<OvertimeWork />
			<RegularWork />
			<RemainingCost />
			<RemainingOvertimeCost />
			<RemainingOvertimeWork />
			<RemainingWork />
			<ResponsePending />
			<Start />
			<Stop />
			<Resume />
			<StartVariance />
			<Units />
			<UpdateNeeded />
			<VAC />
			<Work />
			<WorkContour />
			<BCWS />
			<BCWP />
			<ExtendedAttribute>
				<UID />
				<FieldID />
				<Value />
				<ValueID />
				<DurationFormat />
			</ExtendedAttribute>
			<Baseline>
				<TimephasedData />
				<Number />
				<Start />
				<Finish />
				<Work />
				<Cost />
				<BCWS />
				<BCWP />
			</Baseline>
			<TimephasedDataType />
		</Assignment>
	</Assignments>

 Column NameData TypeDescription
UIDintegerThe unique ID for the assignment.
TaskUIDintegerThe unique ID for the task.
ResourceUIDintegerThe unique ID for the resource.
PercentWorkCompleteintegerThe current status of an assignment, expressed as the percentage of the assignment's work that has been completed.
ActualCostdecimalThe cost incurred for work already performed by a resource on a task.
ActualFinishdatetimeThe date and time when an assignment was actually completed.
ActualOvertimeCostdecimalThe cost incurred for overtime work already performed by a resource on a task.
ActualOvertimeWorkdurationThe actual amount of overtime work already performed by a resource on an assigned task.
ActualStartdatetimeThe date and time that an assignment actually began.
ActualWorkdurationThe amount of work that has already been done by a resource on a task.
ACWPdecimalThe costs incurred for work already performed by a resource on a task up to the project status date or today's date; also called actual cost of work performed.
ConfirmedBooleanIndicates whether a resource assigned to a task has accepted or rejected the task assignment in response to a message assigning tasks to the resource.
CostdecimalThe total scheduled (or projected) cost for an assignment based on costs already incurred for work performed by the resource on a task, in addition to the costs planned for the remaining work for the assignment.
CostRateTableintegerIndicates which cost rate table to use for a resource on an assignment:
0 A (default)
1 B
2 C
3 D
4 E
CostVarianceFloatThe difference between the baseline cost and total cost for an assignment.
CVdecimalThe difference between how much it should have cost to achieve the current level of completion on the assignment and how much it has actually cost to achieve the current level of completion up to the status date or today's date.
DelayintegerThe amount of time a resource is to wait after the task start date before starting work on an assignment.
FinishdatetimeThe date and time that an assigned resource is scheduled to complete work on a task.
FinishVarianceintegerThe difference between an assignment's baseline finish date and its scheduled finish date.
Hyperlinkstring(512)The title or explanatory text for a hyperlink associated with an assignment.
HyperlinkAddressstring(512)The address for a hyperlink associated with an assignment.
HyperlinkSubAddressstring(512)The specific location in a document within a hyperlink associated with an assignment.
WorkVarianceFloatThe difference between an assignment's baseline work and the currently scheduled work.
HasFixedRateUnitsBooleanIndicates whether an assignment has fixed rate units.
FixedMaterialBooleanIndicates whether the consumption of the assigned material resource occurs in a single, fixed amount.
LevelingDelayintegerThe amount of time that an assignment is to be delayed from the scheduled start date as a result of resource leveling.
LinkedFieldsBooleanIndicates whether there are OLE links to the assignment.
MilestoneBooleanIndicates whether the assignment task is a milestone.
NotesstringNotes about an assignment.
OverallocatedBooleanIndicates whether a resource is assigned to more work on a specific task than can be done within the resource's normal working capacity.
OvertimeCostdecimalThe total overtime cost for a resource assignment.
OvertimeWorkdurationThe amount of overtime to be performed by a resource on a task; charged at the resource's overtime rate.
RegularWorkdurationThe total amount of non-overtime work scheduled to be performed by a resource assigned to a task.
RemainingCostdecimalThe costs associated with completing all remaining scheduled work by any resources on a specific task.
RemainingOvertimeCostdecimalThe remaining scheduled overtime expense for an assignment.
RemainingOvertimeWorkdurationThe amount of overtime work that remains on an assignment.
RemainingWorkdurationThe amount of time required by a resource assigned to a task to complete an assignment.
ResponsePendingBooleanIndicates whether an answer has been received from a message sent to a resource assigned to a task notifying the resource of the assignment.
StartdatetimeThe date and time that an assigned resource is scheduled to begin working on a task.
StopdatetimeThe date the assignment was stopped.
ResumedatetimeThe date the assignment was resumed.
StartVarianceintegerThe difference between an assignment's baseline start date and its currently scheduled start date.
UnitsfloatThe number of units for which a resource is assigned to a task, expressed as a percentage of 100 %, assuming a resource's MaxUnits value is 100%.
UpdateNeededBooleanIndicates whether a TeamUpdate message should be sent to the resource assigned to a task because of changes to the start date, finish date, or resource reassignments.
VACfloatThe variance at completion (VAC) between the baseline cost and the total cost for an assignment on a task.
WorkdurationThe total amount of work scheduled to be performed by a resource on a task.
WorkContourintegerIndicates how work for an assignment is to be distributed across the duration of the assignment:
0 Flat (default)
1 Back Loaded
2 Front Loaded
3 Double Peak
4 Early Peak
5 Late Peak
6 Bell
7 Turtle
8 Contoured
BCWSdecimalThe budgeted cost of work on the assignment.
BCWPdecimalThe budgeted cost of the work performed on the assignment to-date.
UID (ExtendedAttribute)integerThe unique ID for the extended attribute.
FieldID (ExtendedAttribute)integerThe field ID for the extended attribute.
Value (ExtendedAttribute)stringThe actual value of the extended attribute.
ValueID (ExtendedAttribute)integerThe ID of the value in the extended attribute lookup table.
DurationFormat (ExtendedAttribute)stringThe duration format for the extended attribute:
3 m
4 em
5 h
6 eh
7 d
8 ed
9 w
10 ew
11 mo
12 emo
19 %
20 e%
21 Null
35 m?
36 em?
37 h?
38 eh?
39 d?
40 ed?
41 w?
42 ew?
43 mo?
44 emo?
51 %?
52 e%?
53 Null
TimephasedData (Baseline)TimePhased DataTypeThe timephased data associated with the baseline.
Number (Baseline)stringThe unique number for the baseline data record.
Start (Baseline)stringThe scheduled start date of the assignment when the baseline was saved.
Finish (Baseline)stringThe planned finish date for assignments.
Work (Baseline)floatThe total amount of work scheduled on the assignment when the baseline was saved.
Cost (Baseline)floatThe total projected cost of the assignment when the baseline was saved.
BCWS (Baseline)decimalThe budgeted cost of work on the assignment.
BCWP (Baseline)decimalThe budgeted cost of the work performed on the assignment to-date.
TimephasedDataTimePhased DataTypeThe timephased data block associated with the task.

Top