Code Monkey home page Code Monkey logo

erdsl's Introduction

Domain-Specific Language Implementation for Conceptual Modelling of Relational Databases


gif1

gif2

Requirements (for development and/or use)

  • Openjdk version "11.0.7" 2020-04-14

  • OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)

  • OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

  • Eclipse IDE 2020-03 or newer.

  • Xtext 2.17.0 or newer.


Project Building

  1. You can fork the repository, creating your local copy. Forking a repository allows you to freely experiment changes without affecting the original project.

  2. Alternatively, you can clone this project directly with a simple command:

    $ git clone https://github.com/ProjetoDSL/ERDSL.git
  3. To build the project, you need to start the Eclipse IDE and open the directory containing the project.

  4. There will be 5 more subprojects, the majority of the implementation manually made being contained in the subdirectories.

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl/generator

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl/scoping

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl/validation

  5. If you want to change some aspect of the grammar of the language, go to:

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl/ErDsl.xtext

    5.1.After changes or additions, rigth click ErDsl.xtext file.

    5.2. In the context menu select Run As >> Generate Xtext Artifacts.

  6. If you want to change any aspect of the generator responsible for the transformation between the models, go to:

    /org.xtext.unipampa.erdsl/src/org/xtext/unipampa/erdsl/generator/ErDslGenerator.xtend

  7. To generate the language plugin go to the top bar menu:

    7.1. Click in File >> Export .

    7.2. Type "plugin" in the wizard.

    7.3. Select Deployable plugins and fragments.

    7.4. For the options that appear, generate at least the plug-in for:

    org.xtext.unipampa.erdsl

    org.xtext.unipampa.erdsl.ide

    org.xtext.unipampa.erdsl.ui


Using the Generated Plugin

  1. Move the set of generated plugins in your Eclipse's plugin folder (/eclipse/plugins).

  2. Open the Eclipse IDE with a new workspace.

  3. Start a empty java project.

  4. Create a file with the .erdsl extension in src directory

  5. If asked by IDE if you want to change the view mode to the xtext context, accept.

  6. Start building your model.

  7. When you finish your model, see if the IDE validates it and then save.

  8. Look at the src-gen directory and see the generated .html file, the result of transforming the conceptual model into a logical model.


Contributions, suggestions, and bug reports are extremely welcome - please create an issue or contact the maintainer.


Initially made by Jonnathan of LESSE research group. This project is licensed under the EPL-2.0 license.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.