XML
is not only going to improve basic website information, but it is also being adapted
for alternative uses. When XML was created, it was intended that the language
would be useful in areas where a markup language has never been used before. By
using XML sub-specifications, data that previously had no relation to the Internet
could be easily shared by people all around the world.
A
drawback of current sub-specification models is that different businesses and
consortiums propose them, and as a result, there is competition. However, many
of these models have such similar designs, that it is likely that some will be
merged, or at the very least, be interoperable using software that supports the
different sub-specifications.
XSL,
or Extensible Style Language, is a sub-specification currently in approval by
the W3C. The purpose of XSL is that it would be used in conjunction with XML web
pages, and provides a styling mechanism for those pages. XSL is aiming to replace
Cascading Style Sheets, also called CSS, which is a non-XML format. However, there
is debate on whether XSL is necessary, especially since current standards use
CSS. For example, Microsoft has been adopting XSL into its Internet Explorer product,
even before the specification has been set. Yet, Netscape’s upcoming Communicator
products will be 100% compliant of current specifications, and not support XSL.
Until XSL matures, it is likely that CSS will still be used by most websites,
since it provides the highest level of compatibility.
The
XML-based User Interface Language, or XUL (pronounced "Zuul"), is an
implementation of XML used for the graphical components of a computer program.
A GUI is most everything you see on modern computer screens, such as buttons,
tabs, menus, sliders, windows, file listings, and more. The significance of XUL
is that it allows rapid GUI development and a high level of customization possibility.
XUL
was developed by Netscape Communications, and will be used throughout their upcoming
Communicator product. With the entire GUI of Communicator written in XUL, it can
actually become part of the web browsing experience. One possible implementation
would be that Internet service providers could modify the Communicator GUI to
integrate with their services to a great extent, and add their logo and themes
to the product.
Websites
could also dynamically modify the XUL GUI as you browse, offering a more integrated
experience. An example could be a website map temporarily displayed in tabbed-window
as part of the web browser.
It
is impossible to tell if others in the software industry will adopt XUL, as it
is only a specification currently in use by Netscape and affiliates. However,
XUL is a very good example of XML being used beyond an Internet web page.
One
of the most frustrating parts of the Internet experience is the ubiquitous ad
banners. They are usually advertising a product or service that you would have
no interest in, therefore it is a worthless ad, and the user has lost time waiting
for the ad to load along with the web page.
The
Ad Markup Language offers a new way to exchange advertising information among
advertisers, website publishers, and users. Using AML, ad data can be easily exchanged
among these groups, resulting in better ad targeting based on user interest from
certain types of web sites. These improvements increase both advertisers’ ad value,
and users’ Internet experience. Ideally for users, ads would not exist, but better
ad targeting might decrease the need for high ad volume in an attempt to reach
interested customers. Advertisers would be comfortable in paying a higher price
for fewer ads if they know that targeted customers are viewing the ads.
For
storing advertising data, a computer system might use Extensible Log Format. XLF
is a sub-specification for logging data created by computers. Instead of computers
outputting undefined and overwhelmingly long data files, XLF log would be able
to be "mined", as some in the computer industry call it, for meaningful
data that can be reprocessed.
A
possible use would be for web server logs of visiting users. A web server can
find out much about a user, such as their Internet service provider (which can
translate to location), computer type, what website they came from, and much more.
Using this data, it could be processed, with the useful information being outputted
as AML, and used for advertising information.
An
important aspect of any XML sub-specification is that by using computers to do
low intensity sorting and translating of XML, we can easily use the output for
other purposes. In fact, there is a proposed extension of XSL call XSLT that would
be used as a reference for such translations. Using XUL, any of this data could
be used in a computer program, and be embedded inside of menus, windows, listings
and more, creating a useful application in understanding a problem, or realizing
a goal. With the relationships between types of XML explained, it is more obvious
on how they can be applied by using computers to sort out the data and put it
in a visual format that is useful to people.
There
also exists XML that is able to control these XML-sorting applications and it
is called Resource Description Framework. RDF is a way for XML data to be used
for automated processing of web resources. RDF can be more simply described as
instructions and rules for computer applications that process any sort of XML
data. With a boom in the volume of XML data likely, RDF will play a big role in
allowing computers to manage that data effectively.
For
managing commerce, there is FinXML, a standard developed to exchange data between
capitol markets. The advantage of FinXML is that it allows complex financial transactions
to be made using computers in confidence. E-commerce is the primary application
of this language, and allows direct communication between financial institutions,
vendors, and consumers.
The
FinXML language has tags defined for different types of transactions, such as;
basic financial transactions, reference data, market data, payments, settlements
and confirmations. FinXML also supports a wide variety of financial products including
interest rate, foreign exchange, bonds, money markets, loans, deposits, and trading
futures.
Consumers
may see service fees drop over time for financial transactions if FinXML, or some
alternative is adopted. In addition to lower costs, a higher level of financial
options may be offered, such as highly customized investments and loans.
Institutions
may have better access to data exchanges, with transactions possible between two
previously incompatible entities. In addition, FinXML is compatible with outside
industry standards, which also support e-commerce. With broader money markets,
FinXML could make the world economy much more efficient, and using Unicode, offers
understandable XML data to non-western countries.
For
sensitive information like commerce, there is an XML format called P3P, which
is short for Platform for Privacy Preference Project. It enables Web sites to
express their privacy practices in a standard format that can be retrieved automatically
and interpreted easily by users’ web browsers. P3P compatible software will allow
users to be informed of site practices and to transparently adhere to these practices,
so users need not read the privacy policies at every site they visit.
The
goal of P3P is to provide greater security when transferring sensitive information,
and setting rules on what kind of information can be transferred between a web
browser and a server.
For
displaying complex mathematical and scientific expressions: MathML was created,
and is currently in its second iteration. Previously, math expressions have been
created using graphics, but MathML makes the process much easier.
One
implementation of MathML is in Netscape’s upcoming Communicator product, allowing
MathML to be embedded into web pages. Another goal of the product is to offer
MathML expression editing in Communicator’s web page composer.
Other
possible implementations are computer algebra systems, print typesetters, and
voice synthesizers making Math data available to the blind. Also, plug-ins and
enhancements are being developed to let existing web browsers view MathML.
Here
is a simple algebra expression:
x2
+ 4x + 4 = 0
This
expression in MathML would be written like this: