I was studying how netclass is used in LibrePCB. It currently doesn’t do much of anything
but it is clear that when Buses are added that they will play a major role.
There are two different types of buses, homogeneous and heterogeneous. Homogeneous consists of one or more signals with the same name and direction. Heterogeneous has one or more signals with different names and directions.Heterogeneous signals may be nodes, Homogeneous buses or Heterogeneous buses.
When we do add buses it is important that we ensure that any changes will work with both types. We do not want to add indexes to support homogeneous buses only to find that we need to change them again to support heterogeneous buses. Kicad did that and they now have to add Heterogeneous buses into a data base that was never designed to support them. We only want to have to change these one time.
Netclass does offer us an way to manage DRC checking. You create a netclass for power supply signals and all power sources use it. You add a link to your component pins so that all power supply pins point to the uuid for this netclass. You also add a field for input/output and detemine that you have one and only one source and no loads that are not marked as Power supply inputs.
I think that netclass will become so usefull that we should make it into its own library element. Then we can create and edit them while makeing them avalible to all components,circuits and boards.