SFILES 2.0 is an open-source Python package for converting process flow diagrams (PFDs) and piping and instrumentation diagrams (P&IDs) into an extended text-based representation. This package is developed in conjunction with the paper:
The repository provides tools for:
- Representing flowsheets as graphs
- Converting graphs to SFILES 2.0 strings and back
- Demonstrating the notation rules, structure, and conversion algorithm for SFILES 2.0
If you use SFILES 2.0 in your work, please cite:
@article{vogel2023sfiles, title={SFILES 2.0: an extended text-based flowsheet representation}, author={Vogel, Gabriel and Hirtreiter, Edwin and Schulze Balhorn, Lukas and Schweidtmann, Artur M}, journal={Optimization and Engineering}, volume={24}, number={4}, pages={2911--2933}, year={2023}, publisher={Springer} } Install the package via pip:
pip install SFILES2To explore the source code and examples:
git clone https://github.com/process-intelligence-research/SFILES2.git cd SFILES2 pip install .Use the following to explore SFILES 2.0 capabilities:
- Run the Jupyter notebook
demonstration.ipynb - Or execute
run_demonstration.pyfor a CLI-based example
These demonstrate SFILES 2.0 strings for a variety of PFDs and P&IDs.
![]() | Gabriel Vogel | |
| Edwin Hirtreiter | | |
![]() | Lukas Schulze Balhorn | |
![]() | Artur M. Schweidtmann | |
This project is licensed under the MIT License.
📧 Contact


