Documentation
Docs/en/reference/text-format/validation.md
Text Format Validation
Generated reference. Do not edit directly. Update
BuildTools/TextFormatInterface.json, then runpython 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.