Title: DTI Generates EBusiness XML Applications using 4GL MetaCode XPATH and XMLSchema
1DTI Generates E-Business XML Applications using
4GL Meta-Code XPATH and XMLSchema
dti
Jason Brown
2Overview
dti
- DTI Background
- IT History
- Solutions Investigated
- FOX Radical Solution (Demo 1)
- FOX Architecture
- Building Fox Modules (Demo 2 )
3DTI Business Processes
dti
- Receive Applications
- Issue Notices, Permits, Contracts
- Request Information / Data
- Monitoring
4Our Data
dti
- Offshore well operations
- Production Reporting
- Environmental Consents Monitoring
- Decommissioning Liability Notices
- Etc.
5Mission
dti
- UK government mandatory requirements
- Paperless by 2005
- Alignment with the internet (Browser)
- XML data exchange
- Data about our data (Metadata)
6Mission
dti
dti
Oil Company
Electronic Communications Act 2000
internet
Review Submission
Submit Application
No Paper
Produce Documents
Master Legal documents
Digitally Sign File
Deliver Contract
Acknowledge Contract
Obtain Copy
Obtain Copy
7Challenges
dti
- Central Government limited resources
- Sizable Complex Data
- Complex Workflow
- Technology Choices for E-business
- Skills Timescales
- Future Support
8IT History
dti
9Problems post Y2K
dti
- 3GL (been here before)
- Focus diverted
- Restricted XML tools
- GUI less robust
- Individual coding styles
- Lost productivity, reliability, and consistency
10Solutions Considered
dti
- Oracle pl/sql - stateless
- Mod OSE
- Webview/Webdb/HTML DB
- UIX (bc4j)
- EJB
- Jdev/jsps/servlets
- .NET
- JSF/webforms/ADF
- XSLT
11Radical SolutionFOXUK OIL PORTAL
dti
12The UK Oil Portal
dti
E-Business
XHTLM JavaScript
FOX
XMLMeta-Code
JDBC
Complex XML Processing Engine
Oil Companies
DTI Staff
J2EE Java Servlet
Other Government Departments
Oracle Application Server 9i
13The Solution in Action Live Demonstration
1http//www.foxopen.net/foxdemo1.html
dti
14Fox ApproachRadical Solution
dti
- Modules written in XML 4GL Meta-code
- 1 Line of Code Much Work
- XPath used in 4GL meta-code
- XMLSchema design generates 4GL logic and screens
(e.g. LOV) - Stateful/Transactional uses module call stack
15Fox Approach (continued)
dti
- 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)
16FOX Development Technology
dti
- 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
17Fox is Sophisticated
dti
Module Manager
4-MODULE JAVA OBJECT
Module Cache
DOM Lock Manager
D O M C A C H E
Browser
2-LOAD MODULE
Presentation Generator - XHTML - Java Script
Activity Thread Manager
6
SQL Engine
Action Logic Engine
6
API Engine
FORM Translator values merged into XML Hierarchy
DML Generator
Selects, PLSQL, Inserts, Updates Deletes
Document Generator
18Application Component BuildLive Demonstration
2http//www.foxopen.net/foxdemo2.html
dti
19Conclusion
dti
- Handles large complex submissions and complex
workflow performant - Manages document preparation signing
- Achieves 100 paperless and electronic legal
compliance - XML compliance
- Fox engine improvements benefit all apps at a
stroke - Road not always smooth but Good Position
20More Info and Contacts
dti
www.og.dti.gov.uk/ukoug2005
- References / 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.or
g/ - 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/