Looks fine to me.
About the name of the function: the _internal part is there because this function sets a tag name on something that's already *inside* the result object, as opposed to setIndexedTagName(), which sets a tag name on a user-supplied array *outside* the result object. The data in the result object is not directly modifiable from the outside (anymore, to ensure result size integrity), which is why a separate function is needed.