I've drawn up a syntax proposal (as an Org file) on GitHub:


I'm attaching the Org file itself and the (tangled) example syntax for those of you who use Gnus or a similar client. I've managed to *completely* screw up my environment as far as my own email goes, unfortunately…


On Sat, Aug 16, 2014 at 1:14 AM, Sean Allred <[log in to unmask]> wrote:
Hello everyone,

There was recently a conversation on TeX.SX [1] between (mainly) Joseph
Wright and myself.  Please see that site for the full conversation that
prompted this.

Disclaimer: I'm a huge fan of the template idea.  It is a good system
and I don't want it to see unnecessary change.

Disclaimer to the disclaimer: it's the only design management paradigm
that I've come into contact with in regards to TeX.  :)

I'd like to raise attention to a possible issue with xtemplate's
design.  Currently, an 'object' can receive no more than nine arguments
per TeX's syntax limitations: you cannot refer to a tenth argument in a
macro definition.  That is,

    \DeclareObject { foo } { 10 }

will fail.  In TeX terms, this makes total sense.  You cannot have more
than nine mandatory arguments for any single macro---that's just the way
it is.  But speaking in terms of design, there are instances where such
an object can have more than nine arguments.  In reality, this is the
decision of the document designer.  There should be no such limitation
on the design.

I'll refer you to the original post for Joseph's full answer, but his
suggestion is, in my opinion, a very appropriate one: going for a
completely key--value interface on the design layer (note: not the
author layer).  It would certainly remove the limitation on the number
of mandatory qualities an object may have.  It would also seem to be
more befitting of the verbose clarity of the design layer to do this.

I'd like to call for thoughts on the topic.  Again, I strongly recommend
you read Jospeh's response to my question [1].  I recognize that the
premise of the question might be flawed---in this instance (no pun
intended), it would likely be more appropriate to create a template with
all of the 'extras'---but the concern is valid and genuine.

All the best,

[1]: http://tex.stackexchange.com/q/196285

Sean Allred

Sean Allred