RE: Non-XML binary formats.

David Ryan wrote:
> I'm guessing this debate has been going on for a while already. :)
	Yes, about 20 years at this point. It started as SGML vs. ASN.1 back
when most of today's coders were still in kindergarten. ASN.1 is "your
father's encoding format." That alone, not its utility, probably accounts
for a great deal of the current antipathy towards the standard. The
arguments against ASN.1 are typically motivated more by emotion or ignorance
then reason.

> I have briefly looked at ASN.1 in the past and found it wasn't
> what I was looking for.
	Yes. Most such statements start with something like "briefly
looked." The reality is that ASN.1 has always been able to do all that XML
could do and it has been doing it for 20 years. The problem is that people
typically look at it "briefly," get overwhelmed by what they consider to be
complexity or a hard to read specification and then decide to do something
simpler or easier to implement or proprietary. What they don't realize is
that there is a reason that ASN.1 is as "complete" as it is. That
"completeness" has been found to be required.

> I think the attitutude that nothing better than ASN.1 will come
> along is wrong.
	I've never heard anyone suggest that "nothing better" could be
created. But, what is true is that it is exceptionally unlikely that any
reasonable effort could result in something as mature, well understood and
patent free as ASN.1 anytime soon. There are all sorts of people that
propose alternatives to ASN.1 without addressing the tremendous number of
issues that have been dealt with by the ASN.1 standards team over the years.
It is also unlikely that anyone is going to propose something so good that
the existing users of ASN.1 will be driven to convert to a new format. The
telecommunications industry isn't going to rewrite their standards
overnight. Neither are the security folk or the network management people
that use SNMP. 

> It has had a long time to get attention, but obviously something is
> missing.  I don't know enough of the history of ASN.1 to know what
> that is though.
	"Obviously something is missing..." This is just a vague suspicion
-- not the sort of thing that should motivate important technical decisions.
It is the kind of emotional crud that has been typical of the anti-ASN.1
arguments all these years...
	What was missing? Back in the 80's, as today, the Unix partisans
insisted on text-based formats. In the 80's, the insistence was also
typically on 7-bit ASCII as a character set for use in those text based
formats. Many people who fight ASN.1 today have forgotten that the reason
they were originally against it no longer applies. i.e. ASN.1 was opposed
*because* it was binary. But, if you are explicitly looking for a binary
standard, it doesn't make sense to oppose something simply because it is
binary! The reality is that many people simply forgot *why* they were
opposed to ASN.1 and just continued opposing it as a reflex action.
	In any case, the "ASN.1 is only binary" argument is now and always
has been wrong. There have always been "Text Encoding Rules" for ASN.1. In
fact, today you can use ASN.1 an alternative to XSD or Relax NG when
defining and describing XML -- you just use the ISO standard "XML Encoding
Rules (XER)". The truly insane thing about this is that the W3C went to a
great deal of effort to define XSD instead of simply accepting the existing
international standard ASN.1 and defining the XML Encoding Rules for it.
This was simply arrogant, proprietary pig-headedness on their part. It is
not useful when our "standards organizations" choose to ignore each other...
Fortunately, ISO provided what W3C was too proprietary to provide. ISO has
gone ahead and defined XER anyway as well as the mapping from XSD to ASN.1.

		bob wyman

Received on Tuesday, 30 November 2004 13:37:42 UTC