If I understand correctly,
_public, _documents etc are intended only to hold entries who’s value is the address of a Mutable Data that is always going to be accessed by or compatible with ‘NFS’ emulation.
At the moment, those NFS containers are created with TAG_TYPE_WWW (15002) which implies that the tag type could be different depending on the service which created them.
That would be fine if there was a root container per service, because then you would know the tag type needed to retrieve the MD. But if entries in
_public have MDs with different tag types, you won’t know which to use.
So either the value of an entry needs to be changed so that it has both the tag type and name needed to get the MD (e.g. using newPublic()) or we should standardise on a type which doesn’t suggest the service type.
In the latter case I suggest changing
TAG_TYPE_NFS (it can still use 15002 of course).
It might be preferable though to have different tag types for different services as well, in which case we could allow MD entries to always allow the option of metadata (by using a JSON object to hold the value of an entry rather than just a raw value). This would add a small overhead, but only needed for the standard containers and any services which want to use the standard containers.
For now though we must use TAG_TYPE_WWW (15002) for any NFS container if it is to be inserted into one of the standard containers.