Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/persistency/gdml/schema/gdml.xsd

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /persistency/gdml/schema/gdml.xsd (Version 11.3.0) and /persistency/gdml/schema/gdml.xsd (Version 11.2.1)


  1 <?xml version="1.0" encoding="UTF-8"?>              1 <?xml version="1.0" encoding="UTF-8"?>
  2 <xs:schema attributeFormDefault="unqualified"  <<   2 <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" version="1.0" xmlns:gdml="http://service-spi.web.cern.ch/service-spi/app/releases/GDML/schema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  3   <xs:include schemaLocation="gdml_core.xsd"/>      3   <xs:include schemaLocation="gdml_core.xsd"/>
  4   <xs:include schemaLocation="gdml_define.xsd"      4   <xs:include schemaLocation="gdml_define.xsd"/>
  5   <xs:include schemaLocation="gdml_materials.x      5   <xs:include schemaLocation="gdml_materials.xsd"/>
  6   <xs:include schemaLocation="gdml_solids.xsd"      6   <xs:include schemaLocation="gdml_solids.xsd"/>
  7   <xs:include schemaLocation="gdml_replicas.xs      7   <xs:include schemaLocation="gdml_replicas.xsd"/>
  8   <xs:include schemaLocation="gdml_parameteris      8   <xs:include schemaLocation="gdml_parameterised.xsd"/>
  9   <xs:include schemaLocation="gdml_extensions.      9   <xs:include schemaLocation="gdml_extensions.xsd"/>
 10   <!-- +++++++++++++++++++++++++++++++++++++++     10   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 11   <xs:complexType abstract="true" name="Identi     11   <xs:complexType abstract="true" name="IdentifiableVolumeType">
 12     <xs:attribute name="name" type="xs:ID" use     12     <xs:attribute name="name" type="xs:ID" use="required"/>
 13   </xs:complexType>                                13   </xs:complexType>
 14   <!-- +++++++++++++++++++++++++++++++++++++++     14   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 15   <xs:complexType name="SinglePlacementType">      15   <xs:complexType name="SinglePlacementType">
 16     <xs:annotation>                                16     <xs:annotation>
 17       <xs:documentation>Represents a single un     17       <xs:documentation>Represents a single unique copy a of an associated logical volume
 18         in geometrical hierarchy</xs:documenta     18         in geometrical hierarchy</xs:documentation>
 19     </xs:annotation>                               19     </xs:annotation>
 20     <xs:sequence>                                  20     <xs:sequence>
 21       <xs:choice minOccurs="1">                    21       <xs:choice minOccurs="1">
 22   <xs:element name="file" type="FileReferenceT     22   <xs:element name="file" type="FileReferenceType"/>
 23   <xs:element name="volumeref" type="Reference     23   <xs:element name="volumeref" type="ReferenceType"/>
 24       </xs:choice>                                 24       </xs:choice>      
 25       <xs:choice minOccurs="0">                    25       <xs:choice minOccurs="0">
 26   <xs:element name="position" type="positionTy     26   <xs:element name="position" type="positionType"/>
 27   <xs:element name="positionref" type="Referen     27   <xs:element name="positionref" type="ReferenceType"/>
 28       </xs:choice>                                 28       </xs:choice>
 29       <xs:choice minOccurs="0">                    29       <xs:choice minOccurs="0">
 30   <xs:element name="rotation" type="rotationTy     30   <xs:element name="rotation" type="rotationType"/>
 31   <xs:element name="rotationref" type="Referen     31   <xs:element name="rotationref" type="ReferenceType"/>
 32       </xs:choice>                                 32       </xs:choice>
 33       <xs:choice minOccurs="0">                    33       <xs:choice minOccurs="0">
 34   <xs:element name="scale" type="scaleType"/>      34   <xs:element name="scale" type="scaleType"/>
 35   <xs:element name="scaleref" type="ReferenceT     35   <xs:element name="scaleref" type="ReferenceType"/>
 36       </xs:choice>                                 36       </xs:choice>
 37     </xs:sequence>                                 37     </xs:sequence>
 38     <xs:attribute name="name" type="xs:ID"></x     38     <xs:attribute name="name" type="xs:ID"></xs:attribute>
 39     <xs:attribute name="copynumber" type="xs:i     39     <xs:attribute name="copynumber" type="xs:integer"/>
 40   </xs:complexType>                                40   </xs:complexType>
 41   <!-- +++++++++++++++++++++++++++++++++++++++     41   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 42   <xs:complexType name="DivisionPlacementType"     42   <xs:complexType name="DivisionPlacementType">
 43     <xs:annotation>                                43     <xs:annotation>
 44       <xs:documentation>Represents a division      44       <xs:documentation>Represents a division of the associated logical volume
 45         in geometrical hierarchy</xs:documenta     45         in geometrical hierarchy</xs:documentation>
 46     </xs:annotation>                               46     </xs:annotation>
 47     <xs:sequence>                                  47     <xs:sequence>
 48       <xs:element name="volumeref" type="Refer     48       <xs:element name="volumeref" type="ReferenceType"/>
 49     </xs:sequence>                                 49     </xs:sequence>
 50     <xs:attribute name="axis" type="xs:string"     50     <xs:attribute name="axis" type="xs:string" use="required"></xs:attribute>
 51     <xs:attribute name="number" type="Expressi     51     <xs:attribute name="number" type="ExpressionOrIDREFType" use="required"></xs:attribute>
 52     <xs:attribute name="width" type="Expressio     52     <xs:attribute name="width" type="ExpressionOrIDREFType" use="required"></xs:attribute>
 53     <xs:attribute name="offset" type="Expressi     53     <xs:attribute name="offset" type="ExpressionOrIDREFType" use="required"></xs:attribute>
 54     <xs:attribute default="mm" name="unit" typ     54     <xs:attribute default="mm" name="unit" type="xs:string"></xs:attribute>
 55   </xs:complexType>                                55   </xs:complexType>
 56   <!-- +++++++++++++++++++++++++++++++++++++++     56   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 57   <xs:complexType name="VolumeType">               57   <xs:complexType name="VolumeType">
 58     <xs:annotation>                                58     <xs:annotation>
 59       <xs:documentation>Represents a top of a      59       <xs:documentation>Represents a top of a geometrical sub-hierarchy not placed in space
 60         None of its children can coincide with     60         None of its children can coincide with its boundary defined by an associated solid
 61         Two different placements of the same l     61         Two different placements of the same logical volume represent two different geometrical
 62         hierarchies in space</xs:documentation     62         hierarchies in space</xs:documentation>
 63     </xs:annotation>                               63     </xs:annotation>
 64     <xs:complexContent>                            64     <xs:complexContent>
 65       <xs:extension base="IdentifiableVolumeTy     65       <xs:extension base="IdentifiableVolumeType">
 66   <xs:sequence>                                    66   <xs:sequence>
 67     <xs:element name="materialref" type="Refer     67     <xs:element name="materialref" type="ReferenceType"/>
 68     <xs:element name="solidref" type="Referenc     68     <xs:element name="solidref" type="ReferenceType"/>    
 69     <xs:choice minOccurs="0">                      69     <xs:choice minOccurs="0">     
 70       <xs:element maxOccurs="unbounded" name="     70       <xs:element maxOccurs="unbounded" name="physvol" type="SinglePlacementType"/>
 71       <xs:element maxOccurs="1" minOccurs="1"      71       <xs:element maxOccurs="1" minOccurs="1" name="divisionvol" type="DivisionPlacementType"/>
 72       <xs:element maxOccurs="1" minOccurs="1"      72       <xs:element maxOccurs="1" minOccurs="1" ref="replicavol"/>
 73       <xs:element maxOccurs="1" minOccurs="1"      73       <xs:element maxOccurs="1" minOccurs="1" name="paramvol" type="ParameterisedPlacementType"/>
 74     </xs:choice>                                   74     </xs:choice>
 75     <xs:element maxOccurs="unbounded" minOccur     75     <xs:element maxOccurs="unbounded" minOccurs="0" ref="loop"/>
 76     <xs:element name="auxiliary" maxOccurs="un     76     <xs:element name="auxiliary" maxOccurs="unbounded" minOccurs="0" type="AuxiliaryType"/>
 77   </xs:sequence>                                   77   </xs:sequence>
 78       </xs:extension>                              78       </xs:extension>
 79     </xs:complexContent>                           79     </xs:complexContent>
 80   </xs:complexType>                                80   </xs:complexType>
 81   <!-- +++++++++++++++++++++++++++++++++++++++     81   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
 82   <xs:complexType name="AssemblyVolumeType">       82   <xs:complexType name="AssemblyVolumeType">
 83     <xs:annotation>                                83     <xs:annotation>
 84       <xs:documentation>Allows to create a gro     84       <xs:documentation>Allows to create a group of volumes bound together without a boundary
 85         All the volumes exits inside the same      85         All the volumes exits inside the same virtual reference system of the assmebly volume
 86         they belong to                             86         they belong to
 87         When assembly volume is placed all its     87         When assembly volume is placed all its children follow the global transformation applied
 88         to their assembly volume                   88         to their assembly volume
 89         After the assembly volume is placed it     89         After the assembly volume is placed its children exist as standalone placements in space
 90         independent of each other</xs:document     90         independent of each other</xs:documentation>
 91     </xs:annotation>                               91     </xs:annotation>
 92     <xs:complexContent>                            92     <xs:complexContent>
 93       <xs:extension base="IdentifiableVolumeTy     93       <xs:extension base="IdentifiableVolumeType">
 94   <xs:choice>                                      94   <xs:choice>
 95     <xs:element maxOccurs="unbounded" name="ph     95     <xs:element maxOccurs="unbounded" name="physvol" type="SinglePlacementType"/>
 96     <xs:element maxOccurs="1" minOccurs="1" re     96     <xs:element maxOccurs="1" minOccurs="1" ref="replicavol"/>
 97     <xs:element maxOccurs="1" minOccurs="1" na     97     <xs:element maxOccurs="1" minOccurs="1" name="paramvol" type="ParameterisedPlacementType"/>
 98   </xs:choice>                                     98   </xs:choice>
 99       </xs:extension>                              99       </xs:extension>
