| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE html |
| PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html lang="en-us" xml:lang="en-us"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| <meta name="copyright" content="(C) Copyright Eclipse contributors 2005, 2006" /> |
| <meta name="DC.rights.owner" content="(C) Copyright Eclipse contributors 2005, 2006" /> |
| <meta name="security" content="public" /> |
| <meta name="Robots" content="index,follow" /> |
| <meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' /> |
| <meta name="DC.Type" content="concept" /> |
| <meta name="DC.Title" content="Replaces" /> |
| <meta name="DC.Relation" scheme="URI" content="variability.html#variability" /> |
| <meta name="DC.Relation" scheme="URI" content="extends.html#extends" /> |
| <meta name="DC.Relation" scheme="URI" content="contributes.html#contributes" /> |
| <meta name="DC.Format" content="XHTML" /> |
| <meta name="DC.Identifier" content="replaces" /> |
| <meta name="DC.Language" content="en-us" /> |
| <!-- |
| Copyright (c) 2005, 2006 IBM Corporation and others. |
| All rights reserved. This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License v1.0 |
| which accompanies this distribution, and is available at |
| http://www.eclipse.org/legal/epl-v10.html |
| Contributors: |
| IBM Corporation - initial implementation |
| --> |
| <link rel="stylesheet" type="text/css" href="./ibmdita.css" /> |
| <title>Replaces</title> |
| </head> |
| <body id="replaces"><a name="replaces"><!-- --></a> |
| |
| <h1 class="topictitle1">Replaces</h1> |
| <div><p>A replacing element replaces parts of the base element. Replaces provides |
| a way for an element to replace a base element without directly changing any |
| of the base element's existing properties. This is, in most cases, used for |
| method plug-ins that aim to replace specific content elements such as roles, |
| tasks, or activities with either a completely new variant or to change the |
| fundamental relationships of these elements. The effect of this, is that the |
| base content element is logically replaced with the new replacing element |
| to which all incoming associations still point as before, but which has potentially |
| new attribute values and outgoing association properties.</p> |
| <p>Use the Content Variability section on the Description tab to make an element |
| replace another element. Select <strong>Replaces</strong> as the variability type and |
| select the base element that this element will replace. The base element must |
| be the same type of element as the replacing element.</p> |
| <p>When you replace an element, all the description attributes are replaced |
| by the replacing element. If a description attribute in the replacing element |
| is blank, but the base element has content, the attribute will be blank in |
| the resulting element.</p> |
| <p>Replace always replaces attributes and associations of the base element |
| with the replacing element's attributes and associations, except for incoming |
| associations, which are only added to the base, but do not replace the base's |
| incoming associations.</p> |
| <div class="p"><strong>Replaces rules:</strong><ul><li>Attributes of the base element are replaced with attributes of the replacing |
| element including identifier of the base element.</li> |
| <li>Outgoing to-one and to-many associations of the replacing element replace |
| any outgoing associations of the base element. If the contributor does not |
| have any outgoing associations, then neither will the resulting element.</li> |
| <li>Incoming associations with a to-many constraint on the other association |
| end to the replaced element are preserved and augmented with incoming associations |
| of the replacing element.</li> |
| <li>Incoming associations with a to-one constraint on the other association |
| end to the replaced element are replaced with the respective incoming association |
| of the replacing element. If the replacing element does not have such an association |
| then the resulting element keeps the incoming association of the base element.</li> |
| <li>A base element of a replacement can have only one replacing element per |
| configuration. If more than one replacing element is present, no replacement |
| takes place.</li> |
| <li>Replacement works transitively, i.e. if a replacing element is replaced |
| itself, the final replacer prevails.</li> |
| <li>Contribution precedes Replacement, i.e. contribution is evaluated first |
| and then replacement performed afterward. The evaluation of contribution and |
| replacement is performed top-down in the specialization hierarchy.</li> |
| </ul> |
| See <a href="variabilityassociations.html#variabilityassociations">Variability Associations</a> for more information on the associations for each element |
| type.</div> |
| </div> |
| <div><div class="relconcepts"><strong>Related concepts</strong><br /> |
| <div><a href="variability.html#variability" title="Variability allows elements in one content package to influence or modify elements in other content packages without actually directly modifying the original content. Variability enables changes to the content while keeping the changes separate and optional.">Variability</a></div> |
| <div><a href="extends.html#extends">Extends</a></div> |
| <div><a href="contributes.html#contributes">Contributes</a></div> |
| </div> |
| </div> |
| </body> |
| </html> |