30
Gaudi Framework Tutorial, 2001 2 2 XML The persistent world

Gaudi Framework Tutorial, 2001 2 XML The persistent world

Embed Size (px)

Citation preview

Gaudi Framework Tutorial, 2001

22

XMLThe persistent world

XMLThe persistent world

2-2 Gaudi Advanced Tutorial, 2001

ObjectivesObjectives

After completing this lesson, you should After completing this lesson, you should be able to do the following:be able to do the following:

• Read and write XML files

• Write LHCb detector geometry in XML

• Visualize the geometry

After completing this lesson, you should After completing this lesson, you should be able to do the following:be able to do the following:

• Read and write XML files

• Write LHCb detector geometry in XML

• Visualize the geometry

2-3 Gaudi Advanced Tutorial, 2001

– XML declaration– XML declaration

– Comments– Comments

– Elements– Elements

– Attributes– Attributes

XML syntax overviewXML syntax overview

• A markup language

• Extendible

• A markup language

• Extendible

<?xml version=‘1.0’ encoding=‘UTF-8’?><!-- This is an example of XML --><Email> <TimeStamp time=11:38:43 /> <Sender> [email protected] </Sender> <Recipient> [email protected] </Recipient> <Subject> Lunch... </Subject> <Body> Could we meet at 14:00? <Signature> Sender’s signature </Signature> </Body></Email>

<?xml version=‘1.0’ encoding=‘UTF-8’?><!-- This is an example of XML --><Email> <TimeStamp time=11:38:43 /> <Sender> [email protected] </Sender> <Recipient> [email protected] </Recipient> <Subject> Lunch... </Subject> <Body> Could we meet at 14:00? <Signature> Sender’s signature </Signature> </Body></Email>

– Values– Values

• Main components :• Main components :

2-4 Gaudi Advanced Tutorial, 2001

Usage of DTDsUsage of DTDs

• Definition of a grammar

• Specifies :

– Allowed elements

– Allowed attributes for a given element

– Allowed children for a given element

• Written in markup language too

• Definition of a grammar

• Specifies :

– Allowed elements

– Allowed attributes for a given element

– Allowed children for a given element

• Written in markup language too

2-5 Gaudi Advanced Tutorial, 2001

Example of DTD usageExample of DTD usage<?xml version=‘1.0’ encoding=‘UTF-8’?><!DOCTYPE Email SYSTEM “file.dtd”><!-- This is an example of XML --><Email> <TimeStamp time=11:38:43 /> <Sender> [email protected] </Sender> <Recipient> [email protected] </Recipient> <Subject> Lunch... </Subject> <Body> Could we meet at 14:00? <Signature> Sender’s signature </Signature> </Body></Email>

<?xml version=‘1.0’ encoding=‘UTF-8’?><!DOCTYPE Email SYSTEM “file.dtd”><!-- This is an example of XML --><Email> <TimeStamp time=11:38:43 /> <Sender> [email protected] </Sender> <Recipient> [email protected] </Recipient> <Subject> Lunch... </Subject> <Body> Could we meet at 14:00? <Signature> Sender’s signature </Signature> </Body></Email>

<?xml version="1.0“ encoding="UTF-8"?><!ELEMENT Email (TimeStamp, Sender, Recipient, Subject, Body)><!ELEMENT TimeStamp EMPTY><!ATTLIST TimeStamp time CDATA #REQUIRED"><!ELEMENT Sender #PCDATA><!ELEMENT Recipient #PCDATA><!ELEMENT Subject #PCDATA><!ELEMENT Body (#PCDATA|Signature)*><!ELEMENT Signature #PCDATA>

<?xml version="1.0“ encoding="UTF-8"?><!ELEMENT Email (TimeStamp, Sender, Recipient, Subject, Body)><!ELEMENT TimeStamp EMPTY><!ATTLIST TimeStamp time CDATA #REQUIRED"><!ELEMENT Sender #PCDATA><!ELEMENT Recipient #PCDATA><!ELEMENT Subject #PCDATA><!ELEMENT Body (#PCDATA|Signature)*><!ELEMENT Signature #PCDATA>