100     </xs:complexContent>                          100     </xs:complexContent>
101   </xs:complexType>                               101   </xs:complexType>
102   <!-- +++++++++++++++++++++++++++++++++++++++    102   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
103   <xs:complexType name="LogicalSurfaceType">      103   <xs:complexType name="LogicalSurfaceType">
104     <xs:annotation>                               104     <xs:annotation>
105       <xs:documentation>Base type for logical     105       <xs:documentation>Base type for logical surfaces (for the moment only optical)
106       </xs:documentation>                         106       </xs:documentation>
107     </xs:annotation>                              107     </xs:annotation>
108     <xs:attribute name="name" type="xs:ID" use    108     <xs:attribute name="name" type="xs:ID" use="required"></xs:attribute>
109     <xs:attribute name="surfaceproperty" type=    109     <xs:attribute name="surfaceproperty" type="ExpressionOrIDREFType" use="required"></xs:attribute>
110   </xs:complexType>                               110   </xs:complexType>
111   <!-- +++++++++++++++++++++++++++++++++++++++    111   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
112   <xs:element abstract="true" name="Surface" t    112   <xs:element abstract="true" name="Surface" type="LogicalSurfaceType">
113     <xs:annotation>                               113     <xs:annotation>
114       <xs:documentation>Abstract element for a    114       <xs:documentation>Abstract element for all solids substitution group</xs:documentation>
115     </xs:annotation>                              115     </xs:annotation>
116   </xs:element>                                   116   </xs:element>
117   <!-- +++++++++++++++++++++++++++++++++++++++    117   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
118   <xs:element name="bordersurface" substitutio    118   <xs:element name="bordersurface" substitutionGroup="Surface">
119     <xs:annotation>                               119     <xs:annotation>
120       <xs:documentation>Surface between two ph    120       <xs:documentation>Surface between two physical volumes</xs:documentation>
121     </xs:annotation>                              121     </xs:annotation>
122       <xs:complexType>                            122       <xs:complexType>
123       <xs:complexContent>                         123       <xs:complexContent>
124   <xs:extension base="LogicalSurfaceType">        124   <xs:extension base="LogicalSurfaceType">
125    <xs:sequence>                                  125    <xs:sequence>
126     <xs:element name="physvolref" type="Refere    126     <xs:element name="physvolref" type="ReferenceType"/>
127     <xs:element name="physvolref" type="Refere    127     <xs:element name="physvolref" type="ReferenceType"/>
128    </xs:sequence>                                 128    </xs:sequence>
129   </xs:extension>                                 129   </xs:extension>
130       </xs:complexContent>                        130       </xs:complexContent>
131      </xs:complexType>                            131      </xs:complexType>
132   </xs:element>                                   132   </xs:element>
133   <!-- +++++++++++++++++++++++++++++++++++++++    133   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
134   <xs:element name="skinsurface" substitutionG    134   <xs:element name="skinsurface" substitutionGroup="Surface">
135     <xs:annotation>                               135     <xs:annotation>
136       <xs:documentation>Surface between two ph    136       <xs:documentation>Surface between two physical volumes</xs:documentation>
137     </xs:annotation>                              137     </xs:annotation>
138      <xs:complexType>                             138      <xs:complexType>
139       <xs:complexContent>                         139       <xs:complexContent>
140   <xs:extension base="LogicalSurfaceType">        140   <xs:extension base="LogicalSurfaceType">
141     <xs:sequence>                                 141     <xs:sequence>
142              <xs:element name="volumeref" type    142              <xs:element name="volumeref" type="ReferenceType"/>
143     </xs:sequence>                                143     </xs:sequence>
144   </xs:extension>                                 144   </xs:extension>
145       </xs:complexContent>                        145       </xs:complexContent>
146      </xs:complexType>                            146      </xs:complexType>
147   </xs:element>                                   147   </xs:element>
148   <!-- +++++++++++++++++++++++++++++++++++++++    148   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
149   <xs:element name="structure">                   149   <xs:element name="structure">
150     <xs:annotation>                               150     <xs:annotation>
151       <xs:documentation>Definitions of a geome    151       <xs:documentation>Definitions of a geometrical hierarchy of a set of volumes</xs:documentation>
152     </xs:annotation>                              152     </xs:annotation>
153     <xs:complexType>                              153     <xs:complexType>
154       <xs:sequence>                               154       <xs:sequence>
155   <xs:choice maxOccurs="unbounded">               155   <xs:choice maxOccurs="unbounded">
156     <xs:element name="volume" type="VolumeType    156     <xs:element name="volume" type="VolumeType"/>
157     <xs:element name="assembly" type="Assembly    157     <xs:element name="assembly" type="AssemblyVolumeType"/>
158     <xs:element maxOccurs="unbounded" minOccur    158     <xs:element maxOccurs="unbounded" minOccurs="0" ref="loop"/>
159     <xs:element ref="ParameterisationAlgorithm    159     <xs:element ref="ParameterisationAlgorithm"/>
160   </xs:choice>                                    160   </xs:choice>
161   <xs:element minOccurs="0" maxOccurs="unbound    161   <xs:element minOccurs="0" maxOccurs="unbounded" ref="Surface"/>
162       </xs:sequence>                              162       </xs:sequence>
163     </xs:complexType>                             163     </xs:complexType>
164   </xs:element>                                   164   </xs:element>
165   <!-- +++++++++++++++++++++++++++++++++++++++    165   <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
166   <xs:element name="gdml">                        166   <xs:element name="gdml">
167     <xs:complexType>                              167     <xs:complexType>
168       <xs:sequence>                               168       <xs:sequence>
169   <xs:element ref="define"/>                      169   <xs:element ref="define"/>
170   <xs:element ref="materials"/>                   170   <xs:element ref="materials"/>
171   <xs:element ref="solids"/>                      171   <xs:element ref="solids"/>
172   <xs:element ref="structure"/>                   172   <xs:element ref="structure"/>
173   <xs:element minOccurs="0" maxOccurs="1" name    173   <xs:element minOccurs="0" maxOccurs="1" name="userinfo">
174     <xs:complexType>                              174     <xs:complexType>
175       <xs:sequence>                               175       <xs:sequence>
176         <xs:element maxOccurs="unbounded" minO    176         <xs:element maxOccurs="unbounded" minOccurs="0" name="auxiliary" type="AuxiliaryType"/>
177       </xs:sequence>                              177       </xs:sequence>
178     </xs:complexType>                             178     </xs:complexType>   
179   </xs:element>                                   179   </xs:element>
180                                                   180   
181   <xs:element maxOccurs="unbounded" name="setu    181   <xs:element maxOccurs="unbounded" name="setup">
182     <xs:annotation>                               182     <xs:annotation>
183       <xs:documentation>Geometry setup represe    183       <xs:documentation>Geometry setup representing the particular geometry hierarchy by refferring to
184               a given volume which becomes the    184               a given volume which becomes the top level volume</xs:documentation>
185     </xs:annotation>                              185     </xs:annotation>
186     <xs:complexType>                              186     <xs:complexType>
187       <xs:sequence>                               187       <xs:sequence>
188         <xs:element name="world" type="Referen    188         <xs:element name="world" type="ReferenceType">
189     <xs:annotation>                               189     <xs:annotation>
190       <xs:documentation>A reference to the pre    190       <xs:documentation>A reference to the previously defined volume
191                     in the structure block cho    191                     in the structure block chosen by this setup
192                     World volumme can't be an     192                     World volumme can't be an assembly volume</xs:documentation>
193     </xs:annotation>                              193     </xs:annotation>
194         </xs:element>                             194         </xs:element>
195       </xs:sequence>                              195       </xs:sequence>
196       <xs:attribute name="name" type="xs:ID" u    196       <xs:attribute name="name" type="xs:ID" use="required"/>
197       <xs:attribute name="version" type="xs:st    197       <xs:attribute name="version" type="xs:string" use="required"/>
198     </xs:complexType>                             198     </xs:complexType>
199   </xs:element>                                   199   </xs:element>
200       </xs:sequence>                              200       </xs:sequence>
201       <xs:attribute fixed="3.1.7" name="versio << 201       <xs:attribute fixed="3.1.6" name="version" type="xs:string">
202   <xs:annotation>                                 202   <xs:annotation>
203     <xs:documentation>The GDML Schema version     203     <xs:documentation>The GDML Schema version consists of 3 digits X.Y.Z
204             where these mean:                     204             where these mean:
205             X - major number, increased when m    205             X - major number, increased when major new
206             features or backward incompatible     206             features or backward incompatible bug fixes
207             are added and means the GDML Proce    207             are added and means the GDML Processor is
208             allowed to refuse processing of su    208             allowed to refuse processing of such a
209             document if this is using the more    209             document if this is using the more recent
210             version of the GDML Schema then GD    210             version of the GDML Schema then GDML Processor
211             understands                           211             understands 
212             Y - minor number, increased when i    212             Y - minor number, increased when incremental and
213             backward compatible changes or imp    213             backward compatible changes or improvements
214             are made into the GDML Schema. GDM    214             are made into the GDML Schema. GDML Processor
215             should be able to process such a d    215             should be able to process such a document
216             using higher minor version number     216             using higher minor version number then that of
217             the GDML Processor                    217             the GDML Processor
218             Z - bugfix revision number, increa    218             Z - bugfix revision number, increased when fully
219             backward compatible changes which     219             backward compatible changes which resolve a
220             problem in GDML Schema are applied    220             problem in GDML Schema are applied</xs:documentation>
221   </xs:annotation>                                221   </xs:annotation>
222       </xs:attribute>                             222       </xs:attribute>
223     </xs:complexType>                             223     </xs:complexType>
224   </xs:element>                                   224   </xs:element>
225 </xs:schema>                                      225 </xs:schema>