Notes on the new ASL @glyf tag as of 2025-04-02 [not fully implemented]
@glyf supports non-contrastive variant (proto-)cuneiform glyphs for @sign and provides a place to define an ATF notation for accessing them, their permanent location in the Oracc PUA, and their accessibility via IVS as well as OpenType Font Features. This gives a machine-readable way of recording in PCSL and OSL glyphs that are not encoded as Unicode characters.
Note that @glyf is intended to support general, persistent recording of only a selected subset of variant glyphs. Many glyph variants will exist beyond the definition of @glyf, accessible through font features in specialized fonts. For Oracc cuneiform fonts, each font has a table giving details on the availability of variants which are otherwise only defined within the fonts themselves.
The primary reasons for selecting variants for recording as @glyfs is their presence in a major sign list (e.g., the CDLI github-repository of Proto-Cuneiform signs) or their function as a significant structural variant of a sign where the structural variant is not deemed appropriate for encoding as a character (e.g., the various avatars of DE₂ as UMUM@s, |UMUM×KASKAL|, |UMUM×PA|).
Only standalone signs can be defined as @glyfs; sequences must use @form. The rationale for this is that @glyf exists as a mechanism to define non-contrastive forms for encoded or encodable characters, and sequences are not generally considered encodable. A further technical reason for this is that in Oracc sign-keys the sign is always the first component and the value is the third and final component. The second component is either a @form OID or a @glyf OID.
@glyf may occur zero or more times in the body of an @sign and this @sign is referred to as the @glyf's parent.
@glyf entries must come at the end of the parent @sign block,
@glyf entries have no corresponding end tag; @glyf is terminated by the next `@glyf', `@form', or `@end sign'.
@glyf entries may include an entry for the reference glyph of a Unicode encoding.
@glyf NUM OID UNI PUA OTF
@glyf SAG *1
...
would indicate that @glyf 1 of SAG corresponds to the
reference glyph.A @glyf-name may not occur within the name of a @sign. In PCSL this means that KUŠU₂~a would be a legal sign or form name, but SAG~v1 would not.
By definition, any @glyf that is listed in PCSL or OSL is provided with a reference image that is avaiable via the URL:
'/' (pcsl|osl) '/' glyf '/u' PARENT-UNICODE-HEX '_' GLYF_NUM '.png'
Thus, for @glyf 1 of a sign SAG
encoded as U+12777 in
PCSL the image file would be /pcsl/glyf/u12777_1.png
.
The ATF graphetic notation is used to reference @glyf forms in ATF
transliteration. Thus, the SAG @glyf in the previous example would be
accessed as SAG\1
.
Oracc cuneiform fonts observe the following rules in implementing @glyfs:
U12777.cv01
.(1) @sign SAG @oid o0901677 @list U+12AA9 @ucun @uname SAG @uage 1 @list ZATU437 @glyf 1 o0901678 FA000 .1 .cv01 .ss04 @glyf 2 o0901679 FA001 .2 .cv02 @list BAU228 @end sign