def _get_vespa_schema_name(self, index_name) -> str:
        """
        Get the name of the Vespa schema.

        Args:
            index_name: The name of the index

        Returns:
            The name of the Vespa schema

        Notes:
            Vespa schema names must conform to [a-zA-Z_][a-zA-Z0-9_]*. This method applies an encoding similar to URL
            encoding (using _ instead of %) to ensure that the schema name is valid. This encoding is a bijection, i.e.
            the encoded string is unique and reversible.

            Index names that are already valid Vespa schema names and do not contain underscores are not encoded.
            Encoded names are prefixed with MARQO_RESERVED_PREFIX for easy identification, even though this prefix is
            not required for uniqueness.
        """
        encoded_name_chars = []
        for char in index_name:
            if char in self._INDEX_NAME_ENCODING_MAP:
                encoded_name_chars.append(self._INDEX_NAME_ENCODING_MAP[char])
            else:
                encoded_name_chars.append(char)

        encoded_name = ''.join(encoded_name_chars)

        if encoded_name == index_name:
            return index_name

        return constants.MARQO_RESERVED_PREFIX + encoded_name

        Get the name of the Vespa schema.

        Args:
            index_name: The name of the index

        Returns:
            The name of the Vespa schema

        Notes:
            Vespa schema names must conform to [a-zA-Z_][a-zA-Z0-9_]*. This method applies an encoding similar to URL
            encoding (using _ instead of %) to ensure that the schema name is valid. This encoding is a bijection, i.e.
            the encoded string is unique and reversible.

            Index names that are already valid Vespa schema names and do not contain underscores are not encoded.
            Encoded names are prefixed with MARQO_RESERVED_PREFIX for easy identification, even though this prefix is
            not required for uniqueness.
        
src/marqo/core/vespa_index/vespa_schema.py