Note that the HTML content must be prefixed with the correct namespace prefix, and the XHTML namespace must be included. XHTML is required as it will allow for tooling to help with validation and editting support. Do not Wrap your XHTML content with CDATA. Anywhere it says to use HTML content, you should be using XHTML which is the XML equivalent of HTML.

Obviously, the milestone, theme and appendix elements can be repeated as many times as necessary.

The XML plan must reside on the Eclipse Website. So, you'll need a local Eclipse Project which is shared with CVS Team Provider (Repository=:extssh:dev.eclipse.org:/cvsroot/org.eclipse, Module=www/your/project

Create an empty XML file in your project ("myplan_1_0.xml"). Copy and paste the raw XML from an existing XML plan into your local project. There are two variants:

Project Dash uses the project plan markup as the default namespace, which means that all XHTML needs to be qualified by the "html:" namespace tag. Use this if you anticipate little HTML contents.

Project DSDP-TM uses the XHTML markup as the default namespace, which means that all Plan elements need to be qualified by the "p:" namespace prefix. Use this if you anticipate much HTML contents, e.g. because you are carrying forward contents from an older HTML based project plan.

Start filling in the HTML contents and bugzilla queries. You can right-click > Validate to see if your document is valid according to the XSD. If you carry forward some older HTML, it might not be valid XHTML any more; there is tooling to automatically convert HTML into XHTML, e.g. http://valet.htmlhelp.com/tidy/

Particularly note that XHTML does not allow the following constructs: nested tags inside <p> elements; attributes like "width" or "background" in elements -- use a "style" markup instead.

Enclosing your HTML stuff inside a single

item which sets up the XHTML default namespace for the elements within it is one idea to avoid prefixing each element:

Inside your local plan xml, change the header which points to the XSL to read

<?xml-stylesheet type="text/xsl" href="project-plan-render.xsl"?>

. Now, open your plan XML with a browser like firefox and it should render correctly.

If you want to have strict XHTML validation, download the plan.xsd file into your local project, then edit the WTP XML Catalog Preferences to point to your local XSD rather than the common one. In the local XSD, exchange occurrences of processContents="skip" by processContents="strict".

Having the plan.xsd local, also allows you to right-click > Generate on it in order to generate a sample XML Template from the XSD. This is another option for starting your plan.

Note: In order for the plan to render, it MUST be valid against the schema it. It is highly recommended that you validate your XML against the schema. The Eclipse Web Tools project provides all the necessary tools to do the validation.

Bugs as Plan Items

The goal of the bugzilla queries is to support the use of bugzilla items for planning. The project team should assign target milestones to each bug, including both defects and enhancements. Additionally, the team should assign keywords (or keywords-in-titles) to each bug entry in order to classify them into themes. The bugzilla queries would then be, e.g., "all 2.6M1, 2.6M2, 2.6M3, ..., 2.6 bugs with keyword 'designforextensibility'", etc.

One option for mapping to the committed / proposed / deferred items is that all bugs with explicit milestones assigned are considered committed; those assigned a generic milestone or "---" are considered proposed; those assigned a milestone like "Future" are considered deferred. The DSDP-TM project uses this scheme, with keyword markup in the bugzilla subject line. Another idea is to only retrieve bugs with a "plan" or "investigate" keyword by the queries, or to only add bugs with specific priorities, in order to avoid flooding the plan with less interesting small items.

If a project chooses not to use bugzilla item for planning (contrary to collective wisdom of the senior Eclipse project leads), the project plan format allows arbitrary html text paragraph(s) instead.

Specifying the Plan

The project plan xml file is placed in the project's website CVS. The project meta-data item "projectplanurl" is then defined to point to that xml file. Use the portal to modify the project meta-data.

Note that in addition for specifying your "current plan" in the Portal, bug 238434 is open requesting an ability to render arbitrary XML project plans as HTML.