XLink and Publishing Opportunities   Table of contents   Indexes   Enabling XML eCommerce with the B2B Flow Language

 Clamart 
Electricité de France
 France 
 Futtersack, Philippe 
 
Philippe Futtersack
 Information System Architect
Electricité de France
 1 avenue du général de Gaulle BP 408 Clamart  France (92141)
Email: Philippe.Futtersack@edf.fr Web site:http://www.edf.fr/der
 Biography
 After graduating from the Orsay University - Paris XI, he has been working for three years at the GIP ALTAIR - INRIA Research Institute in the O2 prototype project. Since 1990, he has been working at Electricité de France. In the R&D Division of the Company, and more precisely in the Documentation and Information System Department, he focuses on new technologies, especially Object DBMS's and Object Oriented Specification methods, to apply them to the electronic documentation domain. He has been involved in the EDF Electronic Library Project for three years. Since 1997, he has been in charge of Software Architecture for Commercial and Technical Information Systems.
Bolf, Didier
Decan CS - Metamor Worlwide Inc.
 France 
Issy-les-Moulineaux
 
Didier Bolf
 Engineer - Database & Web Technology Expert
Decan CS - Metamor Worlwide Inc.
 52 boulevard Rodin Issy-les-Moulineaux  France (92137)
Email: DBolf@decan.fr Web site:http://www.decan.fr
 Biography
 He graduated from the Denis Diderot University - Paris VII. Working at Decan CS, a French Company specialized in Information Systems Design, Document & Information Management, Scientific, Technical and Industrial Design and Object Technologies.
 Expert in Structured Document Management and Object Technologies himself, he was involved in the EDF Electronic Library Project from 1995 to 1998, working especially on structured document storage and their presentation on the Web. Since 1998, he has been working on several projects using ODBMS technology, Java and C++ programming languages, SGML, XML and its related standards. At present, he is involved in the Architecture team of SICLIP, a very large project at Electricité de France.
 

Introduction

 Data Warehouse approach is used to federate legacy information systems. XML and related standards are also very well adapted as a common input and output format. They also dramatically reduce the development costs. We will present to the audience the use of Java programming language and the use of XML we made in a large project at Electricité de France. This paper intends first to present where our data warehouse can profit from the XML technology. Then, a good way to manage efficiently XML data is presented. Finally, the paper will show in particular, how the new technologies can reduce dramatically the deve- lopment costs and guaranty evolutivity.
 

Context

EDF
 

The company Electricité de France (EDF)

 Today, the company serves 30 million customers in France. The electricity output is over 450 billion kWh. 376 billion kWh are generated in 1997. Nuclear energy provides most of the electricity generation in France, 78% of national output, 82% of Electricité de France output. Electricité de France also serves more than 13 million customers abroad through its international equity interests. That makes Electricité de France one of the world leading power utilities.
 Electricité de France's sales revenue came to 185 billion French francs (28.2 billion Euros) in 1998, down 1.5 billion French francs compared with 1997, despite an increased volume of sales. This slight drop of 0.8% is the result of the cumulative effect of the tariff reductions of 1997 (-4.6%) which were based on a full year and of that of 1998 (-2.5%). It also expresses the tendency of customers to use electricity during the least expensive periods when they increase their consumption.
 To fulfil its mission - the cost-efficient generation, transmission and distribution of energy so vital to modern life - Electricité de France developed, right from the start, an integrated corporate structure enabling the company to boast a comprehensive range of power utility activities and services. Backed up by skilled research and engineering teams working day by day to optimize the company's expertise, Electricité de France has fifty years' experience in the power field which makes it one of the world's leading electrical utilities. A world operator in the power field, Electricité de France has developed an international strategy based on investment and the sale of services. The company relies on partnerships with electrical utilities, manufacturers and investors. Electricité de France is thus present in a wide range of foreign companies representing approximately FRF 80 billion in assets, an installed capacity of 11,500 MW and more than 13 million customers. Electricité de France carries out its activity on all continents where the company develops its know-how in the fields of electricity generation, transmission and distribution, as well as utility management. In its international development strategy, Electricité de France features a policy for sustainable development that will not jeopardize the major ecological balances. The company is also playing its part in upgrading nuclear safety in the countries of Eastern Europe.
Executive Information System
 

The project: SICLIP

 SICLIP is an information system dealing with the professional customers. The underlying policy is to make the customers be more and more faithful and to increase the market parts of EDF. SICLIP is a company project which is made to answer the negotiators needs (account managing, marketing), to supply tools to pilot the commercial activity and to propose new services for customers. The Data Warehouse Janus is the core of SICLIP information system. It is the base of all the billing information for the professional customers at national level.
 From JANUS, legacy technical, documentary, financial and commercial information systems are re-designed to enable to produce new customer services and richer decision information. To reach this goal, data are extracted from numerous heterogeneous sources, cleaned up, enriched and gathered in data warehouses. Those Data Warehouses are maintained to feed specialized datamarts in order to supply information for business applications. CLIMS is one of the SICLIP applications. CLIMS is the first large project for which we specified, experimented and validated new technologies based on Java, XML et XSL. The architectural approach in the project plays a major role for new technologies appropriation. This application is presented in detail chapter 3.
 architecture 
 

The architecture team: activity scope and objectives

 SICLIP organization is based on 4 teams: Architecture, Development, Exploitation and Quality Management. The SICLIP Architecture team is constituted of four architects specialized in the Information System technologies. The architects participate during all the project life cycle, before the developments, during the developments and for the validation step. They can also participate for corrective maintaining and optimization step.
 The participation of technical architects is mandatory in all the projects of SICLIP. It happens in parallel with the functional specifications of the project owner to supply synchronously to the developers the specification and the technical recommendations. The team manager give missions to the team members who define hardware components, software components and related how-to-use recommendations, global models of the information system (data flow, applications, relational and physical models).
 A good knowledge of the new technologies enable the architects to preconize adequate, scalable and advanced solutions. We describe below how the architects can push the XML technology in operational applications and make those applications take benefits of it.
 

The SGML/XML experiences

 The R&D Division of Electricité de France has a very good experience with documentation, DBMS's and SGML/XML technologies and computer science in general. The Architecture team of SICLIP is part of that Division. Team members got a very good knowledge of SGML, XML, object and relational databases and Internet technologies. From 1994, the Architecture team manager was involved in a large project at EDF: the Electronic Library Project. This project received an award at COMDEX-Object World in 1997. It was presented at SGML/XML'1997 conference in Washington D.C and MetaStructure'1998 conference in Montreal. In this project, we particularly invested in SGML and Object DBMS domains.
 The Electronic Library Project was launched in 1994 to study the limits of new technologies like ODBMS (Object Database Management System), SGML (Standard Generalized Markup Language)/HyTime (Hypermedia/Time-based Structuring Language) structuring and a Web access interface. The result was better than any estimation we could had made. We produced 120,000 SGML/HyTime documents describing the whole activity of the research center. An important effort on hyperlinking modeling was done in this project. We used most advanced standard to enable hyperlinking: HyTime standard and CApH model (Conventions for the Applications of HyTime). Hyperlinks were stored in HyTime documents called HyperIndex documents. Within the document set, 60,000 HyTime HyperIndex documents (one for each SGML document) were automatically generated by applications, representing the hyperlink network. The Hyperlinks represent typed relationships between documents like an 'author' relationship between a technical report and a researcher. We built about 1,000,000 hyperlinks in these HyperIndex documents. Within the framework of the Electronic Library Project, we only used the Base, Location address and Hyperlinks modules of HyTime and more precisely the hyperlink web has been designed using the CApH conventions that EDF helped sponsoring. To restitute the information embedded in our large set of information, we chose a Web interface and we developed a friendly DSSSL-like rendering application to transform SGML/HyTime documents in HTML. From 1994 we made the good choices: SGML, Web interface, DSSSL-like formatting tool for the Web and HyTime engine to enable extended hyperlinking capabilities. Actual works of the W3C with XML, XSL, XLink validated choices we made several years ago. Microsoft Internet Explorer 5.0 and next Netscape Navigator 5.0 support or will support native XML with XSL and CSS stylesheets as we used SGML and DSSSL-like stylesheet for the Web with previous releases of these browsers.
 Profiting of the results of the Electronic Library project, we studied solutions to handle XML data and documents. Interactive XML (EXtensible Markup Language) generation was integrated to the project from 1997 onwards. We focused on Object DBMS, Object programming languages and XML standards to build new Web-based information systems. We notably developed a complete object schema of XML, which is fully conformant to the XML 1.0 W3C recommendation of February 1998. Then we make a document loader application by connecting an XML parser to the ODBMS. So that any XML document loaded in the database system is mapped into an object tree. A rendering application using the related XML standards is developed. All the specification and development are made with object technologies. The schema is written in 100 % pure Java. We presented this project at TOOLS'99.
 

CLIMS applications

 

Presentation

 'Monthly Report' is a CLIMS application to give monthly information to largest customers of Electricité de France. We chose XML as data exchange format in this commercial project. The main goal of this project is to provide customized, synthetic and detailed information about their electricity consumption to EDF negotiators and to their customers. With 'Monthly Report', data in the UN/EDIFACT format comes from invoicing applications running on mainframes. So we developed an application to convert this data to XML document. EDIFACT is an ISO standard for invoicing, administration, trade and transport activities. XML is a good choice for structuring data in our EDI project part. The combination of EDI and XML provides a new evolution for EDI notably over the Internet. XML supports Unicode, linking and can easily be connected to a DBMS. It enables to keep semantics in a universal format between processes and to have this information in a durable format to re-use it.
 EDIFACT, Electronic Data Interchange For Administration, Commerce and Transport 
 

EDIFACT data

 EDIFACT was chosen for the transmission of invoicing data coming from several invoicing applications of Electricité de France on its devoted network. By counting the number of sections, structure of EDIFACT messages ensure a good level of reliability in the transmission of electronic data. Syntactical rules of EDIFACT establish standards to structure data in segments, segments in messages and messages in exchanges. One exchange is made of the header for the exchange itself (the addressee), a header for the message (the invoice), data segments (EDIFACT message, detail section), the end for the message and the end for the exchange. A data segment is composed of a three-letter code to identify each segment and of data elements. A data element can be single or composite. Plus sign is used to separate single or composite data elements and column is used to separate single elements of a composite data element. Quote is used to end data segments. See below an example of two EDIFACT segments:
 
UNH+2576660000001+INVOIC:D:93A:UN:EAN007'
BGM+380:::BLEU99+9908300001+9'
 The message header contains many pieces of information, among them the date and the invoice type, sender identification, receiver and some information for invoice paying. The data (message details) contain data uniquely extracted from the invoices. First, they are common parts for the different pricing, then their specific parts and finally the involved taxes. The end of the message returns a detailed report, especially concerning the different taxes. We developed a Java ad hoc program to parse this kind of EDI messages.
 XSL 
 

Choices we made

 EDIFACT language is a standard of the United Nations and is widely adopted but EDIFACT is quite complex and expensive to implement in user applications. There are few specialists of this standard. Functionally speaking, XML can be used to structure EDIFACT exchanges of the Electricité de France invoices exactly in the same way as the EDIFACT syntax itself. For the data interchange between software, for DBMS storage and for browsers and editors, XML offers infinitely more possibilities than EDIFACT. The association of XML and EDI is subject of numerous working groups worldwide. The association allows the use of existing document-centric tools in addition to database facilities, storage, searching transactions. XML allows presentations, application logic, and data to be contained in one document as defined by the authors. XSL is the standard to manipulate XML trees so we naturally chose XSL standard to operate on our XML EDIFACT data.
 Electricité de France is interested in cooperating with other utilities. EDIEL is a Nordic EDI association for utilities. It includes Denmark, Finland, Norway, Sweden and Germany. The scope of the association is to standardize the use of EDI based on the UN/EDIFACT standard in the Nordic utilities. The EDIEL standard is supposed to cover all needs for data interchange.
 

Functionality

 Input Data come from mainframe, in ASCII text format and use EDIFACT conventions. Output data use the CSV file format to be read by end-users or to enable others post-processing actions. The CSV (Comma Separated Values) are an ASCII (i.e. plain text) representation of spread-sheet data. The values are separated by semi-columns, to indicate the separating points for columns. CSV data can be read by many spread sheet programs, notably by Microsoft Excel and by DBMSs.
 XSLT 
 

Mechanisms

Data Warehouse
 
Once EDIFACT messages are converted to XML, XSLT (transformation part of XSL) stylesheets are used. Those stylesheets allow us to manipulate and extract pieces of information from the XML invoices without effort. Constant data and simple presentation are also added. This new XML application is part of a very large project at EDF. Several tens of applications were developed to load source data and to render the information in different formats for different needs. In the future we hope giving a larger place to XML tools. XML will be the favorite candidate as a universal exchange format. We hope also to share this format directly with the source applications.
 

XML benefits for our Data Warehouse

 Existing DBMS and other information management systems offer connections with third products. However, it becomes very quickly expensive to maintain as many different connections as different tools that exist in our information systems. XML is then a good candidate as a base for common connection technique.
 UML 
 XMI 
 
