"Expert Contribution on OOXML Versioning"

rjelliffe at allette.com.au rjelliffe at allette.com.au
Tue Apr 20 05:58:07 CEST 2010


The "markup way of doing things" or POX (plain old XML), if we can imagine
such a thing, is that when you have something important that you want to
say about your document(s) you make up elements for them, and a schema.

In this case, the important thing is dialects of OOXML and the
relationships between them. MCE already handles representing extensions
and alternatives, but it does not handle declaring which extensions can or
may be used in a particular dialect: management. DSRL allows renaming but
does not allow management. XSD allows derivation but does not allow
management.

I tend to think that merely adding namespaces or attributes is an
unsuccessful attempt to avoid just using POX. If dialects are an important
issue that it would be useful for applications or developers or archivists
to know about, then we would be better off having some simple
representation in XML.

What I am thinking about is in the blog "Supporting Degradation: towards a
workable Open Packaging standard" at
http://broadcast.oreilly.com/2009/05/supporting-degradation-towards.html

Basically, Namespace Relations allows the definition of a family tree for
schema language dialects. I think it brings out what most office suite
tools do implicitly: handle all the different dialects in as conservative
way as possible, with maximum graceful degradation. XML schema languages
unfortunately still have the SGML-style bureaucratic notions, to a certain
extent: they are not a good fit for day-to-day consumer-side applications.

Namespace Relations could also allow strays like MCE and DSRL to be more
cohesive and broadly applicable.

In a sense, the Namespace Relations idea recasts the issue of validation
away from "Is this document 100% correct in every syntactical detail?" to
"Is there a path by which this document can be interpreted with known
safety?"

Cheers
Rick Jelliffe


More information about the sc34wg4 mailing list