crystal-facet-uml - creates a set of uml diagrams.
crystal-facet-uml ensures consistency of relationships and uml element names
between different diagrams. crystal-facet-uml exports diagrams in various
vector and pixel-based image formats.
crystal-facet-uml
[-u database_file ]
crystal-facet-uml
{-t | -r} database_file
crystal-facet-uml
{-h | -v}
crystal-facet-uml
-e database_file export_format export_directory
crystal-facet-uml
-i database_file import_mode json_input_file
crystal-facet-uml provides a graphical user interface to
•create, modify and delete diagrams,
•create, modify and delete UML/SysML
elements,
•create, modify and delete relationships,
•cut, copy, paste elements between diagrams,
•undo and redo are supported,
•multiple windows can show different or same parts
of the uml model,
•search for elements.
Diagrams are layouted part-automatically:
•The user chooses the relative location of
elements towards others,
•crystal-facet-uml selects the exact locations of
shown elements.
•The user controls the positions of
messages/transitions in sequence and timing diagrams,
•crystal-facet-uml auto-layouts relationships in
other diagrams.
crystal-facet-uml manages a meta model:
•Diagrams are organized as a tree, similar to a
book's table-of-contents;
•Uml(TM)/SysML(TM) elements exist only once even
if shown in many diagrams;
•Relationships and features are consistent between
all diagrams;
•Diagram-local messages/transitions are supported
in scenario-based interaction diagrams: sequence, communication, timing,
interaction overview.
Diagrams can be exported as
•images: pdf, ps, svg, png,
•text: utf-8, DocBook, xhtml,
•machine-readable model: json, xmi(TM).
crystal-facet-uml can also be started from command line
•to export all diagrams automatically or
•to import a previously exported json file
or
•to check and repair database files.
Without options, the program starts in graphical mode. See
crystal-facet-uml_documentation.pdf for graphical mode usage.
-u database_file
Starts in graphical mode and opens the database_file
immediately.
If the file does not exist, a new, empty database is created. If
database_file ends on .cfu1, a binary database file is created. Otherwise, a
json data file is created.
-t database_file
Tests the consistency of a database_file. In case of an
error, a non-zero value is returned.
-r database_file
Tests the consistency of a database_file and repairs
found issues.
-h
Show summary of options.
-v
Show version
-e database_file
export_format export_directory
Exports all diagrams of a database_file in export_format
to the export_directory. Valid formats are: docbook, json, pdf, png, ps, svg,
txt, xhtml, xmi. Please be aware that the export overwrites possibly existing
files in the export_directory without notice.
-i database_file
import_mode json_input_file
Imports elements from json_input_file to the
database_file. Valid modes are: check, add. Please create a backup of your
database_file before importing.
To store a database in a version control system (vcs) like svn or
git, store the json file format *.cfuJ to your vcs.
•Note that this feature requires at least version
1.35.0, better version 1.39.0 to work smoothly.
•Do not synchronize the file with your vcs while
you modify it at the same time; save your changes first and re-open the json
file afterwards.
•In case of merge conflicts in *.cfuJ
files, note that uuid strings do uniquely identify all json objects. Relations
between objects are defined by these uuid strings. In contrast to uuids,
integer-id can be changed as long as they are unique among all objects of same
type within the file.
The following diagnostics may be issued on syslog:
EVT : ...
An event occurred.
ANOM: ...
Something unexpected happened that was handled.
WARN: ...
Something unexpected happened that may cause a
failure.
ERR : ...
Something unexpected happened that has caused a
failure.
journalctl -f allows one to read the syslog.
The upstreams BTS can be found at
https://github.com/awarnke/crystal-facet-uml/issues.
Andreas Warnke <cfu@andreaswarnke.de>
wrote this manpage for Unix and Linux systems.
Copyright © 2018-2023 Andreas Warnke
This manual page was written for Unix and Linux systems.
Permission is granted to copy, distribute and/or modify this
document under the terms of the Apache-2.0 License.