oXygen is an XML editor that supports any XML document, and works with XML Schemas, DTDs, Relax NG schemas, and NRL Schemas. It has powerful transformation support that allows you to edit XSLT and XSL-FO documents and to obtain documents in the desired output format (such as HTML, PS, or PDF) with just one click. It also includes a complete Subversion client, support for flattening XML Schemata, an XML Schema instance generator, integration with the X-Hive/DB, MarkLogic and TigerLogic XML databases, editing actions on the diagram, and a rename refactoring action.
CDuce is a programming language adapted to writing safe and efficient applications that manipulate XML documents. A type system checks at compile time that applications deal with all the possible inputs and produce only valid outputs. Pattern matching is a powerful operation based on regular expressions to inspect documents. CDuce also features general-purpose features; it is a higher-order functional language, with a type-safe interface with Objective Caml.