UMLX Editors

UMLX provides multi-page editors for a variety of modeling notations.

The KM3 editor supports the Kernel Meta-Meta-Model textual notation as a textual counterpart of Ecore.

The OCL editor supports editing a file of OCL context clauses.

The QVTc and QVTr editors support QVTcore and QVTrelation languages defined by the OMG QVT proposed standard.

UMLX Editor Facilities

Each editor supports textual editing of the human friendly concrete syntax in one page, of the Ecore Resource Tree in another page, and of Ecore and EMOF based XML representations in further pages. Additional pages will be added in due course for graphical editing.

Each editor may be invoked for a textual concrete syntax input file, in which case the input is parsed to produce the abstract syntax which may be saved as either Ecore-based or EMOF-based XML. Alternatively the editor may be invoked for the abstract syntax XML file which is then unparsed to produce the textual concrete syntax.

Each editor supports

  • conventional keyword, comment and string highlighting
  • lexical and syntactic validation of the source text
  • semantic validation of the source against the referenced meta-models
  • Highlighting is performed interactively. Subsequent validations are currently performed when the file is saved, with semantic validation occuring only for syntactically valid files. Incremental validation may be added in a future release.

    Lexical, syntactic and semantic errors are indicated by standard problem markers so that the errors are underlined and navigable from the Problems View or from the editor overview side bars.

    Successful meta-model validation requires that the meta-models can be located. This may be achieved by binding the meta-model names to the appropriate models using the Model Registry Property Page. This is accessible from Properties in the right button menu of the Navigator or Project Explorer Views.

    The editors normally edit *.km3, *.ocl, *.qvtc and *.qvtr (or *.qvt) textual extensions, *.ecore, *.oclecore, *.eqvtcore and *.eqvtrelation Ecore-based XML extensions, and *.emof, *.oclemof, *.qvtcore and *.qvtrelation EMOF-based XML extensions.

    The editors maintain temporary files for alternate pages in the project *.tmpdir.

    The editor associations may be changed using Window->Preferences|General->Editors->File Associations.

    The corresponding builder associations may be changed using Window->Preferences|UMLX->Extensions.

    Bugs

    The editing and model validation parts of the editor appear sound.
    The abstract syntax has only been superficially validated by the ability to unparse parsed models.
    The OCL editor validation is much weaker than the others - awaiting revision of some of the OCL model checking code to work to diagnose as many errors as possible in a friendly fashion rather than just the first.

  • Getting Started
  • JavaDoc Reference