John P. McCaskey wrote:
How would you use CSL to code a style for medieval music for a book
on the topic you are writing?
You’ve convinced me that you would not create three new variables,
“collection”, “series”, and “incipit” (even if that’s the way you and
everyone else catalogs medieval music). You would look at the
canonical CSL variables and pick ones that seem to have similar
functions, let’s say, container-title, collection-title, and title.
Now you need a type.
Why do you need a type? Lay out the generic formatting. add some
conditional choose statements for the generic book, article and chapter,
and be done with it.
I’m not being flippant; am totally serious. One of the key principles of
CSL is a generic model and fallback logic. Book, article and chapter are
in fact proxies for three different abstract classes of resources: what
I earlier called monograph, part-in-serial, and part-in-monograph. This
has increasingly become less apparent, but it’s still central to the design.
When you define those patterns, a CSL engine is supposed to know that
those are the generic fallback definitions. The whole point of this
design is to decrease reliance on types, and so to simplify styles, and
make them more reliable.
I formatted a complete published book using a style with probably five
types in it, but whose data probably had 20. I got virtually no
complaints from the copy editors about my citations and bibliography. So
I know this works.
Type is NOT central to CSL formatting. You’re thinking like an Endnote
If you can’t make a new one without waiting for
the CSL committee to bless it, you reuse “song”, since you are
already using “musical score” for the non-medieval music you are
citing. You code up the style, leaving off authors and dates, since
medieval music identifies neither.
Another principle of CSL is that if data isn’t present, it doesn’t get
printed. So you don’t per se need type-specific templates to get around
this. Just define generic logic for dealing with no dates and authors.
Now you want to enter the medieval “songs”. You cannot do it unless
you remember how you mapped Collection, Series, and Incipit to
container-title, collection-title and title. If you misremember, the
citations will come out wrong.
The “GUI sugar” isn’t optional. It must get into the computer
somehow, or you’ll need a yellow Post-It note on the screen to remind
you – and be sure to get the right Post-It note for the right CSL
But what are you mapping to?
The sugar is specific to the CSL file you just created (and useless
outside it). Why not put the mapping in that CSL file instead of
another file (or Post-It note) that must always move around with the
(The above scenario is normal day-in-the-life stuff for EndNote
users. And EndNote’s early approach left room for all sorts of
problems, even before you tried to share. I think they’ve redone this
I’m starting to see now: you want user comments or annotations? If yes,
I’m still not convinced that’s particularly helpful, but it’s easy to
support technically and fairly non-intrusive. So it’s certainly
something we can discuss more.
But I think we need to first agree on some of the stuff up top before we
get down to this level of detail.