IPNS generalization?

Currently, if I understand correctly, any file or directory hash can be published using ipns. ipns does this by taking the peerid (or some previously – locally ? – generated key - based prefix) and exposing a url at that root.

I’m looking for a way to generalize this: I have users that will write files to IPFS. They’ll also generate some metadata about relations among those files. Is it possible to have a canonical encoding of the most recent state of this metadata on ipfs / ipns? I clearly cannot write it to a file since the content will change and I cannot – I think – expect that I’d be able to publish a separate key and ipns prefix for every user.

Is is possible to publish a directory structure that exposes this information?

For example:

rootHash/userIDHash/fileAHashes/relationHash/fileBHashes

Can I publish the contents of the above at some ipns:k1PeerId/ and then traverse the directories at a given level?

Or do I need to use a centralized or blockchain based solution?