[E-Lang] Why I want full XML

Jonathan S. Shapiro shap@cs.jhu.edu
Fri, 06 Oct 2000 10:41:39 -0400


I talked in a previous email about annotations. Consider introducing
annotations constituting some form of proof or set of assertions about a

field:

<elang:myValue ty="ul">5
    <proof:note>forall blah in blurbus something
something</proof:note></elang:myValue>

Note that because XML is fully parenthesized, it is exceptionally easy
for a deserializer to simply "skip" all tags that live in foreign
namespaces. Thus, it becomes possible to read and produce annotated
files, and also to do experimental output changes without breaking
existing deserializers in the field.

Similarly for use of attribute namespaces.

I propose that E (de)serializer should be specified to reserve a
namespace (suggest "elang") and do this kind of skipping of foreign name

spaces.

Note that this is quite different from encountering an unexpected (i.e.
wrong) tag in the E namespace. This really would indicate a bug in the
serialization or a version conflict in the deserializer, and should be
considered a reason to die.

So:

    death to bugs
    death to confusion
    life to flexibility and interchange.

Perhaps I am being silly. Certainly if one has tools to generate this
kind of XML one should be able to use XSLT to strip them appropriately.
This does mean that the deserializer must not count on unmodified
whitespace in the output.

shap