<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META content="MSHTML 5.00.2614.3500" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>XML seems to be devoted to putting data markup into 
documents so programs, like search engines, can understand the content on those 
documents. But what of forms processing?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Lets say we had a DTD with a&nbsp;list of data 
conforming to the DTD (many data items). This data could represent a name file 
with lots of customer name and contact information. The form could be a letter 
for that data to be merged into. The DTD is designed to represent the customer 
name file data.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>ie&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DTD defining 
field details in customer Name file</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Name file data</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;FirstName&gt; Fred &lt;/FirstName&gt; 
&lt;Surname&gt;Bloggs&lt;/Surname&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;Address1&gt;123 some street&lt;/Address1&gt; 
&lt;Suburb&gt;Some Suburb&lt;/Suburb&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;Town&gt;Bunyip<FONT face=Arial 
size=2>&lt;/Town&gt; 
&lt;State&gt;Victoria&lt;/State&gt;&nbsp;&nbsp;&lt;PostCode&gt; 
4100&nbsp;&nbsp;&nbsp;&lt;/PostCode&gt;&nbsp;&nbsp;&nbsp; 
&lt;Country&gt;Australia&lt;/Country&gt;</FONT></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial size=2>&lt;FirstName&gt;Brian &lt;/FirstName&gt; 
&lt;Surname&gt;Browns&lt;/Surname&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;Address1&gt;Another street&lt;/Address1&gt; 
&lt;Suburb&gt;Another Suburb&lt;/Suburb&gt;</FONT></DIV>
<DIV><FONT face=Arial size=2>&lt;Town&gt;Drouin<FONT face=Arial 
size=2>&lt;/Town&gt;&lt;State&gt;Victoria&lt;/State&gt;&nbsp;&lt;PostCode&gt; 
4100&nbsp;&nbsp;&nbsp;&lt;/PostCode&gt;&nbsp;&nbsp; &lt;Country&gt; 
Australia&lt;/Country&gt;</FONT></FONT></DIV></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Document XSL</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Litebook Computers P/L&nbsp;&nbsp;&nbsp; (letter 
head etc.......)</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; <FONT face=Arial 
size=2>&lt;FirstName&gt; &lt;Surname&gt;</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; <FONT face=Arial 
size=2>&lt;Address1&gt; </FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &lt;Suburb&gt; &lt;State&gt; 
&lt;PostCode&gt; </FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; &lt;Country&gt;</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Dear <FONT face=Arial 
size=2>&lt;FirstName&gt;</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp; As you have probably heard in 
the media XML is the comming standard for Internet but how will it work for 
other functions like mail merge, document interchange such as invoices, 
statements order form processing from company to company - accounting system to 
accounting system?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Does every accounting system have to store its data 
in relational or other structure and do a transformation to XML or can the 
accounting system store its data in XML format, even though it might not be as 
efficient a data storage method.</FONT></DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial 
size=2>-------------------------------------</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>There are parallel data storage formats PICK uses 
an attribute marker for data storage and so can have a storage structure which 
is a linited syntax tree</FONT></DIV>
<DIV><FONT face=Arial size=2>Attribute marker characters are chars 255, 254, 
253</FONT></DIV>
<DIV><FONT face=Arial size=2>Eg:</FONT></DIV>
<DIV><FONT face=Arial size=2>customer name | address 1 | Suburb | State | 
Postcode | Invoices | 12312312/ 1233423 / 455664 / 464646 / 46456 / 786886 / 
77669 / 8790890 / 8908008/ ~</FONT></DIV>
<DIV><FONT face=Arial size=2>where | is char 254 and / is char 253 ~ is char 255 
(end of record)</FONT></DIV>
<DIV><FONT face=Arial size=2>This structure allows pick programmers to store a 
unlimited list of invoice numbers in the customer's record.</FONT></DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial 
size=2>-------------------------------------</FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>Another data structure type is MUMPS where the 
storage unit is unique key = Data item,</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>The key is a sparse array eg&nbsp; Global&nbsp; 
^Debtors would have</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>^Debtors(ShortName, Litebook, Inv 123) = "123 | 
25/12/90 | $230.00 | $23.00 |"</FONT></DIV>
<DIV><FONT face=Arial size=2><FONT face=Arial size=2>^Debtors(ShortName, 
Litebook, Inv 123, item1) = "Sof123 | Software program for parsing XML | 1only | 
$220.00"</FONT></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>MUMPS has a $piece function string = $P(<FONT 
face=Arial size=2><FONT face=Arial size=2>^Debtors(ShortName, Litebook, Inv 123, 
item1) ,"|",2)</FONT></FONT></FONT></DIV>
<DIV><FONT face=Arial size=2>would yeild string = "Software program for parsing 
XML"</FONT></DIV>
<DIV><FONT face=Arial size=2>-------------------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2>To me it appears that XML offers the programmer a 
much more sophisicated data structure than any previously imagined. A well 
structered symble table of variables seems to offer the programmer a much better 
easier applications building approach BUT there is a tangle of data and screen 
markup like &lt;font "size = 10"&gt; and form details like the letter head etc.. 
which is not data and not interesting to the applications programmer, only of 
interest to the viewer.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>How would one keep real data separate from display 
markups and screen text words like "INVOICE" etc????</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></BODY></HTML>