I do not know what you mean by "normalizing some of the FOSIs."
Also, using pseudo-attributes adds complexity, so I am curious why you do not want to code FOSI-generated text in e-i-cs for DTD elements.
If the gentext is subject to change, it doesn't not have to be hard-coded in the FOSI. The current values can be stored in strings in an ACL file that is sourced before formatting, and the FOSI will use those values. That seems simpler and easier than adding pseudo-attributes and a process to fill them.
For example:
ACL
===
$title1=SOURCE DATA
FOSI
====
<fillval attloc="system-var" attname="title1" fillcat="usetext" fillchar="source">
<charsubset>
<usetext><usetext>
</charsuset>
</fillval>
OUTPUT
=======
SOURCE DATA
Suzanne