| <?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> |