README 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. Xfolite is a light-weight XForms client for the J2ME platform.
  2. It includes a DOM and XPath 1.0 implementation as well as an
  3. XForms engine that implements the XForms 1.1 specification
  4. almost completely. XML Schemas are not supported.
  5. To compile the code, you need to install J2ME Polish
  6. (http://www.j2mepolish.org/, tested with version 2.1.4) and
  7. Apache Ant (http://ant.apache.org/, tested with version 1.8.0).
  8. The build command is "ant j2mepolish" to make a release build
  9. and "ant test j2mepolish" to make a debug build. "ant clean"
  10. will remove files created by the two previous commands.
  11. See J2ME Polish documentation for more information on the
  12. build process.
  13. This is a research prototype, and the code maturity level
  14. varies by component. The DOM and XPath 1.0 implementation
  15. and the XForms engine are fairly mature, whereas the user
  16. interface binding (com.nokia.xfolite.client,
  17. com.nokia.xfolite.client.ui) is beta level at best - suitable
  18. for research and limited user trials, but production use
  19. would require more work, both for adding missing features
  20. and for making existing features more robust.
  21. The package structure is as follows:
  22. com.nokia.xfolite.client
  23. Client midlet and UI factory and controller that bind the XForms engine to a J2ME Polish based UI.
  24. com.nokia.xfolite.client.ui
  25. UI widgets used by the client midlet.
  26. com.nokia.xfolite.client.util
  27. Helper classes
  28. com.nokia.xfolite.xforms.dom
  29. XForms specific DOM element classes
  30. com.nokia.xfolite.xforms.model
  31. XForms calculation engine
  32. com.nokia.xfolite.xforms.model.datasource
  33. Support for using sensors from XForms (not used at the moment)
  34. com.nokia.xfolite.xforms.model.datatypes
  35. Support for the most important XML Schema datatypes used by XForms
  36. com.nokia.xfolite.xforms.submission
  37. Submission formats and serialization
  38. com.nokia.xfolite.xforms.xpath
  39. XForms-specific XPath functions
  40. com.nokia.xfolite.xml.dom
  41. Basic DOM implementation
  42. com.nokia.xfolite.xml.dom.events
  43. DOM events
  44. com.nokia.xfolite.xml.xpath
  45. XPath 1.0
  46. org.bouncycastle.crypto
  47. org.bouncycastle.crypto.digests
  48. org.bouncycastle.util.encoders
  49. Bouncy Castle cryptographic digests
  50. org.kxml2.io
  51. KXML2 XML parser
  52. org.xmlpull.v1
  53. XmlPull interface
  54. The parts created by Nokia are licensed under the terms of the GNU Lesser
  55. General Public License as published by the Free Software Foundation;
  56. either version 2.1 of the License, or (at your option) any later version.
  57. This program is distributed in the hope that it will be useful,
  58. but WITHOUT ANY WARRANTY; without even the implied warranty of
  59. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  60. See the GNU Lesser General Public License (LICENSE-LGPL-2.1)
  61. for more details.
  62. The software uses the following third-party (non-Nokia) open-source
  63. components:
  64. XmlPull interface (http://www.xmlpull.org/).
  65. See LICENSE-XMLPULL.
  66. KXML2 XML parser (http://kxml.sourceforge.net/kxml2/).
  67. See LICENSE-KXML.
  68. Bouncy Castle cryptographic digests (http://www.bouncycastle.org/).
  69. See LICENSE-BOUNCYCASTLE.
  70. W3C DOMException and XPathException classes (http://www.w3.org/).
  71. See LICENSE-W3C.
  72. KXML2 uses BSD license according to its website. XmlPull is in public domain.
  73. Bouncy Castle license is an adaptation of the MIT/X11 license.
  74. According to http://www.gnu.org/licenses/license-list.html#GPLCompatibleLicenses,
  75. this means that all the licenses (including the W3C license
  76. and the LGPL license) should be GPL-compatible.
  77. Therefore, you should be able to use the (free) GPL-licensed version
  78. of J2ME Polish, as long as you publish your source code under GPL.
  79. Alternatively, if you do not wish to publish your source code,
  80. you should be able to use the commercial version of J2ME Polish
  81. and the original licenses.
  82. However, although Enough Software (developer of J2ME Polish) has confirmed
  83. that the above arrangement is acceptable to them,
  84. THE PREVIOUS PARAGRAPH IS SPECULATION.
  85. IT IS NEITHER LEGAL ADVICE NOR ANY KIND OF GUARANTEE OR COMMITMENT.