Lists Home |
Date Index |
At 19:32 04/11/2003 +0000, you wrote:
> > I remember the SGML and ASN wars over a decade ago but
> > had no personal involvements. I do remember some smart
> > folks at the time in the SGML camp saying that ASN was
> > a well-conceived technology but overbuilt for the documentation
> > market. Is is an XML Schema language? Sure. And?
> > It seems to me that XML took the market because:
> > 1. Simpler.
> > 2. Smelled like HTML.
> > 3. Had a ready made market from the SGML community.
> > 4. Smelled like HTML.
> > 5. Had the W3C to bless it.... eventually.
> > 6. Had the SGML community's experience with hypermedia
> > gained during the CALS era.
> > 7. Smelled like HTML.
> > There may be others.
> 0. XML parser @ $0.00 vs. ASN.1 parser @ $50,000.00
>The other reasons are completely irrelevant.
The interest of the discussion about ASN.1 is to show some lacks of XML
(binary format, language binding, ...).
I don't think that ASN.1 is the solution.
But remember that ASN.1 is only a part of the triad :
concret syntax, abstract syntax, transfert syntax
Now consider these 3 "worlds" : ASN.1 (OSI), CORBA (OMG) and XML (W3C).
abstract syntax : ASN.1 (ISO 8824-x / ITU-T X.68x)
transfert syntax : BER, DER, PER (ISO 8825-x / ITU-T X.69x)
concret syntax : exists for Java, C++, C or COBOL but not as International
abstract syntax : IDL (OMG-CORBA / ISO 14750)
transfert syntax : CDR (OMG-CORBA-IIOP)
concret syntax : Mapping for Java, C++, C, Ada, COBOL, Lisp, SmallTalk,
abstract syntax : DTD (W3C), Schemas (W3C), RELAX NG (OASIS)
transfert syntax : XML (W3C)
concret syntax : ???, some endeavors like JAXB
For historical reasons, the XML world is transfert syntax centric.
Both ASN.1 and CORBA try to take advantage of the XML success, ASN.1 with
XER (ITU-T X.693) and CORBA with the specification "CORBA to WSDL/SOAP -
January 2003" that allows the transformation from IDL to W3C Schema.
In XML data-oriented applications, ASN.1 and IDL want to be more than a new
schema (ie an abstract syntax) for validation. The goal is the generation
of codec between a XML stream and some concret languages like JAVA.
I'm more confident in CORBA-IDL for the following reasons :
- IDL is very easy to learn
- writing an IDL compiler is easy (the grammar is ready for yacc)
- a lot of Open Source ORB already exist
- all of CORBA specifications are freely available (on www.omg.org)
- IDL defines types and *operations* that could be mapped to SOAP
Perhaps CORBA-IDL is the new ASN.2 and nobody knows that.