incubator-odf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Svante Schubert <svante.schub...@gmail.com>
Subject Validator Reloaded (earlier -- Re: validator project with newest patch checked in)
Date Mon, 19 Sep 2011 08:35:28 GMT
Am 19.09.2011 09:36, schrieb Devin Han:
> You can check it from this URL:
> https://svn.apache.org/repos/asf/incubator/odf/trunk/validator
>
> Thanks to Svante's hard work, this code base included the newest update from
> him. He will supply more detail information about the update, when the JIRA
> bug trace system is ready.
> Please monitor the process (https://issues.apache.org/jira/browse/INFRA-3877).
>
You might know these non-stop commercials, providing a "before" -
"after" comparison.
Let's start with this:

BEFORE - http://tools.odftoolkit.org/odfvalidator/

AFTER - http://odf-validator.rhcloud.com/

The latter is currently deployed on my trial Red Hat Cloud account
(OpenShift Express), therefore no guarantee, when end of quota is reached.

The whole project was triggered by pain, when it took me hours to get
the ODF Validator project
<http://odftoolkit.org/projects/conformancetools/pages/ODFValidator>
set-up and running. Actually I never succeeded, but copied the
environment from a colleague who was able to set it up.
The problem: you need half a dozen of JARs, similar amount of XML schema
files and some basic configuration set-up. A lot of work, if you only
quickly want to use an ODF validator out-of-the-box.

Therefore I switched the project from ANT to Maven. Now the dependencies
are downloaded once from the web. (The switch was quite difficult, but I
will list the details in an issue as soon the tracker is running.)
Another benefit from using Maven is to be able to use the Validator as
test dependency from any of our other Maven projects. Usage on-the-fly.

Second, I added an HTML front-end to the project. Oriented myself on the
existing layout of the validator, but try to simplify. For instance, the
first two dependent boxes are now combined into one, choosing the ODF
version to validate against or auto-detect the version.
For the front-end I have used Java Server Pages and the output
(artifact) of the project is now a WAR that can be directly uploaded
into a Java EE enabled web server of your choice. I have tested with
Tomcat 7 and JBoss. 
I am using valid HTML5 / CSS, allowing features as multiple selection of
documents for validation from the file dialog.

Finally, I have added the ability to the ODF validator back-end to
produce HTML as output when desired.
When using the online validator you will now receive sometimes a very
red page..
Here is where I would like to ask for further volunteers, for instance
to create a table for each validated file of the package and dropping
the first name of the file.
The reason I am not able to do it now, is that I am working on an
proposal for ODF change-tracking for OASIS and lacking some time at the
moment [1].
Perhaps in the future we might even reuse another validator instead
writing new front-ends. I was investigating on the W3C Unicorn validator
<http://code.w3.org/unicorn/wiki/Documentation/Architecture>, tested the
sources <http://code.w3.org/unicorn/wiki/Documentation/Install> and gave
some feed-back
<http://lists.w3.org/Archives/Public/public-unicorn/2011Sep/0000.html>.
The back-end of the validator might be change in the future as well. I
might be moved to ODFDOM. The package validation is already being taking
over by ODFDOM, as there is no need to implement functionality twice.

Thanks Devin for the review of the patch. In the future we will take the
usual process using an issue, but this work was meant as part of the
initial contribution of ODF Toolkit.

Hope you like the update!
Svante


[1] Summary on ODF change-tracking proposal:
http://lists.oasis-open.org/archives/office-collab/201108/msg00023.html
http://lists.oasis-open.org/archives/office-collab/201108/msg00024.html
http://lists.oasis-open.org/archives/office-collab/201108/msg00025.html


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message