oiic-formation-discuss message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: Re: [oiic-formation-discuss] Welcome!
- From: robert_weir@us.ibm.com
- To: oiic-formation-discuss@lists.oasis-open.org
- Date: Thu, 5 Jun 2008 10:01:11 -0400
"Dave Pawson" <dave.pawson@gmail.com>
wrote on 06/05/2008 02:40:20 AM:
>
> David R: One should clarify though that what Rik has done is show
a
> PRE-VALIDATION technique of pre-processing the ODF content - ready
for
> unwards validation by further steps - by removing (stripping) non-ODF
> content.
>
> Perhaps NVDL would help there, certainly xproc will be a useful tool.
>
To my knowledge, no ODF implementation today actually
writes additional content to an ODF document in a foreign namespace, although
the standard allows this. But what I have seen is an application
adding additional attributes into an existing ODF namespace. But
this is a simple validity error and is caught directly by any validating
parser. But Rick's pre-validation NVDL is something we can add to
our bag of tricks, in case it ever comes up in the future.
When we talk about conformance with ODF, we're really
talking about two things, since the ODF standard defines document conformance
as well as application conformance. The former is the easier one
to test, and lends itself to automation.
A full check of ODF document conformance would need
to do something like:
1) Verify the document file name extensions and/or
MIME content type and verify that it matches the contents of the underlying
document. An ODT file containing a spreadsheet should be noted, for
example.
2) Verify the correctness of the Zip container. Is
it actually following the referenced Zip specification?
3) Verify the referential integrity of the package.
Does the manifest reference files that don't exist, for example?
Are all the required parts present?
4) Verify the Relax NG validity of each of the contained
XML documents, pre-processing as needed.
5) Verify additional referential integrity constraints.
For example, the content XML typically refers to named styles in
the syles xml. These cross-document references need to be checked.
6) Verify the various micro-formats contained in ODF.
There are some things that are not easily expressable as a schema
type, even using a regex. For example, spreadsheet functions, with
its hundreds of functions, some with variable arguments, which could take
cell ranges, named ranges, or constants as parameters. These are
defined in the standard via EBNF. A full conformance test would take
each of these attributes and verify that they match the production rules
defined by the EBNF.
7) Other recommendations of the ODF standard, even
where not conformance requirements. These should be checked, and
warnings (not errors) emitted. For example, we have a number of accessibility
best practices that could be statically verifiable. Similarly, we can have
portability warnings. For example, a spreadsheet can have as many
rows as it wished, but for portability we might recommend no more than
64K rows.
There are probably other pieces as well, but that's
an outline of what we could do for document conformance. Ideally
I'd like any such tool to be event-driven (like SAX) and pluggable, so
other modules can be independently developed and later added.
-Rob
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]