@Override
    public void updateFileContent(String content) {
        this.content = content;
        schemaIndex.clearDocument(fileURI);

        logger.info("Parsing: " + fileURI);
        ParseContext context = getParseContext();
        var parsingResult = parseContent(context);

        parsingResult.diagnostics().addAll(verifyFileName());

        diagnosticsHandler.publishDiagnostics(fileURI, parsingResult.diagnostics());

        if (parsingResult.CST().isPresent()) {
            this.CST = parsingResult.CST().get();
            lexer.setCST(CST);

            //logger.info("======== CST for file: " + fileURI + " ========");
     
            //CSTUtils.printTree(logger, CST);
        }

        //schemaIndex.dumpIndex();
    }
SchemaDocument parses and represents .sd files
integration/schema-language-server/language-server/src/main/java/ai/vespa/schemals/schemadocument/SchemaDocument.java