From 64974f309aa58f504dd6c6c6ec08cfc5e5e55fbc Mon Sep 17 00:00:00 2001 From: Yongzhi Wei <276409147+wyongzhi@users.noreply.github.com> Date: Mon, 14 Sep 2026 15:36:16 -0700 Subject: [PATCH] docs: define "character" as a Unicode code point in Template Schemas The length limits in this document are stated in "characters" without defining the term. "Character" can plausibly mean bytes, Unicode code points, or grapheme clusters, and implementations have diverged on it in practice. This defines it once, up front, as a Unicode code point, matching the Expression Language specification's definition of len(). Closes #186 Signed-off-by: Yongzhi Wei <276409147+wyongzhi@users.noreply.github.com> --- wiki/2023-09-Template-Schemas.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/wiki/2023-09-Template-Schemas.md b/wiki/2023-09-Template-Schemas.md index 8a66eda..d27813a 100644 --- a/wiki/2023-09-Template-Schemas.md +++ b/wiki/2023-09-Template-Schemas.md @@ -16,6 +16,9 @@ Both Templates are expressed as UTF-8 documents in either [ECMA-404 JavaScript Object Notation (JSON)](https://www.json.org/json-en.html) or [YAML Ain't Markup Language (YAML) 1.2](https://yaml.org/) interchange format. +Throughout this document, a "character" is a single Unicode code point; all length limits expressed in characters +(e.g. "Maximum length: 128 characters") are counts of Unicode code points, not bytes. + Notations used in this document to annotate aspects of the schema definition: * `@fmtstring` - The value of the annotated property is a Format String. See [Format Strings](#73-format-strings).