Poznámky k vydání autorství transformace

© Copyright International Business Machines Corporation 2006. Všechna práva vyhrazena. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

Poznámky k vydání

1.0 Omezení
   1.1 Předvolené profily UML nejsou automaticky namapovány při vytváření mapování z modelu do UML
   1.2 V transformacích z modelu na model je podpora kombinování dostupná pouze pro cílové modely s rozšířením contentTypes
   1.3 Při autorizaci transformací z modelu na model musí mít modely Ecore, které uvedete jako vstup nebo výstup, odpovídající modely genmodel
   1.4 Musíte uvést soubor jako cílový kontejner v konfiguraci transformace modelu na model
   1.5 Autorizace integrace transformace s transformacemi JET není automatická
2.0 Známé problémy a náhradní řešení
   2.1 Metamodely UML nebyly automaticky přidány k mapování model-to-model
   2.2 Transformace "na" a "z" filtrovaných vlastností mohou vypadat jako porušené v editoru mapování
   2.3 Odstranění jediného odkazu na model v mapovacím souboru způsobí, že se model uvolní z mapovacího souboru
   2.4 Volbu runSilent můžete vybrat v konfiguračním editoru transformací model-to-model, pokud je režim sloučení automatický nebo vizuální
   2.5 Chyby sloučení mohou nastat při mapování z modelu do uml s registrovaným profilem, pokud se nepoužije registrační ID profilu
   2.6 Při generování kódu z mapování modelů nejsou znovu generovány základní soubory projektu obsahující 'plugin.xml' a 'MANIFEST.MF'

1.0 Omezení

1.1 Předvolené profily UML nejsou automaticky namapovány při vytváření mapování z modelu do UML

Při autorizaci transformací z modelu na model, pokud je cílem model UML 2, předvolené profily UML se automaticky nenamapují. Například profil UML default.epx  se automaticky nenamapuje. Musíte tyto profily namapovat ručně, nebo použít základní strukturuUMLDefaultLibrariesAddRule. Můžete ručně přidat toto základní struktura do transformace, pokud je cílem model UML EClass.

Chcete-li přidat základní strukturu do transformace, přidejte do transformace následující kód:

    /**
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated NOT
     */
    protected void addTransformElements(Registry registry) {
 add(new UMLDefaultLibrariesAddRule());
     addGeneratedTransformElements(registry);
     // Můžete přidat více prvků transformace za ty vygenerované zde
     // Nezapomeňte odstranit značku @generated nebo k ní přidat NOT
    }

1.2 V transformacích z modelu na model je podpora kombinování dostupná pouze pro cílové modely s rozšířením contentTypes

Chcete-li v autorizaci transformací modelu na model mít podporu "kombinování" v cílovém modelu, musíte mít rozšíření "org.eclipse.core.runtime.contentTypes" v modulu plug-in v pracovním prostoru Eclipse. Můžete uvést toto rozšíření v modulu plug-in, který má název domény odvozený z domény cílového modelu. Další informace o tomto rozšíření viz dokumentace k bodům rozšíření v projektu Porovnání/sloučení. To vám umožňuje sestavit sofistikovanou strategii kombinování pro cílový model. Pro jednodušší strategii EMF můžete uvést následující rozšíření (nahraďte "xxx" rozšířením cílového souboru):

<extension
  point="org.eclipse.core.runtime.contentTypes">
  <file-association
   content-type="com.ibm.xtools.comparemerge.emf.emfContentType"
  file-extensions="xxx"/>
 </extension>

1.3 Při autorizaci transformací z modelu na model musí mít modely Ecore, které uvedete jako vstup nebo výstup, odpovídající modely genmodel

Při autorizaci transformací z modelu na model musí mít modely Ecore, které uvedete jako vstup nebo výstup, odpovídající modely genmodel. Pro vytvoření modelů genmodel můžete použít průvodce modely EMF. Ujistěte se, že vygenerujete kód po vytvoření modelů genmodel.  Modely genmodel musí být registrovány ve vývojovém pracovním prostředí nebo musí být ve stejné cestě jako odpovídající modely Ecore. Modely genmodel musí mít příponu názvu souboru .genmodel, podobný název a stejný případ jako modely Ecore. Jinak stroj autorizace transformací model genmodel nenajde. Pokud stroj autorizace transformací požadované modely genmodel nenajde, zakáže generování kódu.

1.4 Musíte uvést soubor jako cílový kontejner v konfiguraci transformace modelu na model

Když vytvoříte konfiguraci transformací pro transformace z modelu na model, musíte uvést soubor, který představuje cílový model, i když je soubor prázdný. Nemůžete uvést URI jako cílový zásobník.

Chcete-li vytvořit prázdný model Ecore, na Hlavní stránce editoru nebo průvodce konfigurací transformace klepněte na tlačítko Vytvořit nový cílový kontejner a uveďte soubor, který má rozšíření cílového modelu.

