carbidecpp20devenv/plugins/org.eclipse.xsd.cheatsheets_2.3.0.v200808251517/cheatsheets/GenerateEMFFromXSD.xml
<?xml version="1.0" encoding="UTF-8" ?>
<cheatsheet title="Generating an EMF Model from XML Schema">
<intro href="/org.eclipse.emf.doc/tutorials/xlibmod/xlibmod.html">
<description>
This cheat sheet is a step-by-step description of how to generate an EMF
model and editor from an XML Schema.
</description>
</intro>
<item title="Set up the environment">
<description>
Your environment must be set up before you can perform the steps in this cheat sheet.
</description>
<subitem
label="Create an "EMF Cheatsheet Data" project in your workspace with the example "library.xsd" file."
skip="true">
<action
pluginId="org.eclipse.emf.cheatsheets"
class="org.eclipse.emf.cheatsheets.actions.CopyFileFromPluginAction"
param1="EMF Cheatsheet Data"
param2=""
param3="org.eclipse.xsd.cheatsheets/archive/xsd/library.xsd"
translate="" />
</subitem>
<subitem
when="true"
label="Delete or rename the following projects if they exist in your workspace: "library.xsd", "library.xsd.edit", "library.xsd.editor"."
skip="true" />
</item>
<item
title="Import the model from XML Schema"
href="/org.eclipse.emf.doc/tutorials/xlibmod/xlibmod.html#step1"
dialog="true"
skip="true">
<description>
First, you must create a new "library.xsd" EMF project in your workspace, importing
the schema to create the EMF model.
</description>
<subitem label="Select "File > New > Project...". Expand "Eclipse Modeling Framework" and select "EMF Project". Then, click "Next"." skip="true">
<action
pluginId="org.eclipse.emf.cheatsheets"
class="org.eclipse.emf.cheatsheets.actions.OpenEMFProjectWizardAction"
param1="library.xsd"
param2="org.eclipse.xsd.ecore.importer"
translate="" />
</subitem>
<subitem label="Enter "library.xsd" as the project name, then click "Next"." skip="false" />
<subitem label="Select "XML Schema", then click "Next"." skip="false" />
<subitem label="Click "Browse Workspace...", and expand "EMF Cheatsheet Data" to select "library.xsd". Then click "Next"." skip="false" />
<subitem label="Select the package "org.eclipse.example.library", then click "Finish"." skip="false" />
</item>
<item
title="Generate the code"
href="/org.eclipse.emf.doc/tutorials/xlibmod/xlibmod.html#step2"
dialog="true"
skip="true">
<description>
Generate the code to implement the model and an editor for it. The generator is automatically opened on completion of the wizard in the previous step.
</description>
<repeated-subitem values="Model,Edit,Editor">
<subitem label="In the generator, right click on "Library" and select "Generate ${this} Code"." />
</repeated-subitem>
<subitem label="If automatic building has been disabled, select "Project > Build All" to compile the generated code." skip="true">
<action
pluginId="org.eclipse.emf.cheatsheets"
class="org.eclipse.emf.cheatsheets.actions.BuildAllProjectsAction" />
</subitem>
</item>
<item
title="Run the generated editor"
href="/org.eclipse.emf.doc/tutorials/xlibmod/xlibmod.html#step4"
dialog="true"
skip="true">
<description>
Now, you are set to run the generated editor and create a new library instance.
</description>
<onCompletion>
Congratulations! You have succesfully created an EMF model from an XML Schema, generated the code, and created an instance of the model.
</onCompletion>
<subitem label="Select the "library.xsd" project in the package explorer and invoke the "Run > Run As > Eclipse Application" menu item. This starts a runtime instance of Eclipse with the newly generated plug-ins available." />
<subitem label="In the runtime instance, create a new general project called "librarytest"." />
<subitem label="Right click "librarytest" and select "New > Other..."." />
<subitem label="Expand "Example EMF Model Creation Wizards" and select "Library Model". Then, click "Next"." />
<subitem label="Enter "My.library" as the file name, then click "Next"." />
<subitem label="Select "Library"; as the model object, then click "Finish"." />
<subitem label="The generated library editor is opened. Expand "platform:/resource/librarytest/My.library". Right click "Library" and select "New Child > Writer" to create a writer object in the library." />
<subitem label="Create additional writers and books in the library, and edit the objects' properties in the properties view." />
<subitem label="Select "File > Save" to save the instance." />
</item>
</cheatsheet>