View
223
Download
0
Category
Preview:
Citation preview
DTI Generates E-Business XML
Applications using 4GL Meta-Code XPATH
and XMLSchema
Jason Brown
dti
Overview
• DTI BackgroundDTI Background• IT HistoryIT History• Solutions InvestigatedSolutions Investigated• FOX Radical Solution FOX Radical Solution
(Demo 1)(Demo 1)• FOX ArchitectureFOX Architecture• Building Fox Modules Building Fox Modules
(Demo 2 )(Demo 2 )
dti
DTI Business Processes
• Receive ApplicationsReceive Applications• Issue Notices, Permits, Issue Notices, Permits,
ContractsContracts• Request Information / DataRequest Information / Data• MonitoringMonitoring
dti
Our Data
• Offshore well operationsOffshore well operations• Production ReportingProduction Reporting• Environmental Consents & Environmental Consents &
MonitoringMonitoring• Decommissioning Liability Decommissioning Liability
NoticesNotices• Etc.Etc.
dti
Mission
UK government mandatory UK government mandatory requirements:requirements:
• Paperless by 2005Paperless by 2005• Alignment with the internet Alignment with the internet
(Browser)(Browser)• XML data exchangeXML data exchange• Data about our data (Metadata)Data about our data (Metadata)
dti
dtiMission
ReviewSubmission
Produce Documents
Digitally Sign & File
Deliver Contract
Acknowledge Contract
Submit Application
Obtain Copy
internet
Master Legal
documents
Electronic Communications Act 2000
Obtain Copy
dti
Challenges
• Central Government – limited Central Government – limited resourcesresources
• Sizable Complex DataSizable Complex Data• Complex WorkflowComplex Workflow• Technology Choices for E-Technology Choices for E-
businessbusiness• Skills & TimescalesSkills & Timescales• Future SupportFuture Support
dti
IT History
3GL, T.P. Forms, Cobol, Codasyl Database.Everything hard work !
10-20 md
1980’s
TechnologyBuild Period
3GL, Hand crafted Pl/Sql HTML, Oracle8.
3-6 md
>2000
4GL, Case*Generators, Forms3, Oracle7/8.
2-5 md
1990’s
dti
Problems post Y2K
• 3GL (been here before)3GL (been here before)• Focus divertedFocus diverted• Restricted XML tools Restricted XML tools • GUI less robust GUI less robust • Individual coding styles Individual coding styles • Lost productivity, reliability, Lost productivity, reliability,
and consistencyand consistency
dti
Solutions Considered
• Oracle pl/sql - stateless• Mod OSE • Webview/Webdb/HTML DB• UIX (bc4j) • EJB • Jdev/jsps/servlets• .NET• JSF/webforms/ADF • XSLT
dti
Radical SolutionFOX
UK OIL PORTAL
dti
E-Business
The UK Oil PortalThe UK Oil Portaldti
Complex XML Processing Engine
Oil Companies
Browser
DTI Staff
Other Government Departments
Oracle Application Server 9i
J2EE Java Servlet ......
......
<ORG>...200
......
XML_DATAID
XML DATA TABLE
Oracle Server9i R 2
XHTLM & JavaScript
JDBC
XMLMeta-Code
FOX
The Solution in Action
Live Demonstration 1
http://www.foxopen.net/foxdemo1.html
dti
Fox ApproachRadical Solution
• Modules written in XML 4GL Modules written in XML 4GL Meta-code Meta-code
• 1 Line of Code = Much Work1 Line of Code = Much Work• XPath used in 4GL meta-codeXPath used in 4GL meta-code• XMLSchema design generates 4GL XMLSchema design generates 4GL
logic and screens (e.g. LOV)logic and screens (e.g. LOV)• Stateful/Transactional – uses
module call stack
dti
Fox Approach (continued)
• Fewer tables and columns:ID NUMBER(12), XML_DATA (SYS.XMLTYPE)
• No XMLSchema on tables - data builds over time
• Incremental validation (Levels 1 and 2)
• Level 3 validation using SQL & PL/SQL
• XML cached in memory using DOM• DOM node - a wonderful object (pass
it around)
dti
FOX Development Technology
• Fox Engine (upfront one-off investment):
Java J2EE Servlet, IDE Oracle JDEV, 9iAS
• Fox Meta-code: XMLSchema, XMLSpy
Stored in Oracle Tables• Developer Tools and Features:
Oracle XMLType, Blob, Clob, Collections Toad Beta for XMLType Developer Testing
dti
Fox is SophisticatedModule Manager
Module Cache
Activity Thread Manager
Action LogicEngine
PresentationGenerator - XHTML
- Java ScriptDOM Lock
Manager
Fox Modules
Thread XML
Application XML
Application
TablesDML Generator
API Engine
SQL Engine
DOM
CACHE
Browser
FORM Translatorvalues merged
into XML Hierarchy
1 – INITIAL URL REQUEST
3 – LOAD MODULES
8
2-LOAD MODULE
4-MODULE JAVA OBJECT
6
7
7-XHTML
8 – HT
ML F
OR
M P
OS
T
Selects, PLSQL,
Inserts, Updates
Deletes
6
dti
Document Generator
5 – THREAD STATE MEMORY
Application Component Build
Live Demonstration 2
http://www.foxopen.net/foxdemo2.html
dti
Conclusion• Handles large complex Handles large complex
submissions and complex submissions and complex workflow – performantworkflow – performant
• Manages document preparation Manages document preparation & signing& signing
• Achieves 100% paperless and Achieves 100% paperless and electronic legal compliance electronic legal compliance
• XML complianceXML compliance• Fox engine improvements Fox engine improvements
benefit all apps at a strokebenefit all apps at a stroke• Road not always smooth but Road not always smooth but
Good PositionGood Position
dti
More Info and Contacts www.og.dti.gov.uk/ukoug2005References /
Acknowledgements:
• Altova XMLSpy: XML Editing, XMLSchema Design/Validation; XSL-FOhttp://link.altova.com
• The Apache XML Project: XPATH Engine (Xerces), PDF Document Generation (FOP)http://xml.apache.org/
• interactivetools.com: WYSIWYG Text Editor (htmlArea)http://www.interactivetools.com/
• Oracle: Oracle 9i/10G, 9ias Application Server, JDeveloperhttp://www.oracle.com/
• Quest Software Toad: Developer Database Toolshttp://www.toadsoft.com/
• World Wide Web Consortium: DOM, XML, XHTML, XPATH, XMLSchema, XSLT, XSL-FOhttp://www.w3.org/
dti
Recommended