ProcessTemplate XML Elements Reference
You can customize the root file for a process template to add or remove plug-in files. The root file defines all the plug-ins and all the tasks that the New Team Project Wizard will process. For the process templates for Microsoft Solutions Framework (MSF), the root file is named ProcessTemplate and located in the container folder for the process template files. For more information, see Working with Process Template Files.
The parent element of the root plug-in file is the ProcessTemplate element, which must have only one metadata and one groups element defined. You must assign a unique name to each process template within a team project collection, and the name cannot be longer than 124 Unicode characters.
Warning
If you upload a template with the same name as an existing template, the existing template will be overwritten.
In this topic
ProcessTemplate Syntax Structure
Metadata Element Reference
Groups Element Reference
ProcessTemplate Syntax Structure
The root plug-in for process templates must be specified in its own file in the ProcessTemplate container element and conform to the schema for process templates, which is defined in the ProcessTemplate.xsd and ProcessTemplateItem.xsd files. You can download the schema files for process templates from the following page on the Microsoft website: Process Template and Work Item Schemas for Visual Studio Team Foundation.
The following example shows the structure of the root ProcessTemplate element. For a more extensive example, see Define the Root Tasks Using the Process Template Plug-in File.
<?xml version="1.0" encoding="utf-8"?>
<ProcessTemplate>
<metadata> . . . </metadata>
<groups> . . .</groups>
</ProcessTemplate>
Back to top
Metadata Element Reference
The following syntax shows the structure of the metadata element and its child elements.
<metadata>
<name>ProcessTemplateName</name>
<description>ProcessTemplateDescription </description>
<plugins>
<plugin name="Microsoft.ProjectCreationWizard.pluginID" wizardPage="true | false" />
. . .
</plugins>
</metadata>
Element |
Syntax |
Description |
---|---|---|
description |
|
Required child element of metadata. Defines the text of the description that appears in the New Team Project Wizard for the process template. |
metadata |
|
Required child element of ProcessTemplate. Container element for specifying required information for the plug-in to be processed by the New Team Project Wizard. |
name |
|
Required child element of metadata. Defines the name of the process template, which must be unique across the team project collection. The maximum length of the name is 124 characters. |
plugin |
|
Required child element of plugins. Specifies the name of a plug-in file to include in the process template creation and specifies whether the plug-in should have a visible page in the New Team Project Wizard. |
plugins |
|
Required child element of metadata. Container element that defines the plug-ins for the process template. |
version |
|
Optional child element of metadata. Specifies a unique ID and major and minor revision numbers to identify the version of the process template. |
Back to top
Groups Element Reference
The following syntax shows the structure of the groups element and its child elements.
<groups>
<group id="groupId" description="GroupDescription" completionMessage="SuccessMessage">
<dependencies>
<dependency groupId="dependentGroupId" />
. . .
</dependencies>
<taskList filename="RelativePathAndFileName" />
</group>
. . .
</groups>
Element |
Syntax |
Description |
---|---|---|
dependencies |
|
Required child element of group. Specifies dependencies that the group has on other groups. |
dependency |
|
Optional child element of dependencies. Specifies the ID of another task group on which this group depends. The other group must complete its tasks before this task group can start. |
group |
|
Required child element of groups. Identifies a set of tasks for a plug-in to run during project creation. The following values are valid for each attribute:
|
groups |
|
Required child element of ProcessTemplate. Container element that defines the set of task groups that will run during project creation. |
tasklist |
|
Specifies an XML file that contains the list of tasks to run. The list of tasks for a group must always be in a separate XML file. For more information about how to specify these files, see Define the Tasks to Process a Plug-in. |
Back to top
See Also
Concepts
Working with Process Template Files
Define the Tasks to Process a Plug-in
Define Dependencies for Task Groups and Tasks in Plug-in Files
Define the Root Tasks Using the Process Template Plug-in File