XMI is a new open industry standard that combines the benefits of the web-based XML standard for defining, validating, and sharing document formats on the web with the benefits of the object-oriented Unified Modeling Language (UML). It provides application developers with a common language for specifying, visualizing, building, and documenting distributed objects and business models. XMI specifies an open information interchange model that gives developers working with object technology the ability to exchange models and data over Internet in a standardized way. That brings consistency and compatibility to applications created in collaborative environments. By establishing an industry standard for storing and sharing object programming information, development teams using various tools from multiple vendors can collaborate on applications. The new XMI standard allows developers to leverage the web to exchange data among tools, applications, and repositories, to create secure, distributed applications built in a team development environment. Customers can choose modeling tools, IDEs, repositories, and databases based on each product's individual merits. IBM developed the XMI Toolkit 1.0. This is a Java component that converts UML information between UML modeler and XMI-standard XML files. So, we can find a lot of tools that integrate XML as exchange format.
 

XML standard maturity level

 For the near future, when XML data format will be generalized, we are studying DBMS solutions, which might be integrated in our operational projects. The goal is to demonstrate that the adequate technology exists to have rapidly mature large-scale XML repositories.
 ODBMS 
 
We bet on advanced DBMS solutions and APIs such as DOM recommended by W3C and SAX developed by users. Concerning DBMS, we studied solutions to manage XML data in Object DBMS. We prefer ODBMS rather than Relational DBMS because of the best object navigation capabilities, low cost and much rapid and easy development with ODBMS. The XML System that we developed manages valid or not valid XML documents and fragments in an industrial ODBMS. However, legacy relational systems are good candidates to use XML as exchange format. We used a Java binding to develop an object schema and applications of our XML System. This language binding allows developers to build Java applications that store and manipulate Java objects with a transparent way in the database. Methods to access to the database to read and write object is transparently added after the Java compilation at the database import step using post-processing of the Java byte code. Moreover the Java schema that we developed is written in completely classical Java. The XML System implements in Java the W3C XML recommendation (including the storage of the DTD, completely split up in objects) with both SAX and DOM interfaces and fulltext capabilities.
 SAX 
 
The XML data are split up in objects at the deepest level of granularity. That allows to easily manipulate the object tree through our DOM API, to extract XML sub-tree, to share fragments over documents and to version elements thanks to the ODBMS configuration management capabilities. The system fulltext engine indexes and enables to retrieve information at the object level (XML element). Let notice that the Object DBMS guaranties good performances even with the deepest granularity. Moreover, the XT engine from James J.Clark allows XSL transformation and manipulation of the XML object trees directly in the object database. On the model of XT, which is written in Java and is based on a SAX interface, our system enables to connect very easily to XML/XSL tools. We will present the audience more information about our servlet-based Web prototype at work including fulltext indexing and searching. At the moment, we are studying Oracle Object-Relational DBMS to handle XML data and we will give first results and comments to the audience. This study will allow us to better understand the functionality of the XML repository announced by Oracle for the end of the millennium.
 

Perspectives

 We present here methodologies, tools and applications that we could quickly integrate in our project.
 

Methodologies

 Xlink 
 
We are interested in the Xlink and Xpointer standards which are based on HyTime, but at present, it is only a W3C working draft and few tools implement it. From a specification point of view, we are working on XML documents modeling using UML formalism. Very interesting work is done in the OMG working groups on MOF facilities.
 

Tools

 

DBMS

 Oracle makes a big effort to completely integrate XML in its solution. Many tools, based on XML, are proposed like a parser, SQL utilities, and a Java virtual machine. It is possible to integrate XML as exchange format by using tools like PL/SQL. Ardent software promised also an XML product relying on O2 ODBMS. Poet announced an alliance to integrate SoftQuad's Xmetal authoring environment to Poet Content Management Suite named CMS.
 

Other tools

 SoftQuad XMetal, Microsoft Internet Explorer 5.0 and certainly Microsoft Office 2000 offer XML support. We were promised that Office 2000 core is in XML format.
 

Applications

 At Electricité de France, some new applications are about to rely on XML. First, XML solutions are studied for some new functionalities of SICLIP Project, such as a solution which runs SQL queries to extract data from an Relational DBMS and converts the result in XML.
 Second, an information system, dealing with electric network regulation, is studied to manage and generate XML formatted data. The stake in the application is to standardize data exchange between the different electric industry actors such as electricity producers, electric network managers and electricity distributors in Europe.
 Finally, we are looking for XML solutions to upgrade Intranet and Extranet existing applications. The goal is to use XML based application servers and Java servlet engines.
 

