|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XAPI
> [Jonathan Robie] > > Hmmm. IDL == Language independent spec of an API....might this be > better approached as an XML application? I.e. a DTD for the XML API > spec. A doc conforming to that spec. that can be down-translated to > Java, C++, Python and (gasp) IDL! Designing a generic language (or DTD) for API description is non-trivial (consider the work that has gone into creating IDL) and therefore cannot be done satisfactorily in time for XAPI, given that XAPI is needed _now_. Having said that, I agree with you completely. In fact, this has already been done to some extent for SGML: it's called the SGML property set. A property set is nothing more than interface specifications for classes of objects using the "grove" object model. Property sets are not, however, suited for generic interface descriptions. There is no way, for instance, to describe an action method such as "parse this" in a property set. A property sets are abstract interfaces to static groves. In my own work, I have developed another SGML language (otherwise known as a DTD) that allows me to describe both interfaces and implementations of object classes using a more generic object model. This language also allows me to tie some of these classes and methods to properties in property sets, thus providing a framework for implementation of property sets, but also giving me a platform and language-neutral representation of my entire API and implementation. This representation is then compiled down to APIs and implementations for specific platforms and languages. This system has taken some time to develop, (and is still under development), but has already shown its worth in terms of ease of coding, maintenance, porting, and documentation. However, it is still not a fully generic and complete system (it may never be), as I have geared it towards implementing property sets, and have only added and implemented those features needed for doing so. In the long run, I suggest taking a similar approach: create an XML language for describing APIs and use it to describe the XAPI, linking it to the relevant classes and properties from the SGML and/or XML property sets (for use with DSSSL and/or HyTime). Develop the API description language along with the XAPI described with it; add to the API description language only those features needed for XAPI, while leaving the door open for further enhancements needed for other applications. Study the object models used by IDL, Java, C++, Python, and others, especially with regards to how they impact API development. In the short term, let us develop XAPI-J with the above in mind (somewhere near the back) so that people can use it now, and so that it can be used as a model for future development. -peter -- Peter Newcomb TechnoTeacher, Inc. 233 Spruce Avenue P.O. Box 23795 Rochester, NY 14611-4041 USA Rochester, New York 14692-3795 USA +1 716 529 4303 (home) +1 716 464 8696 (direct) +1 716 755 8698 (cell) +1 716 271 0796 (main) +1 716 529 4304 (fax) +1 716 271 0129 (fax) peter@p... peter@t... http://www.petes-house.rochester.ny.us http://www.techno.com xml-dev: A list for W3C XML Developers Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To unsubscribe, send to majordomo@i... the following message; unsubscribe xml-dev List coordinator, Henry Rzepa (rzepa@i...) |
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








