Responding to this comment:


… I’ve added support for two review types to CSL. Any opnions on
how to implement this?

This actually isn’t all that easy, because the formatting for the
review depends both on the reviewed item, and the review details
itself (often a kind of journal article basically).

My first thought is to add a new kind of relation, and do something
like (need to add the reviwed author and such too):

       <type name="review">
         <author suffix=", "/>
         <titles prefix="&#8220;" suffix=",&#8221; "/>
           <text term-name="review-of" suffix=" "/>
           <titles relation="reviewed" font-style="italic"/>
           <author suffix=", "/>
         <editor relation="reviewed" prefix=", "/>
         <translator relation="reviewed" prefix=", "/>
         <titles relation="container" prefix=" "/>
         <group prefix=" (" suffix=")" delimiter=", ">
         <pages prefix=", "/>
         <access prefix=", "/>

The other alternative is to NOT treat a review as a type, but instead
as just context-specific fields (adding some of the above to generic

Aside, for future reference, the below could be better. Volume and
issue ought to be on the generic article template. Also …

       <type name="article">
         <author suffix=", "/>
         <titles prefix="&#8220;" suffix=",&#8221; "/>
         <titles relation="container" font-style="italic"  

suffix=", "/>

… going back to previous conversations, I think the only difference
between a generic article and a journal article in Chicago is that
the latter puts dates in parentheses. I actually think there might be
a more generic rule there that can be added to the defaults template
for dates (like “if issue then use parentheses” or some such).