XPath To XML Translet

Translet

Download

What is it?

This is an application for creating XML documents from data. The idea is to transform a set of XPath expressions and it's associated values into an XML document. Well, it is not as confusing as it sounds. Please continue reading and checkout the examples.

Typical usage scenarios:

  • How do I converted the data posted using HTML forms into XML document with minimum/no work?
  • I have just the data and I know the DTD (or schema) that this data should adhere to, how do I create the XML document with minimum/no work?
  • How do I remove the dependency on the changing document DTD (or schema) on the application that is used to create the XML document.

Please see the examples below about how this may work. IMHO, this approach is a very innovative way of creating XML documents from raw data and has never been tried before in the scope described here. The reason why this has never been tried is that the problem of converting an XPath expression into an XML node (reverse of selecting an XML node from a document using XPath expression) is an open ended problem. This application solves the problem by setting rules for the open ended issues and makes them solvable.

Suppose I have the following data from which I want to create an XML document:



"/users/person[1]/name/firstname" => "Mike"
"/users/person[2]/name/firstname" => "John"
"/users/person[1]/name/lastname" => "Jelks"
"/users/person[2]/name/lastname" => "Wayne"
"/users/person[1]/name/@ssn" => "xxx-xx-xxxx"
"/users/person[2]/name/@ssn" => "yyy-yy-yyyy"
And I expect the final document to look like:

<users>
<person>
<name ssn="xxx-xx-xxxx">
<firstname>Mike</firstname>
<lastname>Jelks</lastname>
</name>
</person>
<person>
<name ssn="yyy-yy-yyyy">
<firstname>John</firstname>
<lastname>Wayne</lastname>
</name>
</person>
</users>

Today there doesn't exist tools that will let the creation of this XML document from the raw data, other than having to code the creation of each node. The purpose of this project is to create a comprehensive tool that will take the mapping between standards compliant XPath expressions and their values and magically spit out the XML document.

Where does it fit into the enterprise?

Translet in the enterprise

Can I use it on my platform?

This will be implemented in Java and will use Document Object Model as the model for creating the document. The implementation is intended to be in Java and as such can be used in any platform/OS that can host a JVM. There may also be C++ APIs created for use with C++ applications.

Comments?

Please send your comments to mkarthikeyan@users.sourceforge.net. In future, project resources can also be found at sourceforge projects page for translet.



SourceForge.net Logo