@Override
    public CompletableFuture<List<Either<SymbolInformation, DocumentSymbol>>> documentSymbol(
            DocumentSymbolParams params) {
        return CompletableFutures.computeAsync((cancelChecker) -> {
            try {
                EventDocumentContext context = eventContextCreator.createContext(params);
                return SchemaDocumentSymbols.documentSymbols(context);
            } catch(InvalidContextException ignore) {
                // Ignore
            } catch(Exception e) {
                logger.error("Error during document symbol handling: " + e.getMessage());
            }
            return List.of();
        });
    }
SchemaTextDocumentService handles incomming requests from the client.
integration/schema-language-server/language-server/src/main/java/ai/vespa/schemals/SchemaTextDocumentService.java