diff --git a/src/edown_layout.erl b/src/edown_layout.erl
index 84f7246e8e8afd25d79de9a1237a5fdd8fc8a7cb..f33ee16262032e9ca0deb36610bb1186b176dd61 100644
--- a/src/edown_layout.erl
+++ b/src/edown_layout.erl
@@ -905,7 +905,9 @@ t_type([E = #xmlElement{name = record, content = Es}]) ->
 t_type([E = #xmlElement{name = abstype, content = Es}]) ->
     t_abstype(E, Es);
 t_type([#xmlElement{name = union, content = Es}]) ->
-    t_union(Es).
+    t_union(Es);
+t_type([#xmlElement{name = type} = K, #xmlElement{name = type} = V]) ->
+    t_map_field([K,V]).
 
 t_var(E) ->
     [get_attrval(name, E)].