Skip to main content

simp-file-builder

Generate native Software Ideas Modeler project files (.simp) from Python.

The .simp format is undocumented and XMI import is a paid feature. This package writes the native format directly, so the result opens with File > Open in the free edition.

Supported diagrams: use case, sequence (loop/opt fragments), class (with packages), activity. Not supported, schema unconfirmed: ER diagrams, alt fragments, interfaces.

Install

pip install simp-file-builder

Usage

from simp_file_builder import SimProjectFile, UseCaseDiagram, SequenceDiagram, ClassDiagram, ActivityDiagram

proj = SimProjectFile("Shop", "Me")

uc = UseCaseDiagram("Use cases", "Shop")
uc.add_actor("Customer")
uc.add_usecase("Buy")
uc.add_association("Customer", "Buy")
proj.add(uc)

sq = SequenceDiagram("Checkout", actors=uc.actors)   # reuse the actor as a lifeline
sq.add_lifeline("Customer")
sq.add_lifeline("Shop")
sq.add_message("Customer", "Shop", "call", "checkout()")
proj.add(sq)

cd = ClassDiagram("Domain")
cd.add_package("shop")
cd.add_class("Order", "shop", attributes=[("id", "int")], operations=[("total", "decimal", [])])
cd.add_class("Item", "shop")
cd.add_association("Order", "Item", label="contains")
proj.add(cd)

ad = ActivityDiagram("Flow")
start = ad.add_initial(100, 20)
step = ad.add_action("Validate", 50, 80)
end = ad.add_final(100, 200)
ad.add_flow(start, step)
ad.add_flow(step, end)
proj.add(ad)

proj.write("shop.simp")

Types for attributes, parameters and return values: "int", "string", "boolean", "decimal", "date", or None.

Disclaimer

This is an independent, unofficial project. It is not affiliated with, endorsed by, or supported by Software Ideas Modeler or its author.

  • The .simp structure was worked out by inspecting files saved from a legitimately licensed copy of the application, solely so other tools can produce files it opens (interoperability).
  • No source code, binaries, assets, or documentation from Software Ideas Modeler are included or redistributed. Everything here is original Python code that writes plain XML.
  • "Software Ideas Modeler" is a trademark of its respective owner and is used only to identify the file format.
  • The software is provided as-is, without warranty, under the MIT License. Use it at your own risk; the format may change in future versions of the application.

Development

pip install -e .
python tests/test_simp_file_builder.py

The schema was worked out by inspecting files saved by SIM v15.21. If you extend it, open the result in SIM before trusting a new element type.

Metadata

Release files for simp-file-builder 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for simp-file-builder 0.1.0
File Size Uploaded
simp_file_builder-0.1.0.tar.gz 11.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for simp-file-builder 0.1.0
File Interpreter ABI Platform
simp_file_builder-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 21.9 kB

Release files / simp_file_builder-0.1.0.tar.gz

Download URL simp_file_builder-0.1.0.tar.gz
Size 11.9 kB
Tags Source
SHA-256 checksum
How to use checksums
70b3a0e74182ab88fbba4e72246beb1193fadf07cbb95f37430aaec4ac183095
BLAKE2b-256 checksum
How to use checksums
ef08c957095e119ca1855a38e2bb1ed7e229eba74d9e040afb37caa91dda4c1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / simp_file_builder-0.1.0-py3-none-any.whl

Download URL simp_file_builder-0.1.0-py3-none-any.whl
Size 9.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
769a531e361277ce0baf355f1911622ea2b66dd33416d68f2049251c5dcdb1e3
BLAKE2b-256 checksum
How to use checksums
cd8eb75e9447ca3d410e06d4701a7355b8c98b5d5956dea9ed6015df2b076c7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page