1.5 Autorizace integrace transformace s transformacemi JET není automatická

Pro integraci transformace z modelu na model jako předního konce transformace JET (model na text), musíte ručně přidat instanci základní struktury JETRule do pravidel 'postProcessing' transformace RootTransformation, která je umístěna poskytovateli transformací. Následující příkaz zobrazuje kód, který musíte zahrnout do třídy poskytovatele transformace. Musíte nahradit 'xxx' ID transformace JET.

    /**
     * Vytvoří kořenovou transformaci. Zde můžete přidat další pravidla pro transformaci
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @param transform Kořenová transformace
     * @generated NOT
     */
    protected RootTransformation createRootTransformation(ITransformationDescriptor descriptor) {
        return new RootTransformation(descriptor, new MainTransform()) {
                   protected void addPostProcessingRules() {
                            add(new JETRule("xxx"));
                   }
        };
   }

2.0 Známé problémy a náhradní řešení

2.1 Metamodely UML nebyly automaticky přidány k mapování model-to-model

Pro generování transformací pro vstupní nebo výstupní modely UML uveďte metamodel UML jako kořenový vstup, kořenový výstup nebo obojí ve specifikaci mapování.  Přidání profilu UML do specifikace mapování nepřidá automaticky také metamodel UML.

Náhradní řešení: Přidejte metamodel UML klepnutím na tlačítko Přidat model v průvodci a editoru mapování transformací model-to-model.

2.2 Transformace "na" a "z" filtrovaných vlastností mohou vypadat jako porušené v editoru mapování

Koncové body konektorů pro mapování mohou zmizet, pokud uživatel přepne filtrování funkce ze "Základní" na režim "Okamžité" nebo "Pokročilé", vytvoří mapování a potom přepne zpět na režim filtrování "Základní". To může způsobit, že se objeví mapovací konektory s koncovými body, které nic nespojují.  To ovlivní pouze vzhled mapování. Mapování a zdrojový kód, který transformace generuje z mapování, nebude ovlivněn.

Náhradní řešení: Opravte vzhled mapování uvedením režimu filtrování, který se používal při vytváření mapování.

2.3 Odstranění jediného odkazu na model v mapovacím souboru způsobí, že se model uvolní z mapovacího souboru

Pokud soubor mapování již neobsahuje žádné mapování, které uvádí prvky z modelu jako vstupy nebo výstupy, model bude "uvolněn" z mapovacího souboru. Kontrola kvůli nepoužívaným modelům se provádí, kdykoliv je odstraněn vstup nebo výstup z mapování. V souborech mapování se uchovávají dva oddělené seznamy pro vstupy a výstupy.

Náhradní řešení: Musíte přidat model do mapovacího souboru, než budete moci vybrat prvky z daného modelu, jako vstupy nebo výstupy z mapování. Klepněte na tlačítko Přidat model v editoru mapování, abyste přidali model do mapovacího souboru.

2.4 Volbu runSilent můžete vybrat v konfiguračním editoru transformací model-to-model, pokud je režim sloučení automatický nebo vizuální

V konfiguračním editoru transformace pro generované transformace model-to-model může být uvedena volba runSilent s libovolným režimem sloučení, včetně 'automatického' nebo 'vizuálního'. Pokud je režim sloučení nastaven na automatický nebo vizuální, volba runSilent vynutí strategii tichého sloučení, pokud se na cílovém modelu nachází podpora kombinování. Jinak se použije strategie sloučení s přepisem.

2.5 Chyby sloučení mohou nastat při mapování z modelu do uml s registrovaným profilem, pokud se nepoužije registrační ID profilu

Při vytváření modelu mapování transformací z metamodelu Ecore na metamodel UML s profily, měli byste ověřit URI profilu, který se použije v cílových modelech UML. Předvoleně se použije URI profilu, který uvedete v editoru mapování. Pokud uvedete URI prostředku, převede se na URI ekvivalentního modulu plug-in.

Náhradní řešení: Můžete uvést jiné URI ve vlastnosti pro přepsání profileURI na stránce vlastností. Klepněte na kořenovou sekci v editoru mapování, abyste zobrazili stránku vlastností. Pozn.: Pokud používáte registrovaný profil, můžete uvést URI, s nímž je profil registrován, pokud se liší od profilu, který se použije automaticky. Tady může selhání způsobit implementaci registrovaného profilu více než jednou do sady prostředků, což může způsobit problémy se sloučením nebo kombinováním.

2.6 Při generování kódu z mapování modelů nejsou znovu generovány základní soubory projektu obsahující 'plugin.xml' a 'MANIFEST.MF'

Při generování kódu z modelů mapování v transformacích model-to-model se vygenerují základní soubory projektu, jako je plugin.xml a manifest.mf, pokud nejsou nalezeny. Možná budete muset upravit tyto soubory po jejich vygenerování.

Náhradní řešení: