FOnline Engine
Current master GitHub
Documentation Docs/en/reference/text-format/validation.md

Text Format Validation

Generated reference. Do not edit directly. Update BuildTools/TextFormatInterface.json, then run python BuildTools/docs_text_format.py --write.

Index Syntax Languages Prototype text Runtime Validation Canonical JSON Guide
Stable ID Rule Requirement Why Source
text-format.validation.malformed-raw Malformed raw text A raw source with a missing required field or unterminated value fails the text bake even if other entries parsed successfully. LoadFromString reports aggregate failure and TextBaker rejects the complete source file. Source/Common/TextPack.cpp, Source/Tools/TextBaker.cpp, Source/Tests/Test_TextPack.cpp
text-format.validation.empty-languages Empty BakeLanguages TextBaker, ProtoTextBaker, and TextPack normalization reject an empty Baking.BakeLanguages list. No deterministic base language can be selected. Source/Tools/TextBaker.cpp, Source/Tools/ProtoTextBaker.cpp, Source/Common/TextPack.cpp
text-format.validation.raw-unsupported-warning Unsupported raw language warning Unsupported raw language files produce a warning and no output for that language. Projects can keep unrelated sources in a broader input tree without silently publishing them. Source/Tools/TextBaker.cpp
text-format.validation.proto-token-count Prototype key token count A prototype $Text key with more than Language, Key2, and Key3 after $Text fails baking. TextPackKey has no additional key field. Source/Tools/ProtoTextBaker.cpp, Source/Tests/Test_ProtoTextBaker.cpp
text-format.validation.proto-intersection Prototype output intersection Duplicate complete keys produced by different prototype type sources in one output pack fail baking. The generated pack must not depend on iteration order across type catalogs. Source/Tools/ProtoTextBaker.cpp, Source/Tests/Test_ProtoTextBaker.cpp

Validation commands

python BuildTools\docs_text_format.py --check
python -m unittest BuildTools.tests.test_docs_text_format
cmake --build <build-dir> --config RelWithDebInfo --target RunUnitTests

In an embedding project, finish with its resource bake, localization guards, and a visible client check for language switching and formatted text that the project itself owns.

Start typing to search.