Position based nested tags / Attribute-Value Tags - Tags for tags

Use case or problem

I use tags to organise books.
It is a series of nested tags:

setting/Event/Miracle/Regress/Once
setting/Theme/Adventure/Searh-For
setting/Age/Resurection/High
and more

setting, is used to limit tags to only books, it would be nice if i could to limit them, but whatever.
Next step is also fine.

But after that…

setting/Event/Miracle/Regress
setting/Event/Magic/Regress

Make it hard to search for /Regress.

I could make it setting/Event/Regress/Miracle
But then, it create a lot of duplicate tags. Like i will have
Regress/Miracle
Return/Miracle
and more.

And that is only the beginning.

I am unable to add anyhing to in between, as it will create a new tag-

Miracle/Regress
Miracle/Gift/Regress

Searching for “Miracle/Regress” will not show you the Miracle/Gift/Regress
as it is “Miracle/Gift”

Proposed solution

setting/Event\Miracle/Regress\Once

Where \ dose not change the level of the nested tag.

So searchig for both of setting/Event, setting/Miracle
Will give it as a result.

setting/Event\Miracle/Regress

That way it creates limited aliases for tags.

It is not a perfect solution, but it is the simplest there is.