--- Begin Message ---
- To: Andre Beck <abeck@xxxxxxxxxxxxx>
- Subject: Re: CPL and XML
- From: Jonathan Lennox <lennox@xxxxxxxxxxxxxxx>
- Date: Wed, 10 Sep 2003 13:44:20 -0400
- In-reply-to: <3F5E9365.2080704@bell-labs.com>
- References: <3F5E9365.2080704@bell-labs.com>
On Tuesday, September 9 2003, "Andre Beck" wrote to "lennox@xxxxxxxxxxxxxxx" saying: > Hi Jonathan, > > The OPES wg is currently debating whether or not to base the OPES rule > specification language on XML. The purpose of the rule language is to > let OPES users specify rules that determine which (HTTP) messages > require additional processing by one or more OPES services. It seems to > me that CPL solves a similar problem for IP tel. So I was wondering if > we can learn from your experience with CPL. Do you remember why you > decided to base CPL on XML? Did you ever consider using other formats > for CPL, e.g. a simple programming/configuration language? I did consider using other languages for CPL -- the two main thoughts were "something kind of like Tcl" and "something based on sieve". There were a number of reasons for basing CPL on XML, though. First of all, XML's tree structure maps naturally onto the decision-tree model of telephony services: try this, and if it doesn't work, try that. While "programming" languages generally support this, "configuration" languages usually don't -- they tend to be more in the attribute/value model. I'm not sure how significant this is for OPES; I've not followed it very much. XML has a number of nice features because it's so widely supported. A student here at Columbia has done a project to display CPL scripts in an easy-to-read graphical format, using XSL-T; the same project would have been rather more complicated, requiring writing new parsers and the like, if a custom grammar had been used. Possibly the most significant reason for using XML, though, is that it avoids the "Bikeshed problem" (http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/misc.html#BIKESHED-PAINTING). Working groups can get terribly tied up in grammar and syntax; everyone has their own opinion on their favorite format for comments, for example. Using an established, flexible language forces the group to concentrate on the actual hard problems -- *what* information should be encoded by the format, and what it should mean, rather than *how* it's encoded. XML also lets you use existing (debugged) parsers, rather than writing your own, which is very useful. I hope this is helpful for you! -- Jonathan Lennox lennox@xxxxxxxxxxxxxxx
--- End Message ---