+/** \brief Converts buffer using iconv and appends to WRBUF
+ \param b WRBUF
+ \param cd iconv handle
+ \param buf buffer
+ \param size size of buffer
+*/
+YAZ_EXPORT void wrbuf_iconv_write(WRBUF b, yaz_iconv_t cd, const char *buf,
+ size_t size);
+
+/** \brief Converts buffer using iconv and appends to WRBUF as XML CDATA
+ \param b WRBUF
+ \param cd iconv handle
+ \param buf buffer
+ \param size size of buffer
+*/
+YAZ_EXPORT void wrbuf_iconv_write_cdata(WRBUF b, yaz_iconv_t cd,
+ const char *buf, size_t size);
+
+/** \brief iconv converts C-string and appends to WRBUF
+ \param b WRBUF
+ \param cd iconv handle
+ \param str C-string
+*/
+YAZ_EXPORT void wrbuf_iconv_puts(WRBUF b, yaz_iconv_t cd, const char *str);
+
+/** \brief iconv converts C-string and appends to WRBUF as XML CDATA
+ \param b WRBUF
+ \param cd iconv handle
+ \param str C-string
+*/
+YAZ_EXPORT void wrbuf_iconv_puts_cdata(WRBUF b, yaz_iconv_t cd,
+ const char *str);
+
+/** \brief iconv converts character and appends to WRBUF
+ \param b WRBUF
+ \param cd iconv handle
+ \param ch character
+*/
+YAZ_EXPORT void wrbuf_iconv_putchar(WRBUF b, yaz_iconv_t cd, int ch);
+
+/** \brief iconv reset(flush) to WRBUF
+ \param b
+ \param cd iconv handle
+
+ This function calls iconv(cd, 0, 0, ..) to make it
+ flush any remaining content.
+*/