|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XSL Challenge
At 8:25 -0400 5/6/99, Roger Costello wrote: >It looks simple. It is deceptively challenging. > >An XML document stores database data as follows: > ><?xml version="1.0"?> ><DynamicTable> > <Columns> > <Column name="col1"/> > <Column name="col2"/> > </Columns> > <Rows> > <Row> ... >So the HTML table >should look like this: > > col1 col2 > A C > E S ... Hmmm It's not quite applicable, but this is very close to the kind of layout problems we solve in our report writer. I found XSL syntax too complex for our purposes (machines and humans writing, machine parsing back into report definitions). The following annotated sample gives an idea of what our output looks like, more examples at <ftp://ftp.highway1.com.au/pub/adsoftware/xml/reportOutput/> and I'm really interested in having them criticised. <?xml version='1.0' standalone='yes'?> <report ID='1'> <!-- embedded schema The following is based largely on the XML Schema working group draft http://www.w3.org/TR/xmlschema-1/ with our own datatypes (eg: ui2) defined below being compatible with Microsoft's data types in XML-Data, except format of date, time etc. defined in http://msdn.microsoft.com/xml/schema/reference/datatypes.asp Our dbFields are <elementType>s nested within the <elementType> of the table, rather than the MS approach of declaring an <elementType> then using an IDRef in the <element> type attribute. This was partly to speedup development of our first release of schema parsing and partly because our database, like most others, allows field names to be reused within the local scope of a table and We use length attributes in the <datatype> to indicate string and base64 fixed length fields following the facets discussed in http://www.w3.org/TR/xmlschema-2/ --> <schema xmlns:dt='http://www.w3.org/xmlschemas/datatypes'> <elementType name='dbStudents'> <elementType name='Last_Name'> <datatypeRef name='string' length='25'/> </elementType> <elementType name='First_Name'> <datatypeRef name='string' length='15'/> </elementType> </elementType> </schema> <!-- our styles for text are specified using CSS strings and connected via ID with the ID tag only being written by the report-writer for elements which have a unique style (they cascade) in order to cut down on visual clutter inside the XML --> <style> #1-2-1{font-family: Helvetica; line-height: 1.000 ; font-size: 10 ; color: rgb(0, 0, 0); text-align: left} </style> <layout> <!-- page header and footer descriptions skipped the following table description generates a table as you require from the given schema element dbStudents, adding a column for each element. We already have <column> elements working for specifing overriding headers and planned extensions are: 1) allow <column> to specify a source element (eg: Last_Name) within the main table source 2) allow the source attribute to indicate a filename, eg: a dBase file so the XML spec is layout only, pulling the data in directly from an external database. --> <table ID='1-2-1' source='dbStudents'> </table> </layout> <!-- data for dbStudents --> <dbStudents> <Last_Name>Carey</Last_Name> <First_Name>Marion</First_Name> <field2>Fixed Text</field2> <Last_Name>Dobson</Last_Name> <First_Name>Sharon</First_Name> <field2>Fixed Text</field2> ... Andy Dent BSc MACS AACM, Software Designer, A.D. Software, Western Australia OOFILE - Database, Reports, Graphs, GUI for c++ on Mac, Unix & Windows PP2MFC - PowerPlant->MFC portability http://www.oofile.com.au/ xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To (un)subscribe, mailto:majordomo@i... the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








