TOC | Start here >> |
Automatically generated 2000-02-29 18:34 by steve
0 >> contents start |
|
|
|
The PIA, an XML-based platform for Web Applications |
<< 1 >> contents start |
Outline |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 2 >> contents start |
Major Trends in Web Applications |
---|---|
Web Applications
|
|
The PIA, an XML-based platform for Web Applications |
<< 3 >> contents start |
Challenges for Web Application Developers |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 4 >> contents start |
The Typical Web Application |
---|---|
HTML documents for content, ``code'' for actions. |
|
The PIA, an XML-based platform for Web Applications |
<< 5 >> contents start |
PIA: an XML-Based Web Application Framework |
---|---|
XML documents for both content and actions. |
|
The PIA, an XML-based platform for Web Applications |
<< 6 >> contents start |
A new design approach |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 7 >> contents start |
Let's see how we develop a typical page |
---|---|
Day of the week |
|
The PIA, an XML-based platform for Web Applications |
<< 8 >> contents start |
Here's the XML for that page |
---|---|
<h3>Day of the week</h3> <form action="&DOC:url;"> <heading>A Simple Form</heading> <numeric-input name="year" default="&year;"/> <numeric-input name="month" default="&month;"/> <numeric-input name="day" default="&day;"/> <form-submit name="day of week" /> <if-form-submitted> <weekday> <year>&FORM:year;</year> <month>&FORM:month;</month> <day>&FORM:day;</day> </weekday> </if-form-submitted> </form>parts look like plain HTML... |
|
The PIA, an XML-based platform for Web Applications |
<< 9 >> contents start |
Here's the XML for that page |
---|---|
<h3>Day of the week</h3> <form action="&DOC:url;"> <heading>A Simple Form</heading> <numeric-input name="year" default="&year;"/> <numeric-input name="month" default="&month;"/> <numeric-input name="day" default="&day;"/> <form-submit name="day of week" /> <if-form-submitted> <weekday> <year>&FORM:year;</year> <month>&FORM:month;</month> <day>&FORM:day;</day> </weekday> </if-form-submitted> </form>other parts are application-specific... |
|
The PIA, an XML-based platform for Web Applications |
<< 10 >> contents start |
Here's the XML for that page |
---|---|
<h3>Day of the week</h3> <form action="&DOC:url;"> <heading>A Simple Form</heading> <numeric-input name="year" default="&year;"/> <numeric-input name="month" default="&month;"/> <numeric-input name="day" default="&day;"/> <form-submit name="day of week" /> <if-form-submitted> <weekday> <year>&FORM:year;</year> <month>&FORM:month;</month> <day>&FORM:day;</day> </weekday> </if-form-submitted> </form>some tags perform processing... |
|
The PIA, an XML-based platform for Web Applications |
<< 11 >> contents start |
Processing is controlled by a tagset |
---|---|
... that contains definitions for all the tags
|
|
The PIA, an XML-based platform for Web Applications |
<< 12 >> contents start |
The tagset specifies what each tag does |
---|---|
here's a typical tag definition <define element="if-form-submitted" syntax="quoted"> <doc> expand the content if responding to a form submission (query) </doc> <action> <if><get name="queryString"/> <then> <expand><get name="content"/> </expand> </then> </if> </action> </define> A tagset is simply another XML document |
|
The PIA, an XML-based platform for Web Applications |
<< 13 >> contents start |
Some tags are ``primitives'' |
---|---|
(A primitive is a tag defined by implementation code rather than
defined in terms of XML.)
<define element="if" class="ifHandler"> <doc> Expand the "then" sub-element if the condition is true (i.e. expands to something other than whitespace). </doc> </define> |
|
The PIA, an XML-based platform for Web Applications |
<< 14 >> contents start |
The set of primitives is small |
---|---|
About 30 primitive operations, comprising a complete language. |
|
The PIA, an XML-based platform for Web Applications |
<< 15 >> contents start |
Many domain-specific vocabularies |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 16 >> contents start |
Now let's look at data |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 17 >> contents start |
Site Structure may get complicated |
---|---|
The PIA, an XML-based platform for Web Applications |
<< 18 >> contents start |
Site structure defined by XML |
---|---|
Where to find the files
<Container file="~/Calendar" virtual="/PIA/Apps/Calendar"> <Ext name="xh" type="text/html" tagset="Calendar-xhtml" /> <AGENT name="Calendar" time="0042"> <initialize> <user-message> Calendar initialized </user-message> </initialize> <daily-action> </AGENT> </Container> |
|
The PIA, an XML-based platform for Web Applications |
<< 19 >> contents start |
Site structure defined by XML |
---|---|
how to map file types to tagsets
<Container file="~/Calendar" virtual="~/PIA/Apps/Calendar"> <Ext name="xh" type="text/html" tagset="Calendar-xhtml"/> <AGENT name="Calendar" hour="00"> <initialize> <user-message> Calendar initialized </user-message> </initialize> <daily-action> </AGENT> </Container> |
|
The PIA, an XML-based platform for Web Applications |
<< 20 >> contents start |
Site structure defined by XML |
---|---|
Agent runs at midnight
<Container file="~/Calendar" virtual="~/PIA/Apps/Calendar"> <Ext name="xh" type="text/html" tagset="Calendar-xhtml" /> <AGENT name="Calendar" hour="00"> <initialize> <user-message> Calendar initialized </user-message> </initialize> <daily-action> </AGENT> </Container> Not using a DTD or PI's in the document. |
|
The PIA, an XML-based platform for Web Applications |
<< 21 >> contents start |
Tree-Structured Data Guarantees Well-formedness |
---|---|
The PIA's internal representation is parse trees
|
|
The PIA, an XML-based platform for Web Applications |
<< 22 >> contents start |
Platform-Neutral Processing |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 23 >> contents start |
Portable Implementation |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 24 >> contents start |
Other PIA Components |
---|---|
(You can read about these on the web site)
|
|
The PIA, an XML-based platform for Web Applications |
<< 25 >> contents start |
Summary: Answering the Challenges |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 26 >> contents start |
Status and Resources |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 27 >> contents start |
Appendix: PIA Features |
---|---|
|
|
The PIA, an XML-based platform for Web Applications |
<< 28 >> contents start |
Comparison to PHP3 | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
and other platforms that embed code in web pages
|
||||||||||||||||||||||||
The PIA, an XML-based platform for Web Applications |
<< 29 >> contents start |
Comparison to XSLT | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
and other stylesheet-based publishing systems
|
||||||||||||||||||||||||
The PIA, an XML-based platform for Web Applications |