Use Per-Link Prefixes in Network Data Models
We got pretty far in our data deduplication in network data model journey, from initial attempts to network modeled as a graph… but we still haven’t got rid of all the duplicate information.
For example, if we have multiple devices connected to the same subnet, why should we have to specify IP address and subnet mask for every device (literally begging the operators to make input errors). Wouldn’t it be better (assuming we don’t care about exact IP addresses on core links) to assign IP addresses automatically?
Too bad that you used "if node != 'prefix'" in the templates. It looks cumbersome to me. I don't understand why you didn't use the nodes dictionary.
Your "Network_Prefix/network.yml" data model reminds me of OSPFv3 with LSA type 1,2,8,9. But I don't think it was your intent to reinvent OSPFv3 LSA types, wasn't it?
As for OSPFv3 data types - there's only so many ways to solve a given problem in a semi-sane way, so most of the solutions will have at least a partial overlap ;)