While investigating how to produce UTD using libxml2 I found that it has a function xmlGetLang which will get the value of the language attribute in a node or its nearest ancestor. We just need to figure out how to use this information along with user preferences. John -- John J. boyer; President, Chief Software Developer Abilitiessoft, Inc. http://www.abilitiessoft.com Madison, Wisconsin USA Developing software for people with disabilities For a description of the software and to download it go to http://www.jjb-software.com