>A notable feature of XML Schema and RELAX NG is that the syntax of
>the schema languages they define is also XML, whereas the syntax
>of ASN.1 specifications is unique. It does not correspond to a
>transfer syntax generated by any of the encoding rules. However there
>is an IETF draft of a specification for representing ASN.1
specifications
>in XML syntax called ASN.1 Schema. That specification brings to ASN.1
>all the advantages attributed to XML Schema and RELAX NG in having an
>XML syntax.

I agree with Steven Leggs thorough answer to Chris Serberinos "nagging
ASN.1 beginner questions".

Its just the above few lines I wish to comment.

With XML came the XML browsers. XMetal was one I tried. Microsoft has
one.
Its smart that a message can be folded and unfolded so the user can
concentrate
on whichever level he/she wishes to inspect the given XML - is it
string or
message or something else ?

However:

The purpose of folding/unfolding the protocol spec. ie. the
specification
of the message is not clear to me.

And yet:

I prefer to think of a message specification as the start of the type
definitions in a computer program.

If a message set was to be defined in say Pascal or C one would start
from
"the leaves" , then one would specify the "minor twigs", then "major
twigs",
 then "the branches" and finally "the stem".

In order to understand what is going on when first reading a message
specification it is very convenient that ASN.1 starts "bottom up" with
defining the stem, then the branches and so on.

Many tricks can be thought of to ease the understanding of the whole
tree
structure. "Hypertext-style" comes to my mind:


Message-set ::= CHOICE
{
   mess1 Mess1,
   mess2 Mess2
   ...
}

so you click on mess1 and you are brought to its definition.

When the whole tree is described as a series of definitions the reader
has to
jump around in order to find his own meaning. I guess an ideal case
for intro-
duction of a "hypertext" solution.

I have come to the conclusion that the message specification is
something
completely aside the set of messages. Its read in a different way. It
is
written for a different purpose.

I think it is a mistake to describe it in XML. XML - like the transfer
syntaxes of the ASN.1 environment - BER, DER, PER, XER and so on - are
linear in their nature.

It occurs to me that there could be some idea in trying to describe
e.g.
BER in XML - or even PER that I never learned properly.

The effect would be that one could take a bulky message "from the
line"
that needed to be debugged or inspected for some reason, take it into
an XML browser that was - say PER enabled. If the browser knows PER it
would know how to fold and unfold leaves, twigs and branches of the
PER message.

Maybe this exists as a tool already ?

Steen Oluf Karlsen
Søholtvej 6
Vester Vandet
DK-7700 Thisted
Danmark
Tel +45 97 97 72 72
email [EMAIL PROTECTED]




Reply via email to