2-6 Gaudi Advanced Tutorial, 2001

The LHCb Detector DTDThe LHCb Detector DTD

• Divided into 3 main parts

– structure

– geometry

– material

• External DTDs, to be referenced in every LHCb XML files

• Divided into 3 main parts

– structure

– geometry

– material

• External DTDs, to be referenced in every LHCb XML files

2-7 Gaudi Advanced Tutorial, 2001

Some specificitiesSome specificities

• Expressions evaluator – units & functions known• Expressions evaluator – units & functions known

12.2*mm + .17*m / tan (34*degree)12.2*mm + .17*m / tan (34*degree)

• parameter : a kind of macro• parameter : a kind of macro

<parameter name="InCell" value="40.6667*mm"/>

<parameter name="MidCell" value="1.5*InCell"/>

<parameter name="InCell" value="40.6667*mm"/>

<parameter name="MidCell" value="1.5*InCell"/>

protocol://hostname/path/file.xml#ObjectIDprotocol://hostname/path/file.xml#ObjectID

• References : element + “ref”• References : element + “ref”

<detelemref href="LHCb/structure.xml#LHCb"/><detelemref href="LHCb/structure.xml#LHCb"/>

2-8 Gaudi Advanced Tutorial, 2001

Structure ElementsStructure Elements

• DDDB : the root

• catalog : a list

• detelem : a detector element

• geometryInfo : connection to the geometry

• userParameter(Vector) : hook for adding parameters

• specific : hook for extending the DTD

• DDDB : the root

• catalog : a list

• detelem : a detector element

• geometryInfo : connection to the geometry

• userParameter(Vector) : hook for adding parameters

• specific : hook for extending the DTD

<DDDB> <catalog name=“…"> <detelem name=“…"> <geometryinfo lvname=“…” npath=“…” support=“…”/> <userParameter comment=“…” name=“…” type="string"> … </userParameter> <specific> … </specific> </detelem> </catalog></DDDB>

<DDDB> <catalog name=“…"> <detelem name=“…"> <geometryinfo lvname=“…” npath=“…” support=“…”/> <userParameter comment=“…” name=“…” type="string"> … </userParameter> <specific> … </specific> </detelem> </catalog></DDDB>

2-9 Gaudi Advanced Tutorial, 2001

Geometry Elements (1)Geometry Elements (1)

• DDDB : the root

• catalog : a list

• logvol : logical volume

• physvol : physical volume

• paramphysvol(2D)(3D) : replication of physical volumes

• tabproperty : tabulated properties

• DDDB : the root

• catalog : a list

• logvol : logical volume

• physvol : physical volume

• paramphysvol(2D)(3D) : replication of physical volumes

• tabproperty : tabulated properties

<DDDB> <catalog name=“…”> <logvol material=“…” name=“…”> <physvol logvol=“…” name=“…”/> </logvol> <logvol name=“…”> <paramphysvol number="5"> <physvol logvol=“…” name=“…”/> <posXYZ z="20*cm"/> </paramphysvol> </logvol> </catalog></DDDB>

<DDDB> <catalog name=“…”> <logvol material=“…” name=“…”> <physvol logvol=“…” name=“…”/> </logvol> <logvol name=“…”> <paramphysvol number="5"> <physvol logvol=“…” name=“…”/> <posXYZ z="20*cm"/> </paramphysvol> </logvol> </catalog></DDDB>

2-10 Gaudi Advanced Tutorial, 2001

Geometry Elements(2)Geometry Elements(2)

• posXYZ, posRPhiZ, posRThPhi : translations

• rotXYZ, rotAxis : rotations

• transformation : composition of transformations

