Download The Xylia Toolkit:

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
The Xylia Toolkit:
A WYSIWYG XML editor library for Java
Summary
This presentation presents an introduction to the Xylia software library, and the
technologies involved. This library is being designed for the development of user-friendly
visual editors for the extensible markup language (XML). XML is a standard for markup
languages. Each language conforming to XML is similar in structure to HTML, but has
its own set of permissible tags, and rules about how they may relate. XML is designed to
store structured data in a standardized cross-platform textual format. The Java
programming language and the Swing toolkit from Sun Microsystems are being used to
build the library, which is suitable for application developers who wish to create simple,
easy to use, robust editors for specific XML languages. Since both technologies are
intended to promote cross-platform and cross-application interoperability, they make a
good match.
The Java programming language is powerful and extremely useful for many
reasons, for the Xylia project the greatest benefit of using Java is its powerful standard
libraries. These libraries provide the key functions needed for User Interfaces, file
access, etc. The particular libraries that the Xylia project uses are the HTML libraries,
which provide viewing and editing capabilities for HTML documents. The second boon
for Java is it’s cross-platform nature, by that I mean that if I write Java software on my
Pentium computer running Microsoft Windows, then that same software will work
without change on any other computer platform supported, from the largest mainframe
system running UNIX, to the smallest handheld computers running embedded operating
systems. The one thing all the platforms need to have in common is a Java Virtual
Machine, it’s this virtual machine that takes a java program and executes it. As long as
the required libraries are present, the look and feel, and behaviour should be consistent.
The main result of Java being platform independent is that Java has become the most
popular way for distributing applications on web pages through the Internet. Java also
has the benefit of learning from the experience of the languages it derives from. Sun has
tried, in the design of Java, to unite the best ideas from many existing programming
languages while leaving out their main flaws. That’s not to say that Java is without its
fair share of problems, but it is well designed from the programmers vantage point.
XML is the other key technology that I worked with this summer, XML is a
standard developed by the World Wide Web Consortium (W3C). The W3C is also
responsible for many other standards used on the Internet, such as HTML, Cascading
Stylesheets, etc. XML has been a standard since 1998. XML is not truly a markup
language in and of itself; it is a standard that defines how to create your own markup
language based on the XML definition. XML defines many rules on how an XML
markup language should behave. XML based markup languages will look similar in
structure to HTML (The standard format for web pages), but have varying and different
purposes. HTML defines how a document can be created and defined for viewing on the
Internet. HTML’s purpose is to give structure and formatting to the text of the document.
An XML documents purpose on the other hand is to provide a way to store structured
data (of any kind) in a textual format. The main benefit to using an XML based file
format to store data is the cross-platform and cross application interoperability it
provides, that is the same file can be read on any type of computer, with any software that
understands XML. XML has many other benefits over other proprietary binary formats,
such as being able to manually fix a damaged XML file by opening it in a text editor, the
shear number of tools available for reading and writing XML, and it is an open, royalty
free specification.
There are many existing XML based markup languages such as; Wireless Markup
Language (WML) used for displaying content on handheld devices like cell phones;
Chemistry Markup Language (CML) used for storing such things as the chemical
compounds; Math Markup Language (MathML) for storing mathematical formulae and
proofs, etc.
The Xylia project is creating a toolkit (library) for Java that is adding the
capability for WYSIWYG (what you see is what you get) editing of XML documents.
Xylia’s interface, and a lot of the core functionality, comes from the Swing libraries
HTML toolkit. The benefits of this are that anyone who has used the HTML toolkit
should find no problem using Xylia, and it also avoids re-implementing low-level
functionality. The goal is to make it easy for anyone to edit XML documents, and to
embed this functionality into other applications. One immediate use of the project is Dr.
Norvell’s Simple system. Simple defines a way to describe a mathematical proof (in an
XML document) in such a manor that it may be verified in a programmatic method.
Xylia will make it easy to create and edit proofs that will be verified by another program,
and avoids the troubles of tediously editing the XML document in a text editor.
Xylia makes use of both Java and XML, and the two technologies play nice
together, so to speak, they are both created with a cross-platform nature, and are being
quickly adopted across the Internet. In fact the next version of the HTML standard is
called XHTML (eXtensible HTML) and is HTML defined as an XML markup language.
And Java is becoming more and more popular as the number of types of computing
platforms supporting it increase. A study by Evans Data Corporation
(http://www.evansdata.com) suggests that the number of Java developers will overtake
the number of developers using the incumbent C/C++ language by next year (see
http://www.zdnet.com/eweek/stories/general/0,11011,2804967,00.html for a news story
on the study).
So you can see, creating the Xylia toolkit will let researchers and others have an
easy way to use XML for their projects. It is a work in progress, and development is to
continue this fall by another workterm student.