Benefits expected from XML standard and tools in the near future

 Our experiments and production tools show that the combination of 3 parameters (Java programming language, XML parsers, XSL engines) enabled to decrease dramatically the software development costs. It moreover increases the application evolution reactivity and cost.
 Lots of XML tools are open source software. Moreover, they are free. In a large company like EDF, non-free software were preferred to have a guaranty the software editor and to have a support contract from the editor itself. Today, public domain software are accepted. Software used in the entire world offer in fact a much better support.
 XSLT is a promising open standard and a powerful language that allows the transformation and extraction of information embedded in XML data. The XSLT stylesheets that we use are short (hundred of lines) and can be very easily designed and maintained unlike classical programming languages. Moreover, the Java application we developed to convert from EDIFACT to XML is portable to any systems without recompilation.
 XMI is also a promising standard, which is going to answer the Data Warehouse interchange needs.
 

Conclusion

 EDF is a huge company making many information systems for internal use and for customer services. It developed in particular a powerful Executive Information System based on a large Data Warehouse. XML is used for some exchange functionalities and will be generalized as soon as possible to all the EIS data exchanges. Benefits are already identified. Numerous tools exists and the XML standard is durable. XML is adopted by all the information technology community.
 XML also answer to new company needs. Although, one years ago, the project owners were reluctant to use innovative technologies, it was possible to prove the XML benefits. The standard is now adopted and chosen for many emerging applications. Moreover, the software editors are integrating XML interfaces to their products.
 

Bibliography

 [1] Comdex-Object World 1997 - Award Best application combining object technology and the Internet, Electricité de France (France), The Electronic Library System - Frankfurt (Germany)
 [2] Documation 1996 - Le projet Bibliothèque Electronique: SGBDO et SGML/HyTime - Philippe Futtersack, Christophe Espert - Paris (France)
 [3] Documation 1997 - Bibliothèque Electronique pour la mise à disposition des documents de recherche - Philippe Futtersack, Florence Guy - Paris (France)
 [4] Document Style Semantics and Specification Language (DSSSL) - ISO/IEC 10179:1996
 [5] Document Object Model (DOM) Level 1 Specification Version 1.0 - W3C Recommendation 1 October, 1998
 [6] Electronique Publishing 1996 - SGML/HyTime repositories and object paradigms - Philippe Futtersack, Patricia François - Palo Alto (US)
 [7] Information technology - Hypermedia/Time-based Structuring Language (HyTime) - ISO/IEC 10744:1992
 [8] Inforsid 1996 - Une structure d'accueil de documents SGML/HyTime basée sur la technologie objet - Patricia François, Philippe Futtersack, Christophe Espert - Bordeaux (France)
 [9] MetaStructure 1998 - Modeling, generation, storage and presentation on the Web of one million of HyTime Links - Philippe Futtersack, Didier Bolf, Christophe Espert - Montreal (Canada)
 [10] The Electronic Library Project: SGML Document Management System based on ODBMS - Philippe Futtersack, Didier Bolf, Christophe Espert - OOPSLA 1997, Atlanta (GA), October 6
 [11] Information Processing - Text and office systems - Standard Generalized Markup Language (SGML) - ISO 8879:1986
 [12] Information Processing - Text and office systems - Standard Generalized Markup Language (SGML) - Amendment 1 ISO 8879:1986/A1:1988
 [13] SGML Europe 1995 - Electronique Library at Electricité De France: a case study using object technology - Philippe Futtersack, Christophe Espert - Gmunden (Autriche)
 [14] SGML User's Group France 1996 - Base de données objet pour la gestion de documents SGML/HyTime - Philippe Futtersack, Christophe Espert - Paris (France)
 [15] SGML/XML'1997 - Good performances for an SGML Object Database System - Philippe Futtersack, Christophe Espert, Didier Bolf - Washington DC (VA) (US)
 [16] Tools 1999 - An XML System based on ODBMS - Philippe Futtersack, Didier Bolf - Sofia (Bulgaria)
 [17] Extensible Markup Language (XML) 1.0 - W3C Recommendation - 10 February 1998
 [18] XML Path Language (XPath) Version 1.0 - W3C Proposed Recommendation 8 October 1999
 [19] Extensible Stylesheet Language (XSL) Specification - W3C Working Draft 21 Apr 1999
 [20] XSL Transformations (XSLT) Version 1.0 - W3C Proposed Recommendation 8 October 1999

XLink and Publishing Opportunities   Table of contents   Indexes   Enabling XML eCommerce with the B2B Flow Language