• box, trd, trap, cons, tub, sphere

• union, intersection, subtraction : boolean solids

• surface

• posXYZ, posRPhiZ, posRThPhi : translations

• rotXYZ, rotAxis : rotations

• transformation : composition of transformations

• box, trd, trap, cons, tub, sphere

• union, intersection, subtraction : boolean solids

• surface

<subtraction name="sub2"> <box name="box3“ sizeX="1*m“ sizeY="1*m“ sizeZ="15*cm"/> <tubs name="tub2“ outerRadius="15*cm“ sizeZ="25*cm"/></subtraction><posXYZ z="-40*cm"/><rotXYZ rotX=“90*degree”/>

<subtraction name="sub2"> <box name="box3“ sizeX="1*m“ sizeY="1*m“ sizeZ="15*cm"/> <tubs name="tub2“ outerRadius="15*cm“ sizeZ="25*cm"/></subtraction><posXYZ z="-40*cm"/><rotXYZ rotX=“90*degree”/>

2-11 Gaudi Advanced Tutorial, 2001

Material ElementsMaterial Elements

• materials : the root

• catalog : a list

• tabproperty : tabulated properties

• atom

• isotope

• element : a mixture of isotopes

• material : mixtures of elements or materials

• materials : the root

• catalog : a list

• tabproperty : tabulated properties

• atom

• isotope

• element : a mixture of isotopes

• material : mixtures of elements or materials

<isotope A="11*g/mole“ name="Bor_11“ …/><element name="Boron“ symbol="B“ …> <isotoperef href="#Bor_10“ fractionmass="0.20"/> <isotoperef href="#Bor_11“ fractionmass="0.80"/></element><element name="Oxygen“ symbol="O“ …> <atom A="16*g/mole“ Zeff="8.0000"/></element><material name="CO2“ …> <component name="Carbon“ natoms="1"/> <component name="Oxygen“ natoms="2"/></material>

<isotope A="11*g/mole“ name="Bor_11“ …/><element name="Boron“ symbol="B“ …> <isotoperef href="#Bor_10“ fractionmass="0.20"/> <isotoperef href="#Bor_11“ fractionmass="0.80"/></element><element name="Oxygen“ symbol="O“ …> <atom A="16*g/mole“ Zeff="8.0000"/></element><material name="CO2“ …> <component name="Carbon“ natoms="1"/> <component name="Oxygen“ natoms="2"/></material>

2-12 Gaudi Advanced Tutorial, 2001

XmlEditorXmlEditor

• Explorer-like XML viewer

• No need to know XML syntax

• Checks the DTD when opening a file

• Allows copy, paste and drag and drop of nodes

• Allows view of several files at the same time

• Hide references across files

• Explorer-like XML viewer

• No need to know XML syntax

• Checks the DTD when opening a file

• Allows copy, paste and drag and drop of nodes

• Allows view of several files at the same time

• Hide references across files

Easy XML editionEasy XML edition

$LHCBSOFT/Det/XmlEditor/v*/scripts/xmlEditor(.bat)http://lhcb-comp.web.cern.ch/lhcb-comp/Frameworks/DetDesc/Documents/XmlEditor.pdf

$LHCBSOFT/Det/XmlEditor/v*/scripts/xmlEditor(.bat)http://lhcb-comp.web.cern.ch/lhcb-comp/Frameworks/DetDesc/Documents/XmlEditor.pdf

2-13 Gaudi Advanced Tutorial, 2001

XmlEditor screenshotXmlEditor screenshot

2-14 Gaudi Advanced Tutorial, 2001

PanoramixPanoramix

• Events and Geometry viewer

• Takes LHCb specificities into account

– references

– logical volumes hierarchy

– subDetectors

• Interactive move inside the geometry

• Events and Geometry viewer

• Takes LHCb specificities into account

– references

– logical volumes hierarchy

– subDetectors

• Interactive move inside the geometry

