Tuesday, November 25, 2008

I have not blogged for a while, in truth have just been busy. Thought I would share some experiences with the world.
First the news.
Mozzie 1.8 is still going well, probably because I have left it alone ;-)

There is a new version, it runs on Firefox 3 and incorporates all of the new stuff being done by the team working on the XForms plug-in, as well as some goodies. It will be called 2.9 to keep with the tradition of incremental releases.
So what will be in it:
  • All of the latest trunk of the Mozilla XForms
  • Extra functions for xpath (choose, etc) as well as some xslt functions.
One of the areas where the xforms implementation differed from the mozilla code base was that repeats could be represented as tables. With Firefox 3.0 this is no longer needed as you can use css to do the same thing.

Expect this early next year.

The other side of the coin is what has been keeping us busy, and that has been our SAAS/PAAS (should it be called S-PAAS?) which is an XML platform for delivering services.

It is intended to not be an open source product rather than it is targeted at ISP's who don't want to loose their customers to Amazon/Google/MS-Azure platforms. It is a an XML standards based platform for collaborative software delivery.
The only issue is that one of the core technologies is XProc and the standardization of that is taking a while.
The idea is that it is an SOA platform with a standards flavor,so that you can move between any ISP with pure XML markup (no code or library dependencies).

It will be released at the same time as Mozzie 2.9 as that forms a core component of the forms delivery platform.

I will blog over the next few months with the details. For now keep using XForms and XML standards....

Tuesday, September 18, 2007

Mozzie 1.8.0 Released

We have been using release 1.8.0 quite a bit now and think it is stable enough to release for more testing and comments.
There are 2 releases:

MozzIE.1.8.0.xpi
This is an XPI that allows testing of forms within Firefox 2.0.0.6
Since there are a lot of extension functions and new capability that is not in the Firefox version, this will help anyone developing to test forms.

MozzIE.1.8.0.exe
This is the Internet explorer plug-in that will add XHTML+XForms support to Internet Explorer. It includes the xforms engine that is packaged within the XPI.

The major features of this release are:

  • Code from the Mozilla Project Xforms 0.8 has been merged into the project.
  • EXSLT functions have been implemented for math and date.
  • Some xforms 1.1 functionality is complete (most notably if() and while() on actions).
Please try this release.

Saturday, May 5, 2007

MozzIE 1.7.1

I have changed the numbering conventions on the MozzIE project. The change is to make it more aligned with the core XForms project that MozzIE comes from. The release numbers now represent the XForms plug-in for firefox build numbers. So 1.7 is based on the 0.7 Firefox XPI.
When the Firefox buuild changes for 0.8 hit the Mozilla tree it will take me a couple of days to pull the changes into MozzIE and release 1.8.
The minor build number (1.x.m) is the MozzIE release number.
There are some additions to MozzIE not found in the Firefox releases. Here is a list:

1. Repeats are fully implemented and all of the W3 tests pass. We also support having repeats as a table body.
2. Schema validation and types work for attributes as well as elements.
3. The XForms 1.1 functions of days-to-date(), second-to-dateTime(), local-date(), local-dateTime() and digest() are implemented. The other 1.1 functions are stubbed out but will be working in 1.7.2.
4. The bind(IDREF) function is implemented, this is slated to appear in xforms 1.2 but I found it so useful that I decided to implement it sooner. It really tidies up the XForms code. The only thing you need to be really careful of is that you don't create a circular dependency.

Thursday, March 15, 2007

XProc XSD

I have done an XSD for XProc and placed it into the Visual Studio Intellisense zip file located in the XSP.NET Files Wiki page.
Unfortunately the xproc working group has decided to base the syntax on RELAX NC rather than schema definitions. Just when the community was getting used to something (xml schema) some bright spark thinks of something to make everything different again!
Also located there is a small xhtml page that demonstrates using xproc to format an xform at the server. This is intended to be a test case only (actually one of the unit tests of XSP.NET 2.0) but it shows how XProc can be used to perform what would have been done using scripts in the past.
XSP.NET 2.0 is coming along well, and the pipeline is already implementing the following:
  • xml
  • xml:lang
  • xml:base
  • exslt:dates-and-times
  • exslt:common
  • exslt:math
  • exslt:random
  • exslt:regular-expressions
  • exslt:sets
  • exslt:strings
  • xml:xpointer
  • xml:xinclude
  • xml:xproc
The xproc processor is not complete yet and the XSP.NET Community Portal has quite a bit of info about how the processor hangs together.

Wednesday, March 7, 2007

XForms Intellisense for Visual Studio 2005

I find Visual Studio to be a great development environment, and even better when you can edit your source code files with Intellisense.
Visual Studio 2005 added support fo XML intellisense using the xml\Schemas directory however the supplied xhtml.xsd file did not support xforms intellisense for xhtml files. So I did something about this and modified the xsd to be xforms 1.1 aware:

As you can see when I create a file with the correct namespace declarations and the XHTML 1.1 strict DTD, the xml editor now knows that a <head> can have an xforms:model and within that it supports an xforms:instance (also note that the document annotations are available).
Rather cool I think. I don't really see xforms as being a wysiwyg language, much the same as writing c++ code using uml is like poking yourself in the eye with a sharp stick. You can do it, but it will hurt :->
I have uploaded the file Schemas.zip to the xsp.net wiki. The page to look at is the Files page.
Extract the contents (all of the xsd files) to the directory:
C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas
(this could be different if you did not install visual studio to the default location).
I do not recommend trying to develop xforms using aspx pages rather use xsp.net and do all your markup as strict xhtml. The highlighting does not work very well if you are using an html dialect and miss the correct namespace declarations.
I will be updating this as XSP.NET becomes XProc compliant (and XProc becomes a reality). I am doing a port of the appache XML:fop project to xsp.net so will also be adding the support for XML:FO to the schemas soon. Will post when this is complete.

Tuesday, February 27, 2007

XSP.NET and MozzIE Wiki

I have converted the XSP.NET and MozzIE sites to using mediawiki.
The sites should get more content on how to do XForms/XHTML and XProc over the comming weeks.

Tuesday, February 6, 2007

MozzIE Beta2

A beta release for Version 2.0 of MozzIE has been posted to sourceforge.
This release is built against the Gecko 1.8 rendering engine which is the same as is used in the Firefox Release 2.0.0.1 and the xforms is the 0.7 release of the firefox xforms engine.
There are patches however to add schema support for attributes as well as using repeats as a table body.
On the trunk of the Firefox browser, both of these are nearing inclusion into the xforms installer. This will come back to MozzIE in release 3.0 which will use the Gecko 1.9 engine and what is hopefully a fully xforms 1.1 compliant processor.
MozzIE will probably have 1 more Beta, not that any rendering functionality will change, but there is initial support for the 3 tools that are essential for xforms development. Venkman, the javascript debugger which makes making XBL controls a snap. The DOM Inspector which is a must for any serious XHTML work and the error console. Hopefully we will also get the xforms buddy which was created by Allan Beaufour.
The tools do not yet work 100% as there is problems with the javascript engine that I have not had time to sort out.
The real goal of this release was to get the stable version of Gecko into the build and to make the GUI complete, even if there are some issues.
Please download and enjoy.