This is very easy to model in a relational db and enterprise software that does this has many more features than described here.