This query is by way of a design / architecture sanity check first and then a question about how to undertake the integration. if someone can advise I'd appreciate the steer now at design time rather than finding out that the concept is completely cookie later on after I have written code.
1) Raw data for standard document fields will be stored in SQL Server. The documents will require data entry via online forms and can be presented back within a navigable Web application and in a format suitable for printing.
- An ASP.Net application will manage the presentation of the data via HTML to a browser for data entry update etc.
- I'm happy with this chain end to end, i.e. SQL Server -> ASP -> HTML, and would separate the business layer from the form layer using code behind modules.
2) Users will require to generate a document for signature and permanent storage. (Paper audit trails are still a requirement in some areas)
- I was planning to use the SQL Server XML capabilities in conjunction with a pre-built XSL-FO stylesheet to generate a .pdf document all nicely formatted and ready for printing... .pdfs being a little less open to user editing than .doc files.
It occurred to me that I could try to use the SQL Server / XML capabilities, possibly in conjunction with XSLT, to create the main data forms and incorporate them within an ASP Wrapper that manages the presentation of application navigation elements, i.e. menus, button controls etc., thus enabling me to be able to re-use components.
I was planning using the Apache XSL_FO engine for the .PDF generation and have determined how the FO.BAT file might be triggered from within ASP.NET (VB
Is this a viable approach? and if so how would I integrate the components. If there is a better way of achieving the results I want then I'm open to suggestions. I'm at a design stage. If I've missed an ASP - XML - SQL integration bit I'll be content with "RTM!" and a reference to the example, see reference list below.
The issue I am not clear on is how to integrate the components seamlessly.
- Is it necessary to create and store a physical .XML/XSL file within the application layer that can then be referenced by the presentation layer as in the AdRotator examples within ASP.Net Website Programming and ASP.Net 1.1 with VB
.Net 2003? These seem to imply a separation between the XML and database elements of the application.
Or, can some sort of stream object be used to pass the data between the two layers? Ideally I'd prefer not to be generating XML files that need cleaning off the server on an automated basis.
The references I have available are:
ASP.Net 1.1 with VB
SQL Server 2000 XML
ASP.Net Website programming
a couple of XSL-FO books by other publishers.
Tools available: SQL Server, Visual Studio.Net (I know VB
), Altova's XMLSpy and Stylevision (with .Net Integration). The Rational Rose XDE tool is being used to model the classes for the different layers and generate out the class code stubs.