root node as empty label, since we don't include trailing slashes