An app for your web-browser to view, edit* and transform system specifications. (Features of the SpecIF Editor are marked with an asterisk*).
SpecIF is the 'Specification Integration Facility'. It's purpose is to combine partial specifications from different tools in a single model to allow
- to search, navigate and audit partial results in a common context
- to exchange model information between organizations and tools.
Please have a look at the SpecIF Homepage for further information.
DEVELOPMENT IS DICONTINUED UNTIL FURTHER NOTICE. Please contact Oskar v. Dungern.
- Import 'specif' and 'specif.zip' file with schema and consistency check
- Import 'reqif' and 'reqifz' file
- Import MS-Excel 'XLSX', 'XLS' and 'CSV' file
- Import 'BPMN-XML' file
- Import ArchiMate Open-Exchange
- Import from an URL or the local file system
- Merge models of different tools and notations*
- Browse the content ('resources') along the supplied hierarchy
- Display model-element details when hovering over a representation on a diagram (in case of SVG images with annotated model-element identifier)
- Create, clone and update resources with an input form derived from the respective resource class*
- Move single nodes and subtrees in the hierarchy by drag'n'drop*
- Inspect the semantic net ('statements')
- Create statements according to the options defined in the statement classes*
- Delete selected resources and statements*
- Filter using text fragments ('full text search'), resource classes or enumerated property values
- Report some model-based statistics, such as used resource classes or used property enumerated values
- Export 'html' file with embedded SpecIF data
- Export 'specif.zip' file
- Export 'reqifz' file (Requirements Interchange Format)
- Export 'Turtle' file (experimental)
- Export 'ePub' file
- Export MS-Word OOXML file
- Mozilla Firefox
- Google Chromium and Chrome
- Microsoft Edge
- Apple Safari (beware of performance issues in case of bigger models)
- Opera
- Microsoft Internet Explorer is not any more supported
The software code is a reference implementation and has not been designed for high data volume and other production requirements. Any contribution to this collaborative effort is highly welcome!
The app has been installed for demonstration
- View the dimmer example in SpecIF format,
- View a BPMN example in BPMN 2.0 XML format,
- View a XLSX example in XSLX format,
- View the SpecIF Vocabulary in SpecIF format,
- Start the viewer to load and view your own files.
- Start the editor to load and edit your own files.
The installation provided for your convenience is neither intended to be highly available nor scalable. You may use the latest release of the software for your own installation, see below.
- Mozilla Firefox
- Google Chromium and Chrome
- Microsoft Edge
- Opera
- Apple Safari (beware of performance issues in case of bigger models)
- Microsoft Internet Explorer is not any more supported
For any purpose other than demonstration please install the latest release on a web server of your choice. Just unpack the files and load 'yourPath/view' or 'yourPath/edit' with a web-browser.
First, make sure you have NodeJS and NPM installed.
Then, install all dependencies:
npm install
After installing all dependencies, run the build script:
npm run start
After creating the build directory with the executables, you may start the local web-server:
http-server
- Then, navigate to localhost -> build -> view.html to open the SpecIF Viewer
- Temporarily deactivate
Cross-Origin Restrictions
andLocal File Restrictions
in your browser, if you encounter a blank screen. Make sure to re-activate these settings, later.
This work has been sponsored by enso-managers gmbh and adesso SE, both Berlin.
The SpecIF web-apps have been built with the open source components listed below. These are fine pieces of software and we gratefully thank the contributors for their effort.
Library | Author | Description | License |
---|---|---|---|
AJV | Evgeny Poberezkin | Another JSON Schema Validator ... more | MIT |
jqTree | Marco Braak | A tree with collapsible branches and drag\'n\'drop support for rearranging chapters and paragraphs ... more | Apache 2.0 |
markdown-it | Kirill, Vitaly Puzrin, Alex Kocharin | Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed ... more | MIT |
JSZip | Stuart Knightley, David Duponchel, Franz Buchinger, António Afonso | A library for creating, reading and editing .zip files ... more | MIT |
FileSaver | Eli Grey | Save files to the local file system ... more | MIT |
BPMN-Viewer | A BPMN 2.0 rendering toolkit and web modeler ... more | bpmn.io | |
vis.js Network | Display networks consisting of nodes and edges ... more | Apache 2.0 or MIT | |
js-xlsx | Excel parser and writer ... more | Apache 2.0 | |
jQuery | jQuery makes things like HTML document traversal and manipulation, event handling, animation and Ajax much simpler ... more | MIT | |
Bootstrap Icons | Free, high quality, open source icon library with over 1,800 icons. Use them with or without Bootstrap in any project ... more | MIT | |
Bootstrap | Front-end component library for responsive, mobile-first projects on the web ... more | MIT | |
diff-match-patch | A library for text comparison, matching and patching ... more | Apache 2.0 |