250 likes | 303 Views
The OpenJade Project. XMLDev 99 conference Didier PH Martin Talva Corporation. OpenJade founder, lead. Origins OpenJade today Goals OpenJade Architecture OpenJade concepts Relationships DSSSL Next generation. Agenda. Origins. Based on Jade created by James Clark
E N D
The OpenJade Project.XMLDev 99 conferenceDidier PH MartinTalva Corporation. OpenJade founder, lead.
Origins OpenJade today Goals OpenJade Architecture OpenJade concepts Relationships DSSSL Next generation Agenda
Origins • Based on Jade created by James Clark • Given to the DSSSL user group by James • A development team formed from the DSSSL user community
OpenJade today • A growing development team • Is a DSSSL engine, but we have no problems to use the code base for mixed DSSSL/XSL implementations. Interested? • Is C++ based. • We are documenting the internals • We are implementing the missing parts we think are important • If very fast…and is improving
OpenJade today • An international design and development team • Sweden • Germany • Israel • USA • Canada We need more help. Interested? OpenJade wants you
OPenJade Today • Special projects • BraiFo (a Braille Formatter) • Template experiment • Several Web Site using OpenJade to generate HTML pages from XML • Publishers using OpenJade to format SGML/XML documents into printed formats.
OpenJade Today • What we learned • We should not try to create constructs better expressed by procedural language (resist to the temptation of putting everything in tags simply because we have an XML/SGML parser)
http://www.netfolder.com/DSSSL We will move to http://www.openjade.org Our home page
Goals • Improve OpenJade XML support • Document, document, document • Cooperate with different platforms/toolkits • Offer APIs • Make it more accessible
OpenJade architecture MIF RTF HTML Tex PDF SGML XML API Script languagesJavaScript, PerlScript, PythonScript, VBScript XSL engine? Scheme engine API Grove engine API SGML/XML parser
OpenJade architecture MIF RTF HTML Tex PDF SGML XML API Script languagesJavaScript, PerlScript, PythonScript, VBScript XSL engine? Scheme engine API Grove engine API SGML/XML parser
OpenJade Arhitecture SGML /XML Parser interface • C++ based • Expat (the fatest) • Microsoft • Java based • IBM • DataChannel • Others… DOM based parsers are, in some ways, simplified GROVE engines. Goal? interface with DOM based parsers
OpenJade Architecture • Goal: • Link for more sophisticated Grove Engines Goal: publish an API for Grove/DOM interfacing CORBA IDL, DCOM IDL.
OpenJade architecture MIF RTF HTML Tex PDF SGML XML API Script languagesJavaScript, PerlScript, PythonScript, VBScript XSL engine? Scheme engine API Grove engine API SGML/XML parser
OpenJade Architecture • Goal: • Add new SGML/XML processing languages • Add incoming and outgoing SGML/XML processing • Candidates • Xscripts (rule based language using VBScript, JavaScript, PerlScrip, Python Script languages • XSL (MITRE C++ engine?) • Next generation DSSSL
OpenJade architecture MIF RTF HTML Tex PDF SGML XML API Script languagesJavaScript, PerlScript, PythonScript, VBScript XSL engine? Scheme engine API Grove engine API SGML/XML parser
OpenJade Architecture • Formatters • A rich collection of Formatters • MIF • RTF • SGML • XML • HTML+CSS • PDF • FOT • Add new ones
OpenJade Concepts • Collection of Objects • Visual Objects • A visual layout model with Flow based layout (absolute positioning is the next step). • Aural Objects • Tactile Objects • Objects accessible from different expression languages • Rule based processing
Relationships • Linux Communities and ISVs • Debian Linux • SUSE Linux • Red Hat? • NetFolder (The SGL/XML Kit)
DSSSL Next generation • First Step • Assemble the knowledge gained in the last five 5 years • Integrate new powerful concept such as: • Template based rules • New addressing and queries models and languages • Base our design on a model not on a particular language.
DSSSL The Next generation • Keep The actual features • Backward compatibility • Start the process from the actual OpenJade Community. • Make a DSSSL 2 proposal to the ISO community.
OpenJade Next generation • What we learned • We are moving from Object oriented processing to data flow processing • We transform data into different kind of objects/different models. • We have to make explicit the model supported by a transform engine • The model should be independent of a particular language
What’s next Read the OpenJade News to know more