$LHCBSOFT/Vis/Panoramix/v*/scripts/panoramix(.bat)http://www.lal.in2p3.fr/SI/Panoramix/tutorial/tutorial.html

$LHCBSOFT/Vis/Panoramix/v*/scripts/panoramix(.bat)http://www.lal.in2p3.fr/SI/Panoramix/tutorial/tutorial.html

2-15 Gaudi Advanced Tutorial, 2001

Panoramix screenshotPanoramix screenshot

2-16 Gaudi Advanced Tutorial, 2001

ReferencesReferences

• Gaudi user guide

• XmlEditor documentation

• “The LHCb detector description DTD”

• “Extending detector elements and implications“

• Panoramix tutorial

• Everything can be found at :

http://lhcb-comp.web.cern.ch/lhcb-comp/

• Gaudi user guide

• XmlEditor documentation

• “The LHCb detector description DTD”

• “Extending detector elements and implications“

• Panoramix tutorial

• Everything can be found at :

http://lhcb-comp.web.cern.ch/lhcb-comp/

2-17 Gaudi Advanced Tutorial, 2001

Exercise 1Exercise 1

2-18 Gaudi Advanced Tutorial, 2001

Exercise GoalExercise Goal

• Define the geometry of a new subDetector

• Use XmlEditor to write the XML

• Use Panoramix to visualize it

• Define the geometry of a new subDetector

• Use XmlEditor to write the XML

• Use Panoramix to visualize it

2-19 Gaudi Advanced Tutorial, 2001

GeometryGeometry

headhead

headhead

1 m1 m

1 m1 m

3 m3 m

hole ø 30 cmhole ø 30 cm

1 m1 m

hole ø 30 cm

plate thickness 15 cm

spacing 5 cm

hole ø 30 cm

plate thickness 15 cm

spacing 5 cm

1 m1 m

1 m1 m

4 identical elements

4 identical elements

50 cm50 cm

16 m16 m

LHCbLHCb

2-20 Gaudi Advanced Tutorial, 2001

How to startHow to start

• source $LHCBHOME/scripts/tutorial.csh• cd tutorial• getpack Tutorial/Detector v3• cd Tutorial/Detector/v3• cp –r data/DDDBStart data/DDDB• cd cmt• cmt config• source setup.csh

To launch the applications :To launch the applications :• setenv DISPLAY ETSUN**:0.0• xhost + lxplus (on the local host)• xmlEditor• panoramix

• source $LHCBHOME/scripts/tutorial.csh• cd tutorial• getpack Tutorial/Detector v3• cd Tutorial/Detector/v3• cp –r data/DDDBStart data/DDDB• cd cmt• cmt config• source setup.csh

To launch the applications :To launch the applications :• setenv DISPLAY ETSUN**:0.0• xhost + lxplus (on the local host)• xmlEditor• panoramix

2-21 Gaudi Advanced Tutorial, 2001

What has to be doneWhat has to be done

• the directory data/DDDB contains part of the LHCb detector description (actually only Velo) and an empty mySubDet.

• To be done :

– define the structure of the detector in data/DDDB/mySubDet/structure.xml

– define the geometry of the detector in data/DDDB/mySubDet/geometry.xml

– visualize the result and play with it

• the directory data/DDDB contains part of the LHCb detector description (actually only Velo) and an empty mySubDet.

• To be done :

– define the structure of the detector in data/DDDB/mySubDet/structure.xml

– define the geometry of the detector in data/DDDB/mySubDet/geometry.xml

– visualize the result and play with it

2-22 Gaudi Advanced Tutorial, 2001

Hints on the structureHints on the structure

• This is defined in data/DDDB/mySubDet/structure.xml

• You should define 6 detector elements :

– One main

– One for the head, and one per element

• Detector elements only contain references, no detector element. Thus, edit structure.xml directly to add new detector elements at the same level as the main detector element

• GeometryInfo nodes need a lvname, a npath and a support. Don’t forget them

• Several detector elements may have the same logical volume, if they are physically identical

• This is defined in data/DDDB/mySubDet/structure.xml

• You should define 6 detector elements :

– One main

– One for the head, and one per element

• Detector elements only contain references, no detector element. Thus, edit structure.xml directly to add new detector elements at the same level as the main detector element

• GeometryInfo nodes need a lvname, a npath and a support. Don’t forget them

• Several detector elements may have the same logical volume, if they are physically identical

2-23 Gaudi Advanced Tutorial, 2001

Hints on geometryHints on geometry

• Do not forget to add your new sub detector to the LHCb geometry

• You should create 5 logical volumes only :

– The main one

– One for the head

– One for the other elements

– One for the inner of the element (you will need a coordinate system change)

– One for the plates

• Remember the existence of parametrised physical volumes for defining several identical volumes

• Take care of the case !

• Do not forget to add your new sub detector to the LHCb geometry

• You should create 5 logical volumes only :

– The main one

– One for the head

– One for the other elements

– One for the inner of the element (you will need a coordinate system change)

– One for the plates

• Remember the existence of parametrised physical volumes for defining several identical volumes

• Take care of the case !

2-24 Gaudi Advanced Tutorial, 2001

Hints on XmlEditorHints on XmlEditor

• Fileopen to open a file

• your files are in mycmt/Tutorial/Detector/v3/data/DDDB

• Double click to open nodes

• Right click to add elements/attributes

• Click on a value or node name to edit it

• Copy/paste available (Ctrl Vpaste, Ctrl Ccopy, Ctrl Xcut, Ctrl Bpaste into parent)

• Drag & drop available (move, Ctrlcopy, Ctrl Shiftref)

• Prefer Filesave all to save you work

• Fileopen to open a file

• your files are in mycmt/Tutorial/Detector/v3/data/DDDB

• Double click to open nodes

• Right click to add elements/attributes

• Click on a value or node name to edit it

• Copy/paste available (Ctrl Vpaste, Ctrl Ccopy, Ctrl Xcut, Ctrl Bpaste into parent)

• Drag & drop available (move, Ctrlcopy, Ctrl Shiftref)

• Prefer Filesave all to save you work

2-25 Gaudi Advanced Tutorial, 2001

Hints on PanoramixHints on Panoramix

• Use DetectormySubDet to display your geometry

• Then, two modes are available (you change by clicking on the icons on the right) :

– “small hand”, you can :

– rotate with left button + move– translate with middle + move or left + Ctrl + move– zoom with middle + Crtl + move or left + middle + move

– “pointer”, you can :

– open a volume with Ctrl + left click– remove/add color with left click

• The “eye” icon automatically resizes the view to your screen

• Relaunch panoramix when changing geometry

• Use DetectormySubDet to display your geometry

• Then, two modes are available (you change by clicking on the icons on the right) :

– “small hand”, you can :

– rotate with left button + move– translate with middle + move or left + Ctrl + move– zoom with middle + Crtl + move or left + middle + move

– “pointer”, you can :

– open a volume with Ctrl + left click– remove/add color with left click

• The “eye” icon automatically resizes the view to your screen

• Relaunch panoramix when changing geometry

2-26 Gaudi Advanced Tutorial, 2001

ReferencesReferences

2-27 Gaudi Advanced Tutorial, 2001

The LHCb Structure DTDThe LHCb Structure DTD

D DD B

version : C D ATA = 3 .2

<<D TD Elem ent>>

param eter

nam e : C D ATAvalue : CD ATA

cata log

nam e : IDclassID : C D ATA = 3

<<D TD Elem ent>>

cata logref

classID : C D ATA = 3href : C D ATA

|1..n1..n

|

0..n0..n

dete lem

nam e : IDclassID : C D ATA = 2type : (active | passive) = passive

<<D TD Elem ent>>

dete lem ref

classID : C D ATA = 2href : C D ATA

specificgeom etryin fo

lvnam e : C D ATAsupport : C D ATAnpath : C D ATArpath : C D ATA

#PC D ATA

userParam eter

type : C D ATA = doublenam e : C D ATAcom m ent : C D ATA

<<D TD Elem ent>>

#PC D ATA

userParam eterVector

type : C D ATA = doublenam e : C D ATAcom m ent : C D ATA

<<D TD Elem ent>>

#PC D ATA

author<<D TD Elem ent>>

|0..n0..n

#PC D ATA

version<<D TD Elem ent>>

2-28 Gaudi Advanced Tutorial, 2001

The LHCb Geometry DTD (1)The LHCb Geometry DTD (1)

D D D B

version : C D ATA = 3.2

<<D TD Elem ent>>

entry

x : C D ATAy : C D ATA

text : C D ATA

#PC D ATA

|

tabpropertyre f

href : C D ATAclassID : C D ATA = 1300

surfaceref

href : C D ATAclassID : C D ATA = 1110

logvolref

href : C D ATAclassID : C D ATA = 1100

param eter

nam e : C D ATAvalue : C D ATA

cata logref

classID : C D ATA = 3href : C D ATA

|

1..n1..n

tabproperty

nam e : IDclassID : C D ATA = 1300type : C D ATAxaxis : C D ATA = xAxisyaxis : C D ATA = yAxisxunit : C DATA = 1.0yunit : C DATA = 1.0

<<D TD Elem ent>>

0..n0..n

logvol

nam e : IDclassID : C D ATA = 1100m ateria l : C D ATAsensdet : C D ATAm agfie ld : CD ATA

<<D TD Elem ent>>

|

|

cata log

nam e : IDclassID : C D ATA = 3

<<D TD Elem ent>>

0..n0..n

surface

nam e : IDclassID : C D ATA = 1110m odel : C D ATAfin ish : C D ATAtype : C D ATAvalue : C D ATAvolfirs t : C D ATAvolsecond : C D ATA = \0

<<D TD Elem ent>>

tabprops

address : C D ATA

0..*0 ..*

2-29 Gaudi Advanced Tutorial, 2001

The LHCb Geometry DTD (2)The LHCb Geometry DTD (2)

posXYZ

x : C D ATAy : C D ATAz : C D ATA

posR PhiZ

r : C D ATAphi : C D ATAz : C D ATA

posRThPhi

r : C D ATAtheta : C D ATAphi : C D ATA

rotXYZ

rotX : C D ATArotY : C D ATArotZ : C D ATA

rotAxis

axTheta : C D ATAaxPhi : C D ATAangle : C D ATA

|

|

union

nam e : ID

<<D TD Elem ent>>

subtraction

nam e : ID

<<D TD Elem en...

in tersection

nam e : ID

<<D TD Elem en...

&

&nam e{1}

0...0 ...

{2}

transform ation<<D TD Elem en...

&

box

nam e : IDsizeX : C D ATAsizeY : C D ATAsizeZ : C D ATA

trap

nam e : IDsizeZ : C D ATAtheta : C D ATA

phi : C D ATAsizeY 1 : C D ATAsizeX 1 : C D ATAsizeX 2 : C D ATAalp1 : CD ATA

sizeY 2 : C D ATAsizeX 3 : C D ATAsizeX 4 : C D ATAalp2 : CD ATA

tubs

nam e : IDsizeZ : C D ATA

outerR adius : C D ATAinnerR adius : C D ATAstartPhiAngle : C D ATAdeltaP hiAngle : C D ATA

sphere

nam e : IDouterR adius : C D ATAinnerR adius : C D ATA

startPhiAngle : C D ATAdeltaP hiAngle : C D ATA

startThetaAngle : C D ATAdeltaThetaA ngle : C D ATA

&

{1}

1..*1..*{2}

|

{1}

|

{1}1..*1..*

{2}

surf

address : C D ATA logvol

nam e : IDclassID : C D ATA = 1100m ateria l : CD ATAsensdet : C D ATAm agfie ld : C D ATA

<<D TD Elem ent>>

&

0..10..1

{2} {1}

&

0..10..1

{1}

|

0..n0..n

{2}

physvo l

nam e : IDlogvol : C D ATA

<<D TD Elem en...

0 ..10..1

param physvol

num ber : C D ATA

<<D TD Elem en...

{2}

param physvol2D

num ber1 : C D ATAnum ber2 : C D ATA

<<D TD Elem ent>>

{2, 3}

param physvol3D

num ber1 : C D ATAnum ber2 : C D ATAnum ber3 : C D ATA

<<D TD Elem ent>>

{2, 3, 4}

|

{1}{1}

{1}

nam e

cons

nam e : IDsizeZ : C D ATA

outerR adiusP Z : C D ATAouterR adiusM Z : C D ATAinnerR adiusPZ : C D ATAinnerR adiusM Z : C D ATAstartPhiAngle : C D ATAdeltaP hiAngle : C D ATA

trd

nam e : IDsizeZ : C D ATAsizeX 1 : C D ATAsizeY 1 : C D ATAsizeX 2 : C D ATAsizeY 2 : C D ATA

2-30 Gaudi Advanced Tutorial, 2001

The LHCb Materials DTDThe LHCb Materials DTD

entry

x : C D ATAy : C D ATA

text : C D ATA

#PC D ATA

com ponent

nam e : C D ATAnatom s : C D ATA = -1

fractionm ass : C D ATA = -1

|

&

0..*{1}

0 ..*

tabpropertyre f

href : C D ATAclassID : C D ATA = 1300

m ateria lre f

href : C D ATAfractionm ass : C D ATA

classID : C D ATA = 1203cata logref

classID : C D ATA = 3href : C D ATA

elem entre f

href : C D ATAnatom s : C D ATA = -1

fractionm ass : C D ATA = -1classID : C D ATA = 1202

tabproperty

nam e : IDclassID : C D ATA = 1300type : C D ATAxaxis : C D ATA = xAxisyaxis : C D ATA = yAxisxunit : C D ATA = 1 .0yunit : C D ATA = 1 .0

<<D TD Elem ent>>

0..n0..n

e lem ent

nam e : IDsym bol : C D ATAdensity : C D ATAradlen : C D ATAlam bda : C D ATAtem perature : C D ATApressure : C D ATAsta te : (so lid | liqu id | gas | undefined) = undefined

<<D TD Elem ent>>

m ateria l

nam e : IDA eff : C D ATAZeff : C D ATAdensity : C D ATAradlen : C D ATAlam bda : C D ATAtem perature : C D ATApressure : C D ATAsta te : (so lid | liqu id | gas | undefined) = undefined

<<D TD Elem ent>>

|

m ateria ls

D TD _Vers ion : C D ATA = v5

<<D TD Elem ent>>

cata log

nam e : IDclassID : C D ATA = 3

<<D TD Elem ent>>

0..n0..n

param eter

nam e : C D ATAvalue : C D ATA

|

1..n1..n

|

tabprops

address : C D ATA

0..*

{2}

0 ..*

isotope

nam e : IDA : C D ATAZ : C D ATAN : C D ATAdensity : C D ATAradlen : C D ATAlam bda : C D ATAtem perature : C D ATApressure : C D ATAsta te : (so lid | liqu id | gas | undefined) = undefined

<<D TD Elem ent>>

atom

A : C D ATAZeff : C D ATA

&

0..*0 ..*

{2}

isotopere f

href : C D ATAfractionm ass : C D ATA

classID : C D ATA = 1201

|11

{1}

0 ..*0 ..*