mtext_serialize(3) Serialize text properties in an M-text.


MText* mtext_serialize (MText * mt, int from, int to, MPlist * property_list)


Serialize text properties in an M-text. The mtext_serialize() function serializes the text between from and to in M-text mt. The serialized result is an M-text in a form of XML. property_list limits the text properties to be serialized. Only those text properties whose key

  • appears as the value of an element in property_list, and
  • has the symbol property Mtext_prop_serializer

are serialized as a 'property' element in the resulting XML representation.

The DTD of the generated XML is as follows:

<!DOCTYPE mtext [
  <!ELEMENT mtext (property*,body+)>
  <!ELEMENT property EMPTY>
  <!ELEMENT body (#PCDATA)>
  <!ATTLIST property key CDATA #REQUIRED>
  <!ATTLIST property value CDATA #REQUIRED>
  <!ATTLIST property from CDATA #REQUIRED>
  <!ATTLIST property to CDATA #REQUIRED>
  <!ATTLIST property control CDATA #REQUIRED>

This function depends on the libxml2 library. If the m17n library is configured without libxml2, this function always fails.


If the operation was successful, mtext_serialize() returns an M-text in the form of XML. Otherwise it returns NULL and assigns an error code to the external variable merror_code.


Copyright (C) 2001 Information-technology Promotion Agency (IPA)
Copyright (C) 2001-2011 National Institute of Advanced Industrial Science and Technology (AIST)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License <>.