diff --git a/epf_prac_151/core.default.release_copyright.base/guidances/supportingmaterials/release_info.xmi b/epf_prac_151/core.default.release_copyright.base/guidances/supportingmaterials/release_info.xmi
index 5413ad1..d0efcb2 100644
--- a/epf_prac_151/core.default.release_copyright.base/guidances/supportingmaterials/release_info.xmi
+++ b/epf_prac_151/core.default.release_copyright.base/guidances/supportingmaterials/release_info.xmi
@@ -1,106 +1,112 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<org.eclipse.epf.uma:ContentDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.6/uma.ecore" xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.1" xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.1" xmi:id="-z3T-2PNgPoac2T9BEVXDNQ" name="release_info,_YOPJwGmJEd2wW88Ut0zE5w" guid="-z3T-2PNgPoac2T9BEVXDNQ" changeDate="2012-05-10T09:10:16.105-0700" version="7.2.0">
-  <mainDescription>&lt;h3>&#xD;
-    EPF base&#xD;
-&lt;/h3>&#xD;
-&lt;h4>&#xD;
-    1.5.1.4&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    Key revisions for this release are:&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    a. Added practice for Documentation and Training&lt;br />&#xD;
-    b. Added practice for Production Release.&lt;br />&#xD;
-    c. Incorporated the new practices into the OpenUP delivery process.&lt;br />&#xD;
-    d.&amp;nbsp;Incorporated the practice Project Process Tailoring into the OpenUP delivery process.&lt;br />&#xD;
-    &lt;br />&#xD;
-    Other changes include:&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    a. Deleted redundant copy of activity &quot;Identify and Refine Requirements&quot;&lt;br />&#xD;
-    b. Updated &quot;planned flags&quot; in OpenUP delivery process.&lt;br />&#xD;
-    c. Structured OpenUP roles into sets.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5.1.3&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    Minor bug fixes only.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5.1.2&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    Minor bug fixes only.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5.1.1&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    Minor bug fixes only.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5.1&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    The key revisions for this release are:&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    New practice &quot;Project Process Tailoring&quot;, in order to provide basic coverage for the Environment discipline.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    New&amp;nbsp;practice &quot;Method Development&quot;. This practice replaces the &quot;Method Authoring Method&quot; (MAM).&amp;nbsp; The new&#xD;
-    practice consolidates and updates authoring guidelines, and integrates the content into the EPF Practices library.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Cleanup of Agile Business Rule Development, so that it publishes properly with the other practices.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Other minor bug fixes.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5.0.4&amp;nbsp;&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    Bugzilla 281165 - Renamed&amp;nbsp;practice &quot;two-level project planning&quot; to &quot;release planning&quot;.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Bugzilla 285042 - Renamed &quot;software design&quot; and &quot;software implementation&quot; slots to &quot;technical design&quot; and &quot;technical&#xD;
-    implementation&quot;.&amp;nbsp;&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Bugzilla 268148 - Moved build artifact to &quot;core.tech.common&quot;.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Many minor bug fixes.&#xD;
-&lt;/p>&#xD;
-&lt;h4>&#xD;
-    1.5&amp;nbsp;&#xD;
-&lt;/h4>&#xD;
-&lt;p>&#xD;
-    This is the initial release of the practices library, which is included as part of the Eclipse Process Framework (EPF)&#xD;
-    1.5.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    Most of the open source content derives from OpenUP 1.0, refactored to support independent practices.&#xD;
-&lt;/p>&#xD;
-&lt;p>&#xD;
-    These are the key new features in the core:&#xD;
-&lt;/p>&#xD;
-&lt;ul>&#xD;
-    &lt;li>&#xD;
-        Work product slots to allow practices to be independent of each other.&#xD;
-    &lt;/li>&#xD;
-    &lt;li>&#xD;
-        Default navigation view that &lt;i>ad hoc&lt;/i> configurations of practices can be published easily with a view.&#xD;
-    &lt;/li>&#xD;
-    &lt;li>&#xD;
-        Guidance and work products&amp;nbsp;reusable across practices have been moved into common plug-ins.&#xD;
-    &lt;/li>&#xD;
-    &lt;li>&#xD;
-        Category, role, and tool definitions separated into separate plug-ins to allow them to be easily removed and&#xD;
-        replaced&amp;nbsp;by alternative categorizations.&#xD;
-    &lt;/li>&#xD;
-&lt;/ul></mainDescription>
-</org.eclipse.epf.uma:ContentDescription>
+<?xml version="1.0" encoding="UTF-8"?>
+<org.eclipse.epf.uma:ContentDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:org.eclipse.epf.uma="http://www.eclipse.org/epf/uma/1.0.6/uma.ecore" xmlns:epf="http://www.eclipse.org/epf" epf:version="1.5.1" xmlns:rmc="http://www.ibm.com/rmc" rmc:version="7.5.1" xmi:id="-z3T-2PNgPoac2T9BEVXDNQ" name="release_info,_YOPJwGmJEd2wW88Ut0zE5w" guid="-z3T-2PNgPoac2T9BEVXDNQ" changeDate="2012-12-21T10:22:26.020-0800" version="7.2.0">
+  <mainDescription>&lt;h3>&#xD;
+    EPF base&#xD;
+&lt;/h3>&#xD;
+&lt;h4>&#xD;
+    1.5.1.5&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Minor bug fixes only.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.1.4&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Key revisions for this release are:&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    a. Added practice for Documentation and Training&lt;br />&#xD;
+    b. Added practice for Production Release.&lt;br />&#xD;
+    c. Incorporated the new practices into the OpenUP delivery process.&lt;br />&#xD;
+    d.&amp;nbsp;Incorporated the practice Project Process Tailoring into the OpenUP delivery process.&lt;br />&#xD;
+    &lt;br />&#xD;
+    Other changes include:&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    a. Deleted redundant copy of activity &quot;Identify and Refine Requirements&quot;&lt;br />&#xD;
+    b. Updated &quot;planned flags&quot; in OpenUP delivery process.&lt;br />&#xD;
+    c. Structured OpenUP roles into sets.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.1.3&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Minor bug fixes only.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.1.2&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Minor bug fixes only.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.1.1&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Minor bug fixes only.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.1&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    The key revisions for this release are:&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    New practice &quot;Project Process Tailoring&quot;, in order to provide basic coverage for the Environment discipline.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    New&amp;nbsp;practice &quot;Method Development&quot;. This practice replaces the &quot;Method Authoring Method&quot; (MAM).&amp;nbsp; The new&#xD;
+    practice consolidates and updates authoring guidelines, and integrates the content into the EPF Practices library.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Cleanup of Agile Business Rule Development, so that it publishes properly with the other practices.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Other minor bug fixes.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5.0.4&amp;nbsp;&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    Bugzilla 281165 - Renamed&amp;nbsp;practice &quot;two-level project planning&quot; to &quot;release planning&quot;.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Bugzilla 285042 - Renamed &quot;software design&quot; and &quot;software implementation&quot; slots to &quot;technical design&quot; and &quot;technical&#xD;
+    implementation&quot;.&amp;nbsp;&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Bugzilla 268148 - Moved build artifact to &quot;core.tech.common&quot;.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Many minor bug fixes.&#xD;
+&lt;/p>&#xD;
+&lt;h4>&#xD;
+    1.5&amp;nbsp;&#xD;
+&lt;/h4>&#xD;
+&lt;p>&#xD;
+    This is the initial release of the practices library, which is included as part of the Eclipse Process Framework (EPF)&#xD;
+    1.5.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    Most of the open source content derives from OpenUP 1.0, refactored to support independent practices.&#xD;
+&lt;/p>&#xD;
+&lt;p>&#xD;
+    These are the key new features in the core:&#xD;
+&lt;/p>&#xD;
+&lt;ul>&#xD;
+    &lt;li>&#xD;
+        Work product slots to allow practices to be independent of each other.&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Default navigation view that &lt;i>ad hoc&lt;/i> configurations of practices can be published easily with a view.&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Guidance and work products&amp;nbsp;reusable across practices have been moved into common plug-ins.&#xD;
+    &lt;/li>&#xD;
+    &lt;li>&#xD;
+        Category, role, and tool definitions separated into separate plug-ins to allow them to be easily removed and&#xD;
+        replaced&amp;nbsp;by alternative categorizations.&#xD;
+    &lt;/li>&#xD;
+&lt;/ul></mainDescription>
+</org.eclipse.epf.uma:ContentDescription>
