diff --git a/instant-xml-macros/src/ser.rs b/instant-xml-macros/src/ser.rs
index a4457dd..cb3a803 100644
--- a/instant-xml-macros/src/ser.rs
+++ b/instant-xml-macros/src/ser.rs
@@ -228,7 +228,6 @@ fn serialize_struct(
) -> Result<(), instant_xml::Error> {
// Start tag
let prefix = serializer.write_start(#tag, #default_namespace)?;
- debug_assert_eq!(prefix, None);
// Set up element context, this will also emit namespace declarations
#context
diff --git a/instant-xml/tests/ser-child-ns.rs b/instant-xml/tests/ser-child-ns.rs
index 3162b2b..afcc97b 100644
--- a/instant-xml/tests/ser-child-ns.rs
+++ b/instant-xml/tests/ser-child-ns.rs
@@ -47,3 +47,34 @@ fn struct_child_namespaces() {
"falsetruefalse"
);
}
+
+#[derive(Debug, ToXml)]
+#[xml(rename = "DIDL-Lite", ns("DIDL", upnp = "UPNP"))]
+pub struct DidlLite {
+ pub item: UpnpItem,
+}
+
+#[derive(Debug, ToXml)]
+#[xml(rename = "item", ns("DIDL"))]
+pub struct UpnpItem {
+ pub album_art: Option,
+}
+
+#[derive(Debug, ToXml)]
+#[xml(rename = "albumArtURI", ns("UPNP", upnp = "UPNP"))]
+pub struct AlbumArtUri {
+ #[xml(direct)]
+ pub uri: String,
+}
+
+#[test]
+fn test_didl() {
+ let didl = DidlLite {
+ item: UpnpItem {
+ album_art: Some(AlbumArtUri {
+ uri: "http://art".to_string(),
+ }),
+ },
+ };
+ assert_eq!(to_string(&didl).unwrap(), "- http://art
");
+}