As implementing the simulator, I've found a problem with the IDocumentModel interface: it doesn't expose the set of nodes, that don't belong to any component/element. This is a problem, because those nodes are needed by the connectors is some cases. When two connectors are connected, a new node is created at the connection point, and one connector is split in two, finally resulting in three connectors and one node. This way, in the model, a connector can always connect two nodes.

As I've seen in the CircuitModel class, the nodes had to be inserted in that class, too. 

Theoretically it's possible to deduce all nodes from the end-node-id-s of the connectors, but I'm not sure if that is the best solution.

So should be the nodes exposed in IDocumentModel, or not? What is your opinion?