Set xsi:type during object construction.
[shibboleth/cpp-xmltooling.git] / xmltooling / impl / UnknownElement.h
index 3b4862d..4e2e03b 100644 (file)
@@ -23,6 +23,7 @@
 #if !defined(__xmltooling_unkelement_h__)\r
 #define __xmltooling_unkelement_h__\r
 \r
+#include <xmltooling/exceptions.h>\r
 #include <xmltooling/XMLObjectBuilder.h>\r
 #include <xmltooling/io/AbstractXMLObjectMarshaller.h>\r
 #include <xmltooling/io/AbstractXMLObjectUnmarshaller.h>\r
@@ -36,9 +37,7 @@
 \r
 namespace xmltooling {\r
 \r
-    /**\r
-     * Implements a thin wrapper around unknown DOM content.\r
-     */\r
+    /// @cond off\r
     class XMLTOOL_DLLLOCAL UnknownElementImpl : public AbstractDOMCachingXMLObject\r
     {\r
     public:\r
@@ -66,17 +65,19 @@ namespace xmltooling {
 \r
         void serialize(std::string& s) const;\r
     };\r
-\r
+    /// @endcond\r
+    \r
     /**\r
-     * Factory for UnknownElementImpl objects.\r
+     * Builder for UnknownElementImpl objects.\r
+     * Use as the default builder when you want unknown DOM content treated as raw/ignored XML.\r
      */\r
     class XMLTOOL_API UnknownElementBuilder : public XMLObjectBuilder\r
     {\r
     public:\r
-        UnknownElementImpl* buildObject(\r
-            const XMLCh* namespaceURI, const XMLCh* elementLocalName, const XMLCh* namespacePrefix=NULL\r
+        XMLObject* buildObject(\r
+            const XMLCh* nsURI, const XMLCh* localName, const XMLCh* prefix=NULL, const QName* schemaType=NULL\r
             ) const {\r
-            return new UnknownElementImpl(namespaceURI,elementLocalName,namespacePrefix);\r
+            return new UnknownElementImpl(nsURI,localName,prefix);\r
         }\r
     };\r
 \r