Created
March 26, 2016 21:49
-
-
Save fbennett/61c55ecb248c816b0820 to your computer and use it in GitHub Desktop.
Juris-M: general scaffolding for legal citations in Baby Blue
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<macro name="jurism"> | |
<choose> | |
<if position="ibid-with-locator"> | |
<group delimiter=" "> | |
<text term="ibid" font-style="italic"/> | |
<group delimiter=" "> | |
<text value="at"/> | |
<group require="empty-label"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
<group delimiter=" " reject="empty-label"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
</if> | |
<else-if position="ibid"> | |
<text term="ibid" font-style="italic"/> | |
</else-if> | |
<else-if> | |
<!-- short form --> | |
<conditions match="any"> | |
<condition match="all" position="near-note"/> | |
<condition match="all" type="report" variable="title" position="far-note"/> | |
<condition match="all" type="report" variable="committee" position="far-note"/> | |
<condition match="all" type="hearing" variable="committee" position="far-note"/> | |
<condition match="all" type="legal_case" variable="document-name" position="far-note"/> | |
</conditions> | |
<group delimiter=" "> | |
<group delimiter=", "> | |
<choose> | |
<if> | |
<conditions match="all"> | |
<condition type="legal_case"/> | |
<condition match="none" variable="document-name"/> | |
</conditions> | |
<text macro="juris-title-short" font-style="italic"/> | |
</if> | |
<else-if type="hearing"> | |
<text macro="juris-title-short" font-style="italic"/> | |
</else-if> | |
<else-if match="all" type="report"> | |
<text macro="juris-title-short" font-variant="small-caps"/> | |
</else-if> | |
<else> | |
<text macro="juris-title-short"/> | |
</else> | |
</choose> | |
<choose> | |
<if> | |
<conditions match="any"> | |
<condition match="all" type="hearing" variable="committee"/> | |
<condition match="all" type="report" variable="title"/> | |
<condition match="all" type="report" variable="committee"/> | |
<condition match="all" type="legal_case" variable="document-name"/> | |
</conditions> | |
<group delimiter=", "> | |
<group delimiter=" "> | |
<text value="supra" font-style="italic"/> | |
<text term="note"/> | |
<text variable="first-reference-note-number"/> | |
</group> | |
<group delimiter=" "> | |
<text value="at"/> | |
<group require="empty-label"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
<group delimiter=" " reject="empty-label"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
</if> | |
<else> | |
<group delimiter=" "> | |
<group delimiter=", "> | |
<choose> | |
<if> | |
<conditions match="all"> | |
<condition type="hearing"/> | |
<condition match="none" variable="committee"/> | |
</conditions> | |
<text macro="juris-main-short" font-variant="small-caps"/> | |
</if> | |
<else-if> | |
<conditions match="all"> | |
<condition type="report"/> | |
<condition match="none" variable="committee title"/> | |
</conditions> | |
<text macro="juris-main-short" font-variant="small-caps"/> | |
</else-if> | |
<else> | |
<text macro="juris-main-short"/> | |
</else> | |
</choose> | |
<group require="comma-safe"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
</group> | |
</else> | |
</choose> | |
</group> | |
<group delimiter=" " require="empty-label"> | |
<text value="at"/> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
<group reject="comma-safe"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
<text macro="juris-tail-short"/> | |
</group> | |
</else-if> | |
<else> | |
<!-- full form --> | |
<group delimiter=", "> | |
<group delimiter=" "> | |
<group delimiter=", "> | |
<choose> | |
<if type="hearing"> | |
<text macro="juris-title" font-style="italic"/> | |
</if> | |
<else-if type="report"> | |
<text macro="juris-title" font-variant="small-caps"/> | |
</else-if> | |
<else> | |
<text macro="juris-title"/> | |
</else> | |
</choose> | |
<group delimiter=" "> | |
<group delimiter=", "> | |
<choose> | |
<if> | |
<conditions match="all"> | |
<condition match="all" type="report"/> | |
<condition match="none" variable="title committee"/> | |
</conditions> | |
<text macro="juris-main" font-variant="small-caps"/> | |
</if> | |
<else-if> | |
<conditions match="all"> | |
<condition match="all" type="hearing"/> | |
<condition match="none" variable="committee"/> | |
</conditions> | |
<text macro="juris-main" font-variant="small-caps"/> | |
</else-if> | |
<else> | |
<text macro="juris-main"/> | |
</else> | |
</choose> | |
<group delimiter=" " require="empty-label"> | |
<text value="at"/> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
<group require="comma-safe"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
</group> | |
</group> | |
</group> | |
<group reject="comma-safe"> | |
<text macro="juris-locator" label-form="symbol"/> | |
</group> | |
<choose> | |
<if type="legislation" variable="container-title page volume gazette-flag" match="all"/> | |
<else> | |
<text macro="juris-tail"/> | |
</else> | |
</choose> | |
</group> | |
<choose> | |
<if type="legislation" variable="container-title page volume gazette-flag" match="all"> | |
<text macro="juris-tail"/> | |
</if> | |
</choose> | |
</group> | |
</else> | |
</choose> | |
</macro> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment