On the tutorial page:
The example has the initial setup of syside. (I am using the Sensmetry example of DroneModel.sysml):
python -m syside interactive DroneModel.sysml
Under the section titled:
Complex Commands
The instruction is:
Interactive mode works the same way as the Python API, so you can use the same functions and methods. However, sometimes you might need more than a single line of code to do something.
For example, we can list all the part definitions in the model by running the following command:
for element in model.nodes(syside.PartDefinition):
print(element.name if element.name else "anonymous")
Which gives the error:
for element in model.nodes(syside.PartDefinition):
... print(element.name if element.name else "anonymous")
Traceback (most recent call last):
File "C:\Users\RMW\AppData\Local\Python\pythoncore-3.14-64\Lib\site-packages_syside_main_.py", line 72, in _embedded_session
import IPython # type: ignore[import-not-found]
^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'IPython'
During handling of the above exception, another exception occurred:
File "", line 2
print(element.name if element.name else "anonymous")
^^^^^
IndentationError: expected an indented block after 'for' statement on line 1
This was unexpected, as there was no mention of needing the IPython package installed. This is an error in the web page documentation.
After executing the pip command, which ran successfully:
pip install ipython
And then executing the example above, the environment and behavior differ from the webpage content. The complex command does execute successfully as:
C:\Users\RMW\Desktop\SysIDE-Modeler\MyExamples>python -m syside interactive DroneModel.sysml
Python 3.14.5 (tags/v3.14.5:5607950, May 10 2026, 10:43:50) [MSC v.1944 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 9.15.0 -- An enhanced Interactive Python. Type '?' for help.
Welcome to isyside!
This is an interactive Python shell with the loaded model accessible as model.
Builtin modules: syside
Convenience variables: model, diagnostics
In [1]: for element in model.nodes(syside.PartDefinition):
...: print(element.name if element.name else "anonymous")
...:
Drone
Battery
Motor
FlightController
DroneFrame
DroneSystem
The web page needs to be updated, and dependent packages need to be listed.