diff --git a/src/Text/Pandoc/Writers/JATS.hs b/src/Text/Pandoc/Writers/JATS.hs
index 8824eeb24..901bcb646 100644
--- a/src/Text/Pandoc/Writers/JATS.hs
+++ b/src/Text/Pandoc/Writers/JATS.hs
@@ -316,6 +316,9 @@ tableItemToJATS :: PandocMonad m
-> Bool
-> [Block]
-> JATS m Doc
+tableItemToJATS opts isHeader [Plain item] =
+ inTags True (if isHeader then "th" else "td") [] <$>
+ inlinesToJATS opts item
tableItemToJATS opts isHeader item =
(inTags True (if isHeader then "th" else "td") [] . vcat) <$>
mapM (blockToJATS opts) item
@@ -405,8 +408,11 @@ inlineToJATS opts (Link (ident,_,kvs) txt ('#':src, _)) = do
[("alt", stringify txt) | not (null txt)] ++
[("rid", src)] ++
[(k,v) | (k,v) <- kvs, k `elem` ["ref-type", "specific-use"]]
- contents <- inlinesToJATS opts txt
- return $ inTags False "xref" attr contents
+ if null txt
+ then return $ selfClosingTag "xref" attr
+ else do
+ contents <- inlinesToJATS opts txt
+ return $ inTags False "xref" attr contents
inlineToJATS opts (Link (ident,_,kvs) txt (src, tit)) = do
let attr = [("id", ident) | not (null ident)] ++
[("ext-link-type", "uri"),
diff --git a/test/tables.jats b/test/tables.jats
index b213a83bb..46af61635 100644
--- a/test/tables.jats
+++ b/test/tables.jats
@@ -15,92 +15,60 @@
- Right
-
- Left
-
- Center
-
- Default
-
-
-
-
-
- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- Right -
+ Right- Left -
+ Left- Center -
+ Center- Default -
+ Default- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- Right -
+ Right- Left -
+ Left- Center -
+ Center- Default -
+ Default- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- Centered Header -
+ Centered Header- Left Aligned -
+ Left Aligned- Right Aligned -
+ Right Aligned- Default aligned -
+ Default aligned- First -
+ First- row -
+ row- 12.0 -
+ 12.0- Example of a row that spans multiple lines. -
+ Example of a row that spans multiple lines.- Second -
+ Second- row -
+ row- 5.0 -
+ 5.0- Here’s another one. Note the blank line between rows. -
+ Here’s another one. Note the blank line between rows.- Centered Header -
+ Centered Header- Left Aligned -
+ Left Aligned- Right Aligned -
+ Right Aligned- Default aligned -
+ Default aligned- First -
+ First- row -
+ row- 12.0 -
+ 12.0- Example of a row that spans multiple lines. -
+ Example of a row that spans multiple lines.- Second -
+ Second- row -
+ row- 5.0 -
+ 5.0- Here’s another one. Note the blank line between rows. -
+ Here’s another one. Note the blank line between rows.- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 12 -
+ 12- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 123 -
+ 123- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- 1 -
+ 1- First -
+ First- row -
+ row- 12.0 -
+ 12.0- Example of a row that spans multiple lines. -
+ Example of a row that spans multiple lines.- Second -
+ Second- row -
+ row- 5.0 -
+ 5.0- Here’s another one. Note the blank line between rows. -
+ Here’s another one. Note the blank line between rows.