A tag system may include certain classes of tags which are unusually open-ended and non-semantic, such as authorial tags. Here, namespace collision must be avoided as much as possible, and so it may be necessary to completely disallow such taxonyms from appearing during name resolution unless they have been explicitly qualified with their namespace, e.g. author:andrew_hussie.
Solution idea:
Add a 'requires_qualification' flag to the taxonym table.
During name resolution, keep note of which namespaces in the taxonym graph traversal have been explicitly given in the name, and which are implicit in traversal.
During name resolution, only add taxonyms with this flag set to the current search set if their canon parent namespace is in the chain of explicit namespaces.
andrew_hussie "Who is that?"
author:andrew_hussie "Oh, if only you had said so."
Additional idea:
Let the 'requires_qualification' flag instead hold a depth value, so that rather than the canon parent namespace being necessary, the canon grandparent namespace could also be used, for example.
A tag system may include certain classes of tags which are unusually open-ended and non-semantic, such as authorial tags. Here, namespace collision must be avoided as much as possible, and so it may be necessary to completely disallow such taxonyms from appearing during name resolution unless they have been explicitly qualified with their namespace, e.g.
author:andrew_hussie
.Solution idea:
andrew_hussie
"Who is that?"author:andrew_hussie
"Oh, if only you had said so."Additional idea: