Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [wtp-dev] Re: [wtp-committers] XML based milestone plans


Craig (and any other XSLT authors),

I see that you are using a $rel parameter to handle relative links. That let's you set it when the stylesheet is invoked. I used a different technique which lets the xml document tell the stylesheet where it is located.

In wtp.xsl, I used an XSLT variable to set the location of the Eclipse root directory relative to the location of the xml file. You might want to use this technique in the milestone plans so that you can be more flexible about where they get deployed. Here's how it works:

1. The xml document sets the location of the root as follows:

e.g. a document deployed at http://www.eclipse.org/webtools/wst/components/server/index.xml is 4 directories down from the root so it contains the element:

  <meta name="root" content="../../../../" />

2. The stylesheet sets the $root variable as follows:

<xsl:variable name="root">
        <xsl:choose>
                <xsl:when test="/html/head/meta[@name='root']/@content">
                         <xsl:value-of select="/html/head/meta[@name='root']/@content"/>
                 </xsl:when>
                 <xsl:otherwise>
                         <xsl:text>../..</xsl:text>
                 </xsl:otherwise>
         </xsl:choose>
 </xsl:variable>

Note that if the <meta> tag is absent the root variable gets set to a reasonable default.

3. The stylesheet uses the root variable whenever it need to create a link, e.g.

                        <link type="text/css" href="" rel="stylesheet" />
                        <link type="text/css" href="" rel="stylesheet" />

                           <img src="" align="middle" height="86" hspace="50" width="120" />



Arthur Ryman,
Rational Desktop Tools Development

phone: +1-905-413-3077, TL 969-3077
assistant: +1-905-413-2411, TL 969-2411
fax: +1-905-413-4920, TL 969-4920
mobile: +1-416-939-5063, text: 4169395063@xxxxxxx
intranet: http://labweb.torolab.ibm.com/DRY6/



Timothy Deboer/Toronto/IBM@IBMCA
Sent by: wtp-dev-admin@xxxxxxxxxxx

01/11/2005 09:11 AM

Please respond to
wtp-dev

To
wtp-dev@xxxxxxxxxxx
cc
Subject
[wtp-dev] Re: [wtp-committers] XML based milestone plans






Hi Craig,


I gave it a try, and it's really cool. Thank you!


One minor hitch - the xsl file puts relative paths into the HTML, so you need to put the milestone plans into a componentName/xyz folder. If they are in the component folder, the images and stylesheet won't resolve correctly.


Thanks,

Tim deBoer
WebSphere Tools - IBM Canada Ltd.
(905) 413-3503  (tieline 969)
deboer@xxxxxxxxxx


Craig Salter/Toronto/IBM@IBMCA

01/10/2005 11:51 PM


To
wtp-committers@xxxxxxxxxxxxx
cc
Subject
[wtp-committers] XML based milestone plans








Hi folks,


I've checked in some XML based milestone plans (well ... preliminary plans) and related stylesheets into the WTP website.  Here's a description of how they work, how you can use this for your own simple milestone plans, and some more advanced milestone planning stuff you can do if you're keen.   Let me know if you have any comments or suggestions.



Component Milestone Plan Document


Here's a link to a simple  
milestone plan for the xsd component  [1].  It was designed to resemble a typical eclipse milestone document (e.g. the jdt ui milestone plan [2]).  By virtue of an XSL style sheet the file appears in a web browser as though it's a pretty HTML document, but in fact it's just a simple XML file (use 'View Source' in your browser and see for yourself).    Here's a simplified overview of how the plan document is structured (note that an XML Schema for a milestone plan [3] is provided).    

plan                  

  component
      milestone     <-- one or more ... usually a 'current' plan and a preliminary plan for the next milestone)

         category   <-- work items are categorized according to function (e.g. 'Quick Fix & Quick Assists')

             item   <-- straight forward items can be described as a single bullet

             
             item   <-- more complex work items can be broken down into multiple 'teps, which appear as 'sub bullets'

               step
               step


         category

             item

               step

               step

               step




Combined Overview Documents

             

Once the milestone plans are in XML format its easy to write additional reports that can query across multiple component plans to create summary documents.  For example, here's a
Milestone Overview document  [4] that queries all of the component plans (well for now there's just a couple) to produce a list of noteable items.  Note that in order to make items show up in the overview just specify a 'priority' attribute on the <item> element in the mile stone plan xml file.  In this way we're specifying that the item should be called out in the overview document (BTW I find the 'Top Items' listed in a component milestone plan are a good fit for 'notable' items in a combined overview)..


Milestone Schedule Calendar Reports


Optionally, component milestone plans can be 'annotated' with additional scheduling or planning information.  For example work items can be assigned to developers and sizing information can be added.  Here's an example of a work item that's been annotated with additional scheduling information.

             

      <!-- here's a work item without any 'scheduling info' -->

      <
item>
              <
description>Provide XML Schema refactoring support</description>
                      <
step status="in-progress">
                              <
description>Component renaming - update references to renamed component</description>
                      </
step>                        
      </
item>
      <!-- here's the same work item with added 'scheduling info' -->

      <!--
the 'developer' element specifies the owner of the     -->
      <!--
the 'start' attribute specifies the milestone week when work should begin -->
      <!--
the 'length' attribute specifies the milestone week when work should end -->
      <!--
the 'pds' attribute estimates the 'person days' of work required to complete this work -->
     
<item>
             
<description>Provide XML Schema refactoring support</description>
             
<developer name="ebelisar@xxxxxxxxxx" />                                
             
<step status="in-progress" start="2" length="1" pds="2">
                     
<description>Component renaming - update references to renamed component</description>
             
</step>
     
</item>

Given this extra information we can generate a
calendar report for a group of developers [5].   Notice that value in brackets to the right of each developer's name specifies the number of person days of work that have been allocated to the developer.   I find this calendar view handy when planning work to make sure that developers are allocated work evenly and according to their  available time.  It also looks good hanging on the wall beside your monitor :-)   Finally I should point out that its easy for other groups to customize this calendar report for their own components and developers by modifying the 'report'  xml file.


[1] http://eclipse.org/webtools\wst\components\xsd\M3\xsd_milestone_plan_simple.xml

[2] http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/jdt-ui-home/r3_1/main.html#Overall_Plan

[3] http://eclipse.org/webtools/development/milestone_plans/milestonePlan.xsd

[4] http://eclipse.org/webtools/development/milestone_plans/reports/report-milestone-overview.xml

[5] http://eclipse.org/webtools/development/milestone_plans/reports/report-calendar-by-developer.xml



thanks

Craig

Craig Salter
Rational Studio XML Web Services
Internal Mail: D3/RY6/8200 /MKM
Phone: (905) 413-3918  TL: 969-3918 FAX: (905) 413-4920
Internet: csalter@xxxxxxxxxx     Notes: Craig Salter/Toronto/IBM@IBMCA



Back to the top