X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Fpxp%2Fpxp%2Fexamples%2Fxmlforms%2FREADME;fp=helm%2FDEVEL%2Fpxp%2Fpxp%2Fexamples%2Fxmlforms%2FREADME;h=806a4094ab6b8a99cddbd4193c239134fe3cfb37;hb=c03d2c1fdab8d228cb88aaba5ca0f556318bebc5;hp=0000000000000000000000000000000000000000;hpb=758057e85325f94cd88583feb1fdf6b038e35055;p=helm.git diff --git a/helm/DEVEL/pxp/pxp/examples/xmlforms/README b/helm/DEVEL/pxp/pxp/examples/xmlforms/README new file mode 100644 index 000000000..806a4094a --- /dev/null +++ b/helm/DEVEL/pxp/pxp/examples/xmlforms/README @@ -0,0 +1,61 @@ +----------------------------------------------------------------------------- +xmlforms +----------------------------------------------------------------------------- + +THE IDEA: + +This example uses XML for two purposes: + +- The "story" and layout of the application is specified in XML +- The data records are stored in XML + +An "application" is a set of "masks" or sequences of masks, and every mask +is thought as a visible page of the application, containing layout +elements and functional elements. Layout is specified in TeX-style using +hboxes, vboxes, hspaces, vspaces. Functional elements are "entries" (input +box for a string with one line), "textboxes" (input boxes with several +lines), and buttons. + +See styles/ds-style.dtd for the DTD of an application specification, and +the other xml files in this directory for examples. + +The entries and textboxes are bound to "slots", i.e. string variables. If +the application is started, the slots are read from a file, and if the +user presses a special "save" button, the slots are stored into this file. +The format of this data file is again XML; the simplistic DTD can be found +in styles/ds-object.dtd. + + +THE IMPLEMENTATION: + +There is currently a mapping of the specifications to ocamltk, done by a +program called "xmlforms". + + +HOW TO COMPILE: + +It is assumed that "findlib" is present on your system; see ABOUT-FINDLIB +in the toplevel directory. +The "markup" module must have been installed. + +- "make xmlforms" produces a bytecode executable "xmlforms" +- "make xmlforms.opt" produces a native executable "xmlforms.opt" + +Note that you cannot start the executables directly: + + +HOW TO START AN APPLICATION: + +As "xmlforms" is a generic executable, there is a simple mechanism to bind +it to a specific instance of an application. For example, in the "styles" +subdirectory there is the application specification "crazy-style.xml". To +start it, make a symlink called "crazy" referring to the "xmlforms" +binary, set the environment variable DATASHEETS to the directory where the +DTDs and XML files can be found, and start "crazy": + + ln -s ../xmlforms crazy + DATASHEETS=. crazy my-record.xml + +(If you do not set DATASHEETS, a default directory, normally +"/opt/xmlforms/lib" is used.) +