diff --git a/cli/tests/input/draft-v3-features.xml b/cli/tests/input/draft-v3-features.xml
index f36a6e124..a44c3e775 100644
--- a/cli/tests/input/draft-v3-features.xml
+++ b/cli/tests/input/draft-v3-features.xml
@@ -519,8 +519,8 @@ foo = bar
Tables
Bare Table (unnamed, no anchor, with iref)
-
+
Column 1 |
diff --git a/cli/xml2rfc/data/v3.rnc b/cli/xml2rfc/data/v3.rnc
index e71686b36..3753ba33c 100644
--- a/cli/xml2rfc/data/v3.rnc
+++ b/cli/xml2rfc/data/v3.rnc
@@ -723,6 +723,7 @@
attribute anchor { xsd:ID }?,
attribute pn { xsd:ID }?,
name?,
+ iref*,
thead?,
tbody+,
tfoot?
diff --git a/cli/xml2rfc/data/v3.rng b/cli/xml2rfc/data/v3.rng
index e6a6c0983..998c874aa 100644
--- a/cli/xml2rfc/data/v3.rng
+++ b/cli/xml2rfc/data/v3.rng
@@ -1629,6 +1629,9 @@
+
+
+
diff --git a/cli/xml2rfc/writers/html.py b/cli/xml2rfc/writers/html.py
index 64a612a15..29081c02a 100644
--- a/cli/xml2rfc/writers/html.py
+++ b/cli/xml2rfc/writers/html.py
@@ -1394,7 +1394,12 @@ def entry(dl, name, value):
#
#
def render_iref(self, h, x):
- return add.span(h, x, classes='iref', id=x.get('pn'))
+ span = build.span(classes='iref', id=x.get('pn'))
+ if h.tag in ['table', ]:
+ h.addprevious(span)
+ else:
+ h.append(span)
+ return span
# 9.28.
#