Standalone Ruby gem for parsing Sparx Enterprise Architect data files
(QEA SQLite database and Sparx XMI). Pure parse, optional bridge to
lutaml-uml for cross-vendor UML output and SPA generation.
gem install ea
For SPA generation (optional):
gem install ea lutaml-uml
Or in your Gemfile:
source "https://rubygems.org" gem "ea", "~> 0.2" gem "lutaml-uml", "~> 0.5" # optional: SPA + SVG diagram rendering
require "ea"
db = Ea.parse("model.qea") #=> Ea::Qea::Database
puts "#{db.packages.size} packages, #{db.objects.size} objects"ea spa model.qea --output browser.htmlProduces a single-file Vue IIFE HTML (~300KB for a typical model) with package hierarchy, class details, and diagram navigation.
The ea gem has two layers:
|
Returns |
|
Converts |
|
Low-level QEA loader → |
|
Low-level XMI loader → |
|
Returns |
|
|
|
|
|
Generate single-page app from QEA/XMI/LUR |
|
List model elements (auto-detects QEA or XMI) |
|
List diagrams in a QEA/XMI file |
|
Render a diagram to SVG |
|
Validate EA model |
|
Show collection counts |
|
Parse to internal model representation |
|
Convert QEA → Sparx XMI |
|
Show gem version |
-
Sparx only: QEA format and Sparx-flavored XMI only. Does not parse MagicDraw or Papyrus XMI.
-
XMI parser: Parses
<xmi:Extension>blocks for Sparx-specific diagram metadata. Generic OMG XMI is handled by thexmigem.
git clone https://github.com/lutaml/ea cd ea bundle install bundle exec rspec # run specs (2036 examples) bundle exec ea help # see CLI commands