1 / 14

ATLAS Data Dictionary

ATLAS Data Dictionary. A. Bazan, T. Bouedo, P. Ghez, T. Le Flour, S. Lieunard M. Marino, C. Tull. Athena - the structure. ADL. DObj. DObj. DictionarySvc. Why a data dictionary. Avoid tedious integration of objects to the framework Re-use the objects already present in the dictionary

bond
Download Presentation

ATLAS Data Dictionary

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ATLAS Data Dictionary A. Bazan, T. Bouedo, P. Ghez, T. Le Flour, S. Lieunard M. Marino, C. Tull

  2. Athena - thestructure ADL DObj DObj DictionarySvc T. Bouedo

  3. Why a data dictionary • Avoid tedious integration of objects to the framework • Re-use the objects already present in the dictionary • Concentrate the object development only on his behaviour • Provide access to transient objects • debugging, visualisation, scripting,... T. Bouedo

  4. Why a data dictionary • Provide to the objects all the mechanism of conversion between transient and persistent stores • Manage the evolution of the described objects • Provide information on persistent objects and collections without loading them in transient store T. Bouedo

  5. save edit delete browse user parse publish Object description management T. Bouedo

  6. Description language • Programmatic language : C++ •  : ATLAS official language, defined grammar, no new language to learn, … •  : too close to the implementation, no keyword to describe the persistency, … • Description language for WEB documents : XML •  : known language, description language, tools exist, every things can be described, ... • : no defined grammar, tedious to write ? , … • CORBA description language : IDL •  : known language, description language for interfaces, defined grammar •  :missing keywords, ... T. Bouedo

  7. Choice • ADL = Athena Description Language = IDL + {keywords} • Added keywords : • object relationships (from ODL grammar) : relationship • visibility : private • access to non described objects : extern • persistent data members : persistent • Declaration of Athena objects : • keywords added: DataObject ContainedObject CollectionObject T. Bouedo

  8. Choose the back-end configure the back-end user compile & generate code Code generation T. Bouedo

  9. From description to utilization Back End Code Cxx,Java,... Compiler Front End Source ADL ADL Parser JavaCC ADL Analyzer Meta Objet Representation Back End Code Cxx,Java,... Back End Code Cxx,Java,... T. Bouedo

  10. Meta-object representation GenObject InterfaceDefinition RelationDefinition 0..* 1 ElementaryDefinition 0..* 0..* 0..* 0..* 0..* 0..* 1 StructureDefinition AttributeDefinition1 TypeDefinition 0..* 0..1 1 OperationDefinition ParameterDefinition 1 0..* T. Bouedo

  11. create described object find described object delete described object browse described objects find object description user access attributes of a described object call method on a described object Dynamic interaction T. Bouedo

  12. Registration Creation Registration Access interface SERVICES Registered objects list Object description Method invocation Data member consultation Access Access Description Scripting Browser Integration in Athena Data Dictionary Service Algorithm ADL Object Transient Event Store Introspection Module ADL Object Descriptions Repository T. Bouedo

  13. User support • Documentation (User Guide) • Tutorial • Integration in Athena • (CMT fragments) • Automatic ClassID • Together module (M. Marino) • Support (Examples, FAQ, …) T. Bouedo

  14. Conclusion • Today the project is aborted • Some reasons to draw many lessons from that • Are people really ready to concentrate the effort at the design level using an high level description language, independent of the implementation? • Has this tool taken place too late in the Athena framework while a lot of C++ code was already written? -connected feedback: reverse engineering is not miraculous!- • Has this project been politically killed at the birth of the LCG? T. Bouedo

More Related