diff --git a/src/Text/Pandoc/Citeproc.hs b/src/Text/Pandoc/Citeproc.hs
index 528be6cd7..a5cd26d18 100644
--- a/src/Text/Pandoc/Citeproc.hs
+++ b/src/Text/Pandoc/Citeproc.hs
@@ -164,9 +164,9 @@ processCitations (Pandoc meta bs) = do
          walk (fixQuotes .  mvPunct moveNotes locale) $ walk deNote $
          evalState (walkM insertResolvedCitations $ Pandoc meta' bs)
          $ cits
-  return $ Pandoc meta''
-         $ insertRefs refkvs classes meta''
-            (walk fixLinks $ B.toList bibs) bs'
+  return $ walk fixLinks
+         $ Pandoc meta''
+         $ insertRefs refkvs classes meta'' (B.toList bibs) bs'
 
 -- If we have a span.csl-left-margin followed by span.csl-right-inline,
 -- we insert a space. This ensures that they will be separated by a space,
diff --git a/test/command/6723.md b/test/command/6723.md
new file mode 100644
index 000000000..f4455fcce
--- /dev/null
+++ b/test/command/6723.md
@@ -0,0 +1,33 @@
+```
+% pandoc --citeproc -t markdown-citations
+---
+csl: command/chicago-fullnote-bibliography.csl
+references:
+- id: doe
+  type: article
+  author:
+  - family: Doe
+    given: John
+  DOI: 10.1109/5.771073
+  issued:
+    - year: 2020
+  title: An article
+...
+Blah [@doe].
+
+# References {-}
+
+^D
+Blah.[^1]
+
+References {#references .unnumbered}
+==========
+
+::: {#refs .references .csl-bib-body .hanging-indent}
+::: {#ref-doe .csl-entry}
+Doe, John. "An Article," 2020. <https://doi.org/10.1109/5.771073>.
+:::
+:::
+
+[^1]: John Doe, "An Article," 2020, <https://doi.org/10.1109/5.771073>.
+```
diff --git a/test/command/chicago-fullnote-bibliography.csl b/test/command/chicago-fullnote-bibliography.csl
index 5bcfe59b3..7d9c48c54 100644
--- a/test/command/chicago-fullnote-bibliography.csl
+++ b/test/command/chicago-fullnote-bibliography.csl
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
-<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="never" page-range-format="chicago">
+<style xmlns="http://purl.org/net/xbiblio/csl" class="note" version="1.0" demote-non-dropping-particle="display-and-sort" page-range-format="chicago">
   <info>
-    <title>Chicago Manual of Style 16th edition (full note)</title>
+    <title>Chicago Manual of Style 17th edition (full note)</title>
     <id>http://www.zotero.org/styles/chicago-fullnote-bibliography</id>
     <link href="http://www.zotero.org/styles/chicago-fullnote-bibliography" rel="self"/>
     <link href="http://www.chicagomanualofstyle.org/tools_citationguide.html" rel="documentation"/>
@@ -25,24 +25,22 @@
       <name>Andrew Dunning</name>
       <email>andrew.dunning@utoronto.ca</email>
     </contributor>
+    <contributor>
+      <name>Sebastian Karcher</name>
+    </contributor>
     <category citation-format="note"/>
     <category field="generic-base"/>
     <summary>Chicago format with full notes and bibliography</summary>
-    <updated>2014-05-15T18:02:53+00:00</updated>
+    <updated>2017-10-12T12:00:00+00:00</updated>
     <rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
   </info>
   <locale xml:lang="en">
     <terms>
       <term name="editor" form="verb-short">ed.</term>
       <term name="translator" form="verb-short">trans.</term>
-      <term name="editortranslator" form="verb-short">
-        <single>ed. and trans.</single>
-        <multiple>ed. and trans.</multiple>
-      </term>
-      <term name="editortranslator" form="verb">
-        <single>Edited and translated by</single>
-        <multiple>Edited and translated by</multiple>
-      </term>
+      <term name="translator" form="short">trans.</term>
+      <term name="editortranslator" form="verb-short">ed. and trans.</term>
+      <term name="editortranslator" form="verb">Edited and translated by</term>
       <term name="translator" form="short">trans.</term>
     </terms>
   </locale>
@@ -68,21 +66,21 @@
   </macro>
   <macro name="secondary-contributors-note">
     <choose>
-      <if type="chapter paper-conference" match="none">
+      <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">
         <text macro="editor-translator"/>
       </if>
     </choose>
   </macro>
   <macro name="container-contributors-note">
     <choose>
-      <if type="chapter paper-conference" match="any">
+      <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
         <text macro="editor-translator"/>
       </if>
     </choose>
   </macro>
   <macro name="secondary-contributors">
     <choose>
-      <if type="chapter paper-conference" match="none">
+      <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="none">
         <names variable="editor translator" delimiter=". ">
           <label form="verb" text-case="capitalize-first" suffix=" "/>
           <name and="text" delimiter=", "/>
@@ -92,7 +90,7 @@
   </macro>
   <macro name="container-contributors">
     <choose>
-      <if type="chapter paper-conference" match="any">
+      <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
         <group delimiter=", ">
           <choose>
             <if variable="author">
@@ -233,14 +231,14 @@
       <if variable="title" match="none">
         <text variable="genre"/>
       </if>
-      <else-if type="bill book graphic  legislation motion_picture report song" match="any">
+      <else-if type="book graphic map motion_picture song" match="any">
         <text variable="title" text-case="title" font-style="italic"/>
         <group delimiter=" " prefix=", ">
           <text term="version"/>
           <text variable="version"/>
         </group>
       </else-if>
-      <else-if type="legal_case interview" match="any">
+      <else-if type="legal_case interview patent" match="any">
         <text variable="title"/>
       </else-if>
       <else-if variable="reviewed-author">
@@ -260,7 +258,7 @@
           </if>
         </choose>
       </if>
-      <else-if type="bill book graphic legislation motion_picture report song" match="any">
+      <else-if type="book graphic motion_picture song" match="any">
         <text variable="title" text-case="title" font-style="italic"/>
         <group prefix=" (" suffix=")" delimiter=" ">
           <text term="version"/>
@@ -276,7 +274,7 @@
           </names>
         </group>
       </else-if>
-      <else-if type="legal_case interview" match="any">
+      <else-if type="bill legislation legal_case interview patent" match="any">
         <text variable="title"/>
       </else-if>
       <else>
@@ -299,10 +297,16 @@
           </else-if>
         </choose>
       </if>
-      <else-if type="bill book graphic legislation motion_picture report song" match="any">
+      <else-if type="book graphic motion_picture song" match="any">
         <text variable="title" text-case="title" form="short" font-style="italic"/>
       </else-if>
-      <else-if type="legal_case interview" match="any">
+      <else-if type="legal_case" variable="title-short" match="all">
+        <text variable="title" font-style="italic" form="short"/>
+      </else-if>
+      <else-if type="patent interview" match="any">
+        <text variable="title" form="short"/>
+      </else-if>
+      <else-if type="legal_case bill legislation" match="any">
         <text variable="title"/>
       </else-if>
       <else>
@@ -323,11 +327,25 @@
       <text variable="medium"/>
       <choose>
         <if variable="title" match="none"/>
-        <else-if type="thesis speech" match="any"/>
+        <else-if type="manuscript thesis speech" match="any"/>
+        <else-if type="patent">
+          <group delimiter=" ">
+            <text variable="authority"/>
+            <text variable="number"/>
+          </group>
+        </else-if>
         <else>
           <text variable="genre"/>
         </else>
       </choose>
+      <choose>
+        <if type="map">
+          <text variable="scale"/>
+        </if>
+        <else-if type="graphic">
+          <text variable="dimensions"/>
+        </else-if>
+      </choose>
     </group>
   </macro>
   <macro name="description">
@@ -339,37 +357,63 @@
       <choose>
         <if variable="title" match="none"/>
         <else-if type="thesis speech" match="any"/>
+        <else-if type="patent">
+          <group delimiter=" ">
+            <text variable="authority"/>
+            <text variable="number"/>
+          </group>
+        </else-if>
         <else>
           <text variable="genre" text-case="capitalize-first"/>
         </else>
       </choose>
+      <choose>
+        <if type="map">
+          <text variable="scale"/>
+        </if>
+        <else-if type="graphic">
+          <text variable="dimensions"/>
+        </else-if>
+      </choose>
     </group>
   </macro>
   <macro name="container-title-note">
     <group delimiter=" ">
       <choose>
-        <if type="chapter paper-conference" match="any">
+        <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
           <text term="in"/>
         </if>
       </choose>
       <choose>
-        <if type="legal_case" match="none">
-          <text variable="container-title" text-case="title" font-style="italic"/>
+        <if type="webpage">
+          <text variable="container-title"/>
         </if>
+        <else-if type="post-weblog">
+          <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>
+        </else-if>
+        <else-if type="bill legislation legal_case" match="none">
+          <text variable="container-title" text-case="title" font-style="italic"/>
+        </else-if>
       </choose>
     </group>
   </macro>
   <macro name="container-title">
     <group delimiter=" ">
       <choose>
-        <if type="chapter paper-conference" match="any">
+        <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
           <text term="in" text-case="capitalize-first"/>
         </if>
       </choose>
       <choose>
-        <if type="legal_case" match="none">
-          <text variable="container-title" text-case="title" font-style="italic"/>
+        <if type="webpage">
+          <text variable="container-title"/>
         </if>
+        <else-if type="post-weblog">
+          <text variable="container-title" text-case="title" font-style="italic" suffix=" (blog)"/>
+        </else-if>
+        <else-if type="bill legislation legal_case" match="none">
+          <text variable="container-title" text-case="title" font-style="italic"/>
+        </else-if>
       </choose>
     </group>
   </macro>
@@ -405,7 +449,7 @@
   </macro>
   <macro name="edition-note">
     <choose>
-      <if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any">
+      <if type="book chapter graphic motion_picture paper-conference report song" match="any">
         <choose>
           <if is-numeric="edition">
             <group delimiter=" ">
@@ -422,7 +466,7 @@
   </macro>
   <macro name="edition">
     <choose>
-      <if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any">
+      <if type="book chapter graphic motion_picture paper-conference report song" match="any">
         <choose>
           <if is-numeric="edition">
             <group delimiter=" ">
@@ -477,17 +521,10 @@
           </group>
         </group>
       </if>
-      <else-if type="legal_case">
-        <group delimiter=", ">
-          <group delimiter=" ">
-            <number variable="volume"/>
-            <text variable="container-title"/>
-            <text variable="page"/>
-          </group>
-          <text variable="locator"/>
-        </group>
+      <else-if type="bill legislation legal_case" match="any">
+        <text macro="legal-cites"/>
       </else-if>
-      <else-if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any">
+      <else-if type="book chapter graphic motion_picture paper-conference report song" match="any">
         <group delimiter=", ">
           <text macro="edition-note"/>
           <group delimiter=" ">
@@ -506,6 +543,58 @@
       </else-if>
     </choose>
   </macro>
+  <macro name="legal-cites">
+    <choose>
+      <if type="legal_case" match="any">
+        <group delimiter=" ">
+          <choose>
+            <if variable="container-title">
+              <text variable="volume"/>
+              <text variable="container-title"/>
+              <group delimiter=" ">
+                <!--change to label variable="section" as that becomes available -->
+                <text term="section" form="symbol"/>
+                <text variable="section"/>
+              </group>
+              <text variable="page"/>
+            </if>
+            <else>
+              <text variable="number" prefix="No. "/>
+            </else>
+          </choose>
+        </group>
+      </if>
+      <else-if type="bill legislation" match="any">
+        <group delimiter=", ">
+          <choose>
+            <if variable="number">
+              <!--There's a public law number-->
+              <text variable="number" prefix="Pub. L. No. "/>
+              <group delimiter=" ">
+                <!--change to label variable="section" as that becomes available -->
+                <text term="section" form="symbol"/>
+                <text variable="section"/>
+              </group>
+              <group delimiter=" ">
+                <text variable="volume"/>
+                <text variable="container-title"/>
+                <text variable="page-first"/>
+              </group>
+            </if>
+            <else>
+              <group delimiter=" ">
+                <text variable="volume"/>
+                <text variable="container-title"/>
+                <!--change to label variable="section" as that becomes available -->
+                <text term="section" form="symbol"/>
+                <text variable="section"/>
+              </group>
+            </else>
+          </choose>
+        </group>
+      </else-if>
+    </choose>
+  </macro>
   <macro name="locators-join-with-space">
     <choose>
       <if type="article-journal" variable="volume" match="all">
@@ -519,7 +608,7 @@
   </macro>
   <macro name="locators-join-with-comma">
     <choose>
-      <if type="legal_case chapter paper-conference" match="any">
+      <if type="bill chapter legislation legal_case paper-conference" match="any">
         <text macro="locators"/>
       </if>
       <else-if type="article-journal">
@@ -536,7 +625,7 @@
   </macro>
   <macro name="locators-join-with-period">
     <choose>
-      <if type="legal_case article-journal chapter paper-conference" match="none">
+      <if type="bill legislation legal_case article-journal chapter paper-conference" match="none">
         <text macro="locators"/>
       </if>
     </choose>
@@ -553,14 +642,10 @@
           </group>
         </group>
       </if>
-      <else-if type="legal_case">
-        <group delimiter=" ">
-          <number variable="volume"/>
-          <text variable="container-title"/>
-          <text variable="page"/>
-        </group>
+      <else-if type="bill legislation legal_case" match="any">
+        <text macro="legal-cites"/>
       </else-if>
-      <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
+      <else-if type="book graphic motion_picture report song" match="any">
         <group delimiter=". ">
           <text macro="edition"/>
           <group delimiter=" ">
@@ -573,7 +658,7 @@
           </group>
         </group>
       </else-if>
-      <else-if type="chapter paper-conference" match="any">
+      <else-if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
         <group delimiter=". ">
           <text macro="edition"/>
           <choose>
@@ -604,12 +689,55 @@
       </if>
     </choose>
   </macro>
+  <macro name="event-note">
+    <text variable="event"/>
+  </macro>
   <macro name="event">
-    <group delimiter=" ">
-      <text term="presented at"/>
-      <text variable="event"/>
+    <choose>
+      <if variable="title">
+        <group delimiter=" ">
+          <text term="presented at"/>
+          <text variable="event"/>
+        </group>
+      </if>
+      <else>
+        <group delimiter=" ">
+          <text term="presented at" text-case="capitalize-first"/>
+          <text variable="event"/>
+        </group>
+      </else>
+    </choose>
+  </macro>
+  <macro name="originally-published">
+    <group delimiter=", ">
+      <group delimiter=": ">
+        <text variable="original-publisher-place"/>
+        <text variable="original-publisher"/>
+      </group>
+      <date variable="original-date" form="text" date-parts="year"/>
     </group>
   </macro>
+  <macro name="reprint-note">
+    <!--needs localization-->
+    <choose>
+      <if variable="original-date issued" match="all">
+        <choose>
+          <!--for whatever reason in notes, when we have both original and new publishers, reprint doesn't appear-->
+          <if variable="original-publisher original-publisher-place" match="none">
+            <text value="repr."/>
+          </if>
+        </choose>
+      </if>
+    </choose>
+  </macro>
+  <macro name="reprint">
+    <!--needs localization-->
+    <choose>
+      <if variable="original-date issued" match="all">
+        <text value="reprint" text-case="capitalize-first"/>
+      </if>
+    </choose>
+  </macro>
   <macro name="publisher">
     <choose>
       <if type="thesis">
@@ -630,27 +758,64 @@
     <choose>
       <if variable="issued">
         <choose>
-          <if type="graphic report" match="any">
-            <date variable="issued" form="text"/>
-          </if>
-          <else-if type="legal_case">
+          <if type="legal_case">
             <group delimiter=" ">
               <text variable="authority"/>
-              <date variable="issued">
-                <date-part name="year"/>
-              </date>
+              <choose>
+                <if variable="container-title" match="any">
+                  <!--Only print year for cases published in reporters-->
+                  <date variable="issued" form="numeric" date-parts="year"/>
+                </if>
+                <else>
+                  <date variable="issued" form="text"/>
+                </else>
+              </choose>
+            </group>
+          </if>
+          <else-if type="book bill chapter  legislation motion_picture paper-conference song thesis" match="any">
+            <choose>
+              <if is-uncertain-date="issued">
+                <date variable="issued" form="numeric" date-parts="year" prefix="[" suffix="?]"/>
+              </if>
+              <else>
+                <date variable="issued" form="numeric" date-parts="year"/>
+              </else>
+            </choose>
+          </else-if>
+          <else-if type="patent">
+            <group delimiter=", ">
+              <group delimiter=" ">
+                <!--Needs Localization-->
+                <text value="filed"/>
+                <date variable="submitted" form="text"/>
+              </group>
+              <group delimiter=" ">
+                <choose>
+                  <if variable="issued submitted" match="all">
+                    <text term="and"/>
+                  </if>
+                </choose>
+                <!--Needs Localization-->
+                <text value="issued"/>
+                <date variable="issued" form="text"/>
+              </group>
             </group>
           </else-if>
-          <else-if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song thesis" match="any">
-            <date variable="issued">
-              <date-part name="year"/>
-            </date>
-          </else-if>
           <else>
-            <date variable="issued" form="text"/>
+            <choose>
+              <if is-uncertain-date="issued">
+                <date variable="issued" form="text" prefix="[" suffix="?]"/>
+              </if>
+              <else>
+                <date variable="issued" form="text"/>
+              </else>
+            </choose>
           </else>
         </choose>
       </if>
+      <else-if variable="status">
+        <text variable="status"/>
+      </else-if>
       <else-if variable="accessed URL" match="all"/>
       <else>
         <text term="no date" form="short"/>
@@ -659,12 +824,28 @@
   </macro>
   <macro name="point-locators-subsequent">
     <choose>
-      <if variable="locator">
+      <if type="legal_case" variable="locator" match="all">
+        <choose>
+          <if locator="page">
+            <group delimiter=":">
+              <number variable="volume"/>
+              <text variable="locator"/>
+            </group>
+          </if>
+          <else>
+            <group delimiter=" ">
+              <label variable="locator" form="short"/>
+              <text variable="locator"/>
+            </group>
+          </else>
+        </choose>
+      </if>
+      <else-if variable="locator">
         <choose>
           <if locator="page" match="none">
             <group delimiter=" ">
               <choose>
-                <if type="bill book graphic legal_case legislation motion_picture report song" match="any">
+                <if type="book graphic motion_picture report song" match="any">
                   <choose>
                     <if variable="volume">
                       <group delimiter=", ">
@@ -687,7 +868,7 @@
               <text variable="locator"/>
             </group>
           </if>
-          <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
+          <else-if type="book graphic motion_picture report song" match="any">
             <group delimiter=":">
               <number variable="volume" form="numeric"/>
               <text variable="locator"/>
@@ -697,7 +878,7 @@
             <text variable="locator"/>
           </else>
         </choose>
-      </if>
+      </else-if>
     </choose>
   </macro>
   <macro name="point-locators-join-with-colon">
@@ -759,7 +940,7 @@
   </macro>
   <macro name="locators-chapter">
     <choose>
-      <if type="chapter paper-conference" match="any">
+      <if type="chapter entry-dictionary entry-encyclopedia paper-conference" match="any">
         <choose>
           <if variable="author container-author" match="all"/>
           <else>
@@ -832,7 +1013,7 @@
   </macro>
   <macro name="issue-note-join-with-space">
     <choose>
-      <if type="article-journal legal_case" variable="publisher-place publisher" match="any">
+      <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place publisher" match="any">
         <!--Chicago doesn't use publisher/place for Newspapers and we want the date delimited by a comma-->
         <choose>
           <if type="article-newspaper" match="none">
@@ -851,7 +1032,7 @@
   </macro>
   <macro name="issue-note-join-with-comma">
     <choose>
-      <if type="article-journal legal_case" variable="publisher-place publisher" match="none">
+      <if type="article-journal bill legislation legal_case manuscript thesis" variable="publisher-place publisher" match="none">
         <text macro="issue-note"/>
       </if>
       <else-if type="article-newspaper">
@@ -866,9 +1047,21 @@
       </else-if>
     </choose>
   </macro>
+  <macro name="issue-map-graphic">
+    <!--See CMoS 17th ed. 14.235 and 14.237-->
+    <choose>
+      <if type="graphic map" match="any">
+        <choose>
+          <if variable="publisher publisher-place" match="none">
+            <text macro="issued"/>
+          </if>
+        </choose>
+      </if>
+    </choose>
+  </macro>
   <macro name="issue-note">
     <choose>
-      <if type="legal_case" match="any">
+      <if type="bill legislation legal_case" match="any">
         <text macro="issued" prefix="(" suffix=")"/>
       </if>
       <else-if type="article-journal">
@@ -884,18 +1077,27 @@
       <else-if type="article-newspaper">
         <text macro="issued"/>
       </else-if>
-      <else-if variable="publisher-place event-place publisher genre" match="any">
+      <else-if type="manuscript thesis speech" match="any">
+        <group delimiter=", " prefix="(" suffix=")">
+          <choose>
+            <if variable="title" match="any">
+              <text variable="genre"/>
+            </if>
+          </choose>
+          <text variable="publisher"/>
+          <text macro="issued"/>
+        </group>
+      </else-if>
+      <else-if variable="publisher-place event-place publisher" match="any">
         <group prefix="(" suffix=")" delimiter=", ">
-          <group delimiter=" ">
-            <choose>
-              <if variable="title" match="none"/>
-              <else-if type="thesis speech" match="any">
-                <text variable="genre"/>
-              </else-if>
-            </choose>
-            <text macro="event"/>
+          <text macro="event-note"/>
+          <group delimiter="; ">
+            <text macro="originally-published"/>
+            <group delimiter=", ">
+              <text macro="reprint-note"/>
+              <text macro="publisher"/>
+            </group>
           </group>
-          <text macro="publisher"/>
           <text macro="issued"/>
         </group>
       </else-if>
@@ -906,18 +1108,21 @@
   </macro>
   <macro name="issue-join-with-space">
     <choose>
-      <if type="article-journal legal_case" match="any">
+      <if type="article-journal" match="any">
         <choose>
           <if variable="issue volume" match="any">
             <text macro="issue"/>
           </if>
         </choose>
       </if>
+      <else-if type="bill legislation legal_case" match="any">
+        <text macro="issue"/>
+      </else-if>
     </choose>
   </macro>
   <macro name="issue-join-with-period">
     <choose>
-      <if type="article-journal legal_case" match="none">
+      <if type="article-journal bill legislation legal_case" match="none">
         <choose>
           <if type="speech" variable="publisher publisher-place" match="any">
             <text macro="issue"/>
@@ -928,21 +1133,25 @@
   </macro>
   <macro name="issue-join-with-comma">
     <choose>
-      <if type="article-journal legal_case" match="none">
+      <if type="bill legislation legal_case" match="none">
         <choose>
-          <if type="speech" variable="publisher publisher-place" match="none">
-            <text macro="issue"/>
+          <if type="article-journal" match="none">
+            <choose>
+              <if type="speech" variable="publisher publisher-place" match="none">
+                <text macro="issue"/>
+              </if>
+            </choose>
           </if>
+          <else-if variable="volume issue" match="none">
+            <text macro="issue"/>
+          </else-if>
         </choose>
       </if>
-      <else-if variable="volume issue" match="none">
-        <text macro="issue"/>
-      </else-if>
     </choose>
   </macro>
   <macro name="issue">
     <choose>
-      <if type="legal_case" match="any">
+      <if type="bill legislation legal_case" match="any">
         <text macro="issued" prefix="(" suffix=")"/>
       </if>
       <else-if type="article-journal">
@@ -981,13 +1190,20 @@
               <text variable="genre" text-case="capitalize-first"/>
             </if>
           </choose>
-          <text macro="publisher"/>
+          <group delimiter=". ">
+            <text macro="originally-published"/>
+            <group delimiter=", ">
+              <text macro="reprint"/>
+              <text macro="publisher"/>
+            </group>
+          </group>
           <text macro="issued"/>
         </group>
       </else-if>
-      <else>
+      <!--location for data for maps and artwork is different-->
+      <else-if type="graphic map" match="none">
         <text macro="issued"/>
-      </else>
+      </else-if>
     </choose>
   </macro>
   <macro name="access-note">
@@ -1012,7 +1228,7 @@
         <if type="legal_case" match="none">
           <choose>
             <if variable="DOI">
-              <text variable="DOI" prefix="doi:"/>
+              <text variable="DOI" prefix="https://doi.org/"/>
             </if>
             <else>
               <text variable="URL"/>
@@ -1044,7 +1260,7 @@
         <if type="legal_case" match="none">
           <choose>
             <if variable="DOI">
-              <text variable="DOI" prefix="doi:"/>
+              <text variable="DOI" prefix="https://doi.org/"/>
             </if>
             <else>
               <text variable="URL"/>
@@ -1057,29 +1273,55 @@
   <macro name="case-locator-subsequent">
     <choose>
       <if type="legal_case">
-        <text macro="locators-note"/>
+        <group delimiter=" ">
+          <text variable="volume"/>
+          <text variable="container-title"/>
+        </group>
       </if>
     </choose>
   </macro>
-  <macro name="case-issue-subsequent">
+  <macro name="case-pinpoint-subsequent">
     <choose>
       <if type="legal_case">
-        <text macro="issue"/>
+        <group delimiter=" ">
+          <choose>
+            <if locator="page">
+              <text term="at"/>
+              <text variable="locator"/>
+            </if>
+            <else>
+              <label variable="locator"/>
+              <text variable="locator"/>
+            </else>
+          </choose>
+        </group>
       </if>
     </choose>
   </macro>
   <citation et-al-min="4" et-al-use-first="1" disambiguate-add-names="true">
     <layout suffix="." delimiter="; ">
       <choose>
-        <if position="ibid-with-locator">
+        <if position="ibid ibid-with-locator" match="any">
           <group delimiter=", ">
-            <text term="ibid"/>
-            <text macro="point-locators-subsequent"/>
+            <text macro="contributors-short"/>
+            <group delimiter=" ">
+              <group delimiter=", ">
+                <choose>
+                  <if variable="author editor translator" match="none">
+                    <text macro="title-short"/>
+                  </if>
+                </choose>
+                <text macro="case-locator-subsequent"/>
+              </group>
+              <text macro="case-pinpoint-subsequent"/>
+            </group>
+            <choose>
+              <if match="none" type="legal_case">
+                <text macro="point-locators-subsequent"/>
+              </if>
+            </choose>
           </group>
         </if>
-        <else-if position="ibid">
-          <text term="ibid"/>
-        </else-if>
         <else-if position="subsequent">
           <group delimiter=", ">
             <text macro="contributors-short"/>
@@ -1090,9 +1332,13 @@
                 <text macro="date-disambiguate"/>
                 <text macro="case-locator-subsequent"/>
               </group>
-              <text macro="case-issue-subsequent"/>
+              <text macro="case-pinpoint-subsequent"/>
             </group>
-            <text macro="point-locators-subsequent"/>
+            <choose>
+              <if match="none" type="legal_case">
+                <text macro="point-locators-subsequent"/>
+              </if>
+            </choose>
           </group>
         </else-if>
         <else>
@@ -1106,6 +1352,7 @@
                         <group delimiter=", ">
                           <text macro="contributors-note"/>
                           <text macro="title-note"/>
+                          <text macro="issue-map-graphic"/>
                         </group>
                         <text macro="description-note"/>
                         <text macro="secondary-contributors-note"/>
@@ -1150,6 +1397,7 @@
                       <group delimiter=". ">
                         <text macro="contributors"/>
                         <text macro="title"/>
+                        <text macro="issue-map-graphic"/>
                       </group>
                       <text macro="description"/>
                       <text macro="secondary-contributors"/>
diff --git a/test/command/citeproc-7a.md b/test/command/citeproc-7a.md
index fc4e799cf..386ba3594 100644
--- a/test/command/citeproc-7a.md
+++ b/test/command/citeproc-7a.md
@@ -34,7 +34,7 @@ Doe, John. "Test," n.d.
 
 [^1]: John Doe, "Test," n.d., 12.
 
-[^2]: Ibid.
+[^2]: Doe, 12.
 
 [^3]: asdfasdf
 
diff --git a/test/command/pandoc-citeproc-360.md b/test/command/pandoc-citeproc-360.md
index 233551304..7cb8e4f61 100644
--- a/test/command/pandoc-citeproc-360.md
+++ b/test/command/pandoc-citeproc-360.md
@@ -25,11 +25,11 @@ references:
 
 ::: {#refs .references .csl-bib-body .hanging-indent}
 ::: {#ref-lestrange2017 .csl-entry}
-L'Estrange, Michael, and Stephen Merchant. *2017 Independent
-Intelligence Review*, July 18, 2017.
+L'Estrange, Michael, and Stephen Merchant. "2017 Independent
+Intelligence Review," July 18, 2017.
 :::
 :::
 
-[^1]: Michael L'Estrange and Stephen Merchant, *2017 Independent
-    Intelligence Review*, July 18, 2017.
+[^1]: Michael L'Estrange and Stephen Merchant, "2017 Independent
+    Intelligence Review," July 18, 2017.
 ```
diff --git a/test/command/pandoc-citeproc-68.md b/test/command/pandoc-citeproc-68.md
index d384f0e69..7f0dd784e 100644
--- a/test/command/pandoc-citeproc-68.md
+++ b/test/command/pandoc-citeproc-68.md
@@ -49,8 +49,8 @@ Pontifical Institute of Mediaeval Studies, 1992.
     Care*, Studies and Texts 108 (Toronto: Pontifical Institute of
     Mediaeval Studies, 1992), 501--3.
 
-[^2]: Excerpts from this text were previously printed in ibid., 508--14;
-    it was also briefly described in ibid., 141--42.
+[^2]: Excerpts from this text were previously printed in Goering,
+    508--14; it was also briefly described in Goering, 141--42.
 
 [^3]: Goering, *William de Montibus*, 141--42.
 ```
diff --git a/test/command/pandoc-citeproc-77.md b/test/command/pandoc-citeproc-77.md
index d7090edb4..cc0494539 100644
--- a/test/command/pandoc-citeproc-77.md
+++ b/test/command/pandoc-citeproc-77.md
@@ -52,12 +52,12 @@ Doe, John, III, n.d.
 Dumboldt, Ezekiel, III, n.d.
 :::
 
-::: {#ref-item3 .csl-entry}
-Humboldt, Alexander von, n.d.
+::: {#ref-item2 .csl-entry}
+Gogh, Vincent van, n.d.
 :::
 
-::: {#ref-item2 .csl-entry}
-van Gogh, Vincent, n.d.
+::: {#ref-item3 .csl-entry}
+Humboldt, Alexander von, n.d.
 :::
 :::
 
diff --git a/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md b/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md
index ff23c326c..567e6e4f0 100644
--- a/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md
+++ b/test/command/pandoc-citeproc-chicago-fullnote-bibliography.md
@@ -105,9 +105,9 @@ Sam Smith. Oxford: Oxford University Press, 2007.
 [^3]: [*First Book* (Cambridge: Cambridge University Press,
     2005)](#ref-item1).
 
-[^4]: [Ibid., 30](#ref-item1).
+[^4]: [30](#ref-item1).
 
-[^5]: [Ibid.](#ref-item1), with suffix.
+[^5]: [30](#ref-item1), with suffix.
 
 [^6]: [*First Book*, 2005](#ref-item1); ["Article," *Journal of Generic
     Studies* 6 (2006): 30](#ref-item2); see also [John Doe and Jenny
@@ -123,7 +123,7 @@ Sam Smith. Oxford: Oxford University Press, 2007.
 
 [^9]: See [Doe, *First Book*, 2005, 34--35](#ref-item1).
 
-[^10]: Some citations (See [ibid., chap. 3](#ref-item1); [Doe and Roe,
+[^10]: Some citations (See [Doe, chap. 3](#ref-item1); [Doe and Roe,
     "Why Water Is Wet"](#ref-пункт3); [Doe, "Article,"
     2006](#ref-item2)).
 
@@ -132,9 +132,8 @@ Sam Smith. Oxford: Oxford University Press, 2007.
 
 [^12]: [Doe, *First Book*, 2005](#ref-item1) and nowhere else.
 
-[^13]: Like a citation without author: ([Ibid.](#ref-item1)), and again
-    ([Ibid.](#ref-item1)), and now Doe with a locator (["Article," 2006,
-    44](#ref-item2)).
+[^13]: Like a citation without author: (), and again (), and now Doe
+    with a locator (["Article," 2006, 44](#ref-item2)).
 
 [^14]: *See* [Doe, *First Book*, 2005, 32](#ref-item1).
 ```
diff --git a/test/command/pandoc-citeproc-move-period-inside-quote.md b/test/command/pandoc-citeproc-move-period-inside-quote.md
index e08c6b00f..86c330dff 100644
--- a/test/command/pandoc-citeproc-move-period-inside-quote.md
+++ b/test/command/pandoc-citeproc-move-period-inside-quote.md
@@ -46,8 +46,7 @@ Here is a test citation.[^2]
 
 [^1]: J. D. Watson and F. H. C. Crick, "Molecular Structure of Nucleic
     Acids: A Structure for Deoxyribose Nucleic Acid," *Nature* 171, no.
-    4356 (April 25, 1953): 737--38,
-    doi:[10.1038/171737a0](https://doi.org/10.1038/171737a0).
+    4356 (April 25, 1953): 737--38, <https://doi.org/10.1038/171737a0>.
 
-[^2]: Ibid.
+[^2]: Watson and Crick.
 ```