[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Application development using XSLT (Was: Feasibility of "do all applicat
At 2008-12-01 10:38 -0500, Costello, Roger L. wrote: >I am exploring the idea of "do all application coding in the XML languages." > >Here is a response from a colleague: > >"... in general XSLT is cool but limited. If your transform requires >any "higher math" or advanced functionality or external code >libraries (such as geometry coordinate system libraries), you almost >always have to go back to a higher level language (such as Java) at >some point." As I said before, I disagree strongly with that response when I consider the tremendous power in XSLT 2.0. But not mentioned in this thread, and related to my position, is the use of XSLT as an application development environment in and of itself. I'm developing a number of end-user applications as adjuncts to my training material where the user interface is provided by OpenOffice 3 and the entire logic of the "application" is in the XSLT import and export filters. Using the semantics of OpenOffice formula, data entry validity, conditional styles, etc. the user is directed to populate the spreadsheet with all the information required. I've heard of corporate policies preventing the execution of macros, so it is all done without macros, where user interface signals during the save/reload process can remap the user interface to meet specific requirements. Two of these applications are XML editors for columnar information, thus the "import XSLT" is used to present the input XML information into OpenOffice spreadsheets, and the "export XSLT" is used to interpret the user-entered and user-modified content to produce the output XML. The third application is more abstract: it is a UBL schema subset specification application presenting the entire UBL library on a set of 35 tabs in a spreadsheet. The user indicates on these tabs which models and which model items they want in and out of the resulting UBL configuration. One page configures the exportation process as to what deliverables they want, be it an HTML human report, pruned XSD schemas, synthesized filtering XSLT stylesheets and Python programs, and a myriad of text reports useful during development. Using a single File/Export the end result is a complete developer's environment for analyzing and deploying a customization of UBL in support of the developer's application and use of their subset of UBL. The primary output file specified in the Export dialogue box is a text report of all of the activity going on behind the scenes, including error reports of problems detected in the data that couldn't be validated by the OpenOffice functionality. The adjunct outputs are all created using XSLT, reading and writing XML documents to create the needed developer artefacts. I've abstracted the ODF spreadsheet structures into an application programming interface using XSLT user-defined functions. I then develop the program logic on top of that API, interpreting user directives and content values in the spreadsheet data using key tables (for speed) and some abstractions allowing me to independently design the user interface (moving things around and changing their appearance) with little impact on the "program" (the XSLT stylesheets). Since it is entirely based on XSLT (the robust Saxon 9 implementation in OpenOffice 3) it is platform independent working everywhere where OpenOffice supports XML filters. Non-technical users are incredibly receptive to this kind of interface, and this approach has opened up a lot of potential. And to me if "feels" like application programming, not stylesheet writing, where the programming language is XSLT 2.0 and presents all of the XML/XSD/XSLT concepts as first-class programming objects. I'll be demoing these applications at the XML'2008 conference next week in the XML Guild booth. . . . . . . . . . . . . Ken -- Upcoming XSLT/XSL-FO, UBL and code list hands-on training classes: : Sydney, AU 2009-01/02; Brussels, BE 2009-03; Prague, CZ 2009-03 Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video Video sample lesson: http://www.youtube.com/watch?v=PrNjJCh7Ppg Video course overview: http://www.youtube.com/watch?v=VTiodiij6gE G. Ken Holman mailto:gkholman@C... Crane Softwrights Ltd. http://www.CraneSoftwrights.com/x/ Male Cancer Awareness Nov'07 http://www.CraneSoftwrights.com/x/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|