Commit in projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0 on MAIN | |||
lcdd.xsd | +83 | added 3253 | |
lcdd_display.xsd | +83 | added 3253 | |
lcdd_fields.xsd | +226 | added 3253 | |
lcdd_header.xsd | +62 | added 3253 | |
lcdd_iddict.xsd | +51 | added 3253 | |
lcdd_limits.xsd | +49 | added 3253 | |
lcdd_regions.xsd | +40 | added 3253 | |
lcdd_sensitive_detectors.xsd | +240 | added 3253 | |
+834 |
Add LCDD 2.0 schema files being used for DD4hep development.
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE xs:schema > +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + version="1.0" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/" + xmlns:gdml="http://cern.ch/2001/Schemas/GDML" + xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:include schemaLocation="lcdd_header.xsd"/> + <xs:include schemaLocation="lcdd_sensitive_detectors.xsd"/> + <xs:include schemaLocation="lcdd_iddict.xsd"/> + <xs:include schemaLocation="lcdd_fields.xsd"/> + <xs:include schemaLocation="lcdd_limits.xsd"/> + <xs:include schemaLocation="lcdd_regions.xsd"/> + <xs:include schemaLocation="lcdd_display.xsd"/> + + <xs:redefine schemaLocation="http://www.lcsim.org/schemas/gdml/1.0/gdml.xsd"> + + <xs:annotation> + <xs:documentation> + Extend volume element to include field, SD and region references. + Extend physvol element to include a volume id. + </xs:documentation> + </xs:annotation> + + <xs:complexType name="VolumeType"> + <xs:complexContent> + <xs:extension base="VolumeType"> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="1" name="sdref" type="ReferenceType"/> + <xs:element minOccurs="0" maxOccurs="1" name="regionref" type="ReferenceType"/> + <xs:element minOccurs="0" maxOccurs="1" name="limitsetref" type="ReferenceType"/> + <xs:element minOccurs="0" maxOccurs="1" name="visref" type="ReferenceType" /> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="SinglePlacementType"> + <xs:complexContent> + <xs:extension base="SinglePlacementType"> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="unbounded" name="physvolid" type="PhysVolIdType"/> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + </xs:redefine> + + <xs:complexType name="PhysVolIdType"> + <xs:annotation> + <xs:documentation> + Assign an int ID to a physical volume. + </xs:documentation> + </xs:annotation> + <xs:attribute name="field_name" type="xs:string" use="optional" /> + <xs:attribute name="value" type="xs:string" use="required" /> + </xs:complexType> + + <xs:element name="lcdd"> + <xs:annotation> + <xs:documentation> + lcdd is the top-level element including the + gdml element plus a container element for + fields, SDs, regions and components. + </xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:sequence> + <xs:element ref="header" minOccurs="1"></xs:element> + <xs:element ref="iddict" minOccurs="0"></xs:element> + <xs:element ref="sensitive_detectors" minOccurs="0"></xs:element> + <xs:element ref="limits" minOccurs="0"></xs:element> + <xs:element ref="regions" minOccurs="0"></xs:element> + <xs:element ref="display" minOccurs="0"></xs:element> + <xs:element ref="gdml" minOccurs="1"></xs:element> + <xs:element ref="fields" minOccurs="0"></xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + +</xs:schema>
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_display.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_display.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema> + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/" + xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:complexType name="ColorType"> + <xs:annotation> + <xs:documentation> + RGB color values for geometric data display. + </xs:documentation> + </xs:annotation> + <xs:attribute name="R" type="xs:double" default="1.0"/> + <xs:attribute name="G" type="xs:double" default="1.0"/> + <xs:attribute name="B" type="xs:double" default="1.0"/> + <xs:attribute name="alpha" type="xs:double" default="1.0" /> + </xs:complexType> + + <xs:complexType name="VisType"> + <xs:annotation> + <xs:documentation> + Element to represent capabilities of G4VisAttributes class. + </xs:documentation> + </xs:annotation> + <xs:all> + <xs:element name="color" type="ColorType" maxOccurs="1"/> + </xs:all> + + <xs:attribute name="name" type="xs:ID"/> + <xs:attribute name="visible" type="xs:boolean" default="true"/> + <xs:attribute name="show_daughters" type="xs:boolean" default="true"/> + + <xs:attribute name="line_style"> + <xs:annotation> + <xs:documentation> + The line style of the volume. + Valid values are unbroken, dashed, and dotted. + </xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="unbroken"/> + <xs:enumeration value="dashed"/> + <xs:enumeration value="dotted"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="drawing_style"> + <xs:annotation> + <xs:documentation> + The draw style of the volume. + Valid values are wireframe or solid. + </xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="wireframe"/> + <xs:enumeration value="solid"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + </xs:complexType> + + <xs:complexType name="DisplayType"> + <xs:annotation> + <xs:documentation> + Visualization container element. + </xs:documentation> + </xs:annotation> + + <xs:sequence> + <xs:element name="vis" minOccurs="0" maxOccurs="unbounded" type="VisType" /> + </xs:sequence> + + </xs:complexType> + + <xs:element name="display" type="DisplayType"/> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_fields.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_fields.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,226 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + version="1.0" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/" + xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:complexType name="FieldsType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="field" /> + <xs:element name="global_field" minOccurs="0" maxOccurs="1" type="GlobalFieldType" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="fields" type="FieldsType"> + </xs:element> + + <xs:complexType name="GlobalFieldType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="fieldref" minOccurs="1" maxOccurs="unbounded" type="ReferenceType" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="FieldType"> + <xs:attribute name="name" type="xs:ID"/> + <xs:attribute default="tesla" name="funit" type="xs:string"/> + <xs:attribute default="mm" name="lunit" type="xs:string" /> + </xs:complexType> + + <xs:element name="field" type="FieldType"> + </xs:element> + + <xs:complexType name="SolenoidType"> + <xs:annotation> + <xs:documentation> + Solenoid with z min/max, radius min/max, strength + and units. lunit is for z and radius (mm). funit is + the unit for the field strength (Tesla). + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldType"> + <xs:attribute name="inner_field" type="xs:string" /> + <xs:attribute name="outer_field" type="xs:string" /> + <xs:attribute name="zmin" type="xs:string" /> + <xs:attribute name="zmax" type="xs:string" /> + <xs:attribute name="inner_radius" type="xs:string" /> + <xs:attribute name="outer_radius" type="xs:string" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:element name="solenoid" substitutionGroup="field" type="SolenoidType"> + <xs:annotation> + <xs:documentation> + Solenoidal field element + </xs:documentation> + </xs:annotation> + </xs:element> + + <xs:complexType name="DipoleType"> + <xs:annotation> + <xs:documentation> + Dipole field using simple polynomial fit with a variable number of coefficients. + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldType"> + <xs:sequence> + <xs:element name="dipole_coeff" minOccurs="1" maxOccurs="unbounded"> + <xs:complexType> + <xs:attribute name="value" type="xs:double" use="required"/> + </xs:complexType> + </xs:element> + </xs:sequence> + <xs:attribute name="zmin" type="xs:double" /> + <xs:attribute name="zmax" type="xs:double" /> + <xs:attribute name="rmax" type="xs:double" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:element name="dipole" substitutionGroup="field" type="DipoleType"> + <xs:annotation> + <xs:documentation> + Dipole field element. + </xs:documentation> + </xs:annotation> + </xs:element> + + <xs:complexType name="FieldMapType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldType"> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="RZBType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:attribute name="r" type="xs:double"/> + <xs:attribute name="z" type="xs:double"/> + <xs:attribute name="Br" type="xs:double"/> + <xs:attribute name="Bz" type="xs:double"/> + </xs:complexType> + + <xs:complexType name="RZFieldMapType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldMapType"> + + <xs:sequence> + <xs:element name="rzB" type="RZBType" minOccurs="2" maxOccurs="unbounded" /> + </xs:sequence> + + <xs:attribute name="num_bins_r"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="2"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="num_bins_z"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="2"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="grid_size_r"> + <xs:simpleType> + <xs:restriction base="xs:double"> + <xs:minExclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="grid_size_z"> + <xs:simpleType> + <xs:restriction base="xs:double"> + <xs:minExclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:element name="rz_field_map" substitutionGroup="field" type="RZFieldMapType"> + <xs:annotation> + <xs:documentation> + An RZ field map element. + </xs:documentation> + </xs:annotation> + </xs:element> + + <xs:complexType name="BoxDipoleType"> + <xs:annotation> + <xs:documentation> + A simple generic dipole field with settable B-field in x, y, and z, within a positioned box region. + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldType"> + <xs:attribute name="dx" type="xs:double" use="required" /> + <xs:attribute name="dy" type="xs:double" use="required" /> + <xs:attribute name="dz" type="xs:double" use="required" /> + <xs:attribute name="x" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="y" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="z" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="bx" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="by" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="bz" type="xs:double" use="optional" default="0.0" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:element name="box_dipole" substitutionGroup="field" type="BoxDipoleType"> + <xs:annotation> + <xs:documentation> + A box dipole element. + </xs:documentation> + </xs:annotation> + </xs:element> + + <xs:complexType name="FieldMap3DType"> + <xs:annotation> + <xs:documentation> + Full 3D Cartesian field map described in external file + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="FieldType"> + <xs:attribute name="filename" type="xs:string" /> + <xs:attribute name="xoffset" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="yoffset" type="xs:double" use="optional" default="0.0" /> + <xs:attribute name="zoffset" type="xs:double" use="optional" default="0.0" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:element name="field_map_3d" substitutionGroup="field" type="FieldMap3DType"/> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_header.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_header.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/"> + + <!--XS timestamp format: CCYY-MM-DDTHH:mm:SS--> + + <xs:complexType name="HeaderType"> + <xs:annotation> + <xs:documentation> + Header element for LCDD file. + </xs:documentation> + </xs:annotation> + + <xs:all> + <xs:element name="detector" type="DetectorType" minOccurs="1" maxOccurs="1" /> + <xs:element name="author" type="AuthorType" minOccurs="0" maxOccurs="1" /> + <xs:element name="generator" type="GeneratorType" minOccurs="0" maxOccurs="1" /> + <xs:element name="comment" type="xs:string" minOccurs="0" maxOccurs="1" /> + </xs:all> + + </xs:complexType> + + <xs:complexType name="DetectorType"> + <xs:annotation> + <xs:documentation> + Detector header element. + </xs:documentation> + </xs:annotation> + <xs:attribute name="name" type="xs:string" /> + <xs:attribute name="version" type="xs:string" default="1.0" /> + <xs:attribute name="url" type="xs:anyURI" default="http://www.example.com"/> + </xs:complexType> + + <xs:complexType name="AuthorType"> + <xs:annotation> + <xs:documentation> + Info on author of this file. + </xs:documentation> + </xs:annotation> + <xs:attribute name="name" type="xs:string" /> + <xs:attribute name="email" type="xs:string" /> + </xs:complexType> + + <xs:complexType name="GeneratorType"> + <xs:annotation> + <xs:documentation> + Info on script or compact generator of this file. + </xs:documentation> + </xs:annotation> + <xs:attribute name="name" type="xs:string" default="NONE" /> + <xs:attribute name="version" type="xs:string" default="1.0" /> + <xs:attribute name="file" type="xs:string" default="NONE" /> + <xs:attribute name="checksum" type="xs:unsignedInt" default="0" /> + </xs:complexType> + + <xs:element name="header" type="HeaderType" /> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_iddict.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_iddict.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/"> + + <xs:complexType name="IdSpecType"> + <xs:annotation> + <xs:documentation> + Id specification for a full cell id. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element minOccurs="1" maxOccurs="unbounded" ref="idfield"/> + </xs:sequence> + <xs:attribute name="name" type="xs:ID" use="required"/> + <xs:attribute name="length" type="xs:double" use="required"/> + </xs:complexType> + + <xs:element abstract="false" name="idspec" type="IdSpecType"/> + + <xs:complexType name="IdFieldType"> + <xs:annotation> + <xs:documentation> + Id field for one logical portion of an id, interprettable as a single int. + </xs:documentation> + </xs:annotation> + <xs:attribute name="label" type="xs:string" use="required"/> + <xs:attribute name="start" type="xs:int" use="required"/> + <xs:attribute name="length" type="xs:int" use="required"/> + <xs:attribute name="signed" type="xs:boolean" default="false"/> + </xs:complexType> + + <xs:element abstract="false" name="idfield" type="IdFieldType" /> + + <xs:complexType name="IdDictType"> + <xs:annotation> + <xs:documentation> + Id Dictionary for this detector containg specifications for cell ids. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="idspec"/> + </xs:sequence> + </xs:complexType> + + <xs:element name="iddict" type="IdDictType"/> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_limits.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_limits.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/"> + + <xs:complexType name="LimitParamType"> + <xs:annotation> + <xs:documentation> + A single Geant4 user limit parameter such as max track length. + </xs:documentation> + </xs:annotation> + <xs:attribute name="name" type="xs:string" use="required" /> + <xs:attribute name="value" type="xs:double" use="required" /> + <xs:attribute name="unit" type="xs:string" use="required" /> + <xs:attribute name="particles" type="xs:string" default="*"/> + </xs:complexType> + + <xs:element name="limit" type="LimitParamType" /> + + <xs:complexType name="LimitSetType"> + <xs:annotation> + <xs:documentation> + A named set of Geant4 user limit parameters. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element ref="limit" minOccurs="1" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attribute name="name" type="xs:ID" /> + </xs:complexType> + + <xs:element name="limitset" type="LimitSetType" /> + + <xs:complexType name="UserLimitsType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element ref="limitset" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="limits" type="UserLimitsType" /> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_regions.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_regions.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > + +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/"> + + <xs:include schemaLocation="lcdd_limits.xsd" /> + + <xs:complexType name="RegionsType"> + <xs:annotation> + <xs:documentation> + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="region" minOccurs="0" maxOccurs="unbounded" type="RegionType" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="regions" type="RegionsType"> + </xs:element> + + <xs:complexType name="RegionType"> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="1" name="limitsetref" type="ReferenceType" /> + </xs:sequence> + <xs:attribute name="name" type="xs:ID" use="required"/> + <xs:attribute name="store_secondaries" default="false" type="xs:boolean" /> + <xs:attribute name="kill_tracks" default="false" type="xs:boolean" /> + <xs:attribute name="cut" default="1.0" type="xs:double"/> + <xs:attribute name="lunit" default="mm" type="xs:string"/> + <xs:attribute name="threshold" default="1.0" type="xs:double" /> + <xs:attribute name="eunit" default="MeV" type="xs:string"/> + </xs:complexType> + + <xs:element name="region" type="RegionType"> + </xs:element> + +</xs:schema>
\ No newline at end of file
--- projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_sensitive_detectors.xsd (rev 0) +++ projects/lcdd/branches/v05-00-00-dev/schemas/lcdd/2.0/lcdd_sensitive_detectors.xsd 2014-08-11 22:58:56 UTC (rev 3253) @@ -0,0 +1,240 @@
+<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE xs:schema > +<xs:schema attributeFormDefault="unqualified" + elementFormDefault="unqualified" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:lcdd="http://www.lcsim.org/schemas/lcdd/2.0/"> + <xs:complexType name="HitProcessorType"> + <xs:attribute name="type" type="xs:string" use="required"/> + <xs:attribute name="collection_name" type="xs:string" use="optional"/> + </xs:complexType> + <xs:complexType name="SensitiveDetectorType"> + <xs:annotation> + <xs:documentation> + Sensitive detector type with a name, ID, and hits collection + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="1" name="idspecref" type="ReferenceType" /> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:element name="hit_processor" type="HitProcessorType" /> + </xs:choice> + </xs:sequence> + <xs:attribute name="name" type="xs:ID" use="required" /> + <xs:attribute name="hits_collection" type="xs:string" /> + <xs:attribute name="endcap_flag" type="xs:boolean" default="false" /> + <xs:attribute name="ecut" type="xs:double" default="0.0" /> + <xs:attribute name="eunit" type="xs:string" default="MeV" /> + <xs:attribute name="verbose"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="0"/> + <xs:maxInclusive value="2"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:complexType> + <xs:element abstract="true" name="sd" type="SensitiveDetectorType"> + <xs:annotation> + <xs:documentation> + Abstract sensitive detector element for group substitution + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="SensitiveDetectorsType"> + <xs:annotation> + <xs:documentation> + Sensitive detector container type + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="sd" /> + </xs:sequence> + </xs:complexType> + <xs:element name="sensitive_detectors" type="SensitiveDetectorsType"> + <xs:annotation> + <xs:documentation> + SD container element + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="CalorimeterType"> + <xs:annotation> + <xs:documentation> + Calorimeter SD type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SensitiveDetectorType"> + <xs:sequence> + <xs:element minOccurs="0" maxOccurs="1" ref="segmentation"/> + </xs:sequence> + <xs:attribute name="hit_aggregation" default="id"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="id" /> + <xs:enumeration value="position" /> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="calorimeter" substitutionGroup="sd" type="CalorimeterType"> + <xs:annotation> + <xs:documentation> + Calorimeter SD element + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="TrackerType"> + <xs:annotation> + <xs:documentation> + Tracker SD type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SensitiveDetectorType"> + <xs:attribute name="combine_hits" type="xs:boolean" default="false" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="tracker" substitutionGroup="sd" type="TrackerType"> + <xs:annotation> + <xs:documentation> + Tracker SD element + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="SegmentationType"> + <xs:annotation> + <xs:documentation> + Base segmentation type + </xs:documentation> + </xs:annotation> + </xs:complexType> + <xs:element abstract="true" name="segmentation" type="SegmentationType"> + <xs:annotation> + <xs:documentation> + Abstract segmentation type + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="NonprojectiveSegmentationType"> + <xs:annotation> + <xs:documentation> + Nonprojective segmentation type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="grid_size_x" type="xs:double" use="required"/> + <xs:attribute name="grid_size_y" type="xs:double" use="required"/> + <xs:attribute name="grid_size_z" type="xs:double" use="required"/> + <xs:attribute default="mm" name="lunit" type="xs:string"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:complexType name="CellReadout2DSegmentationType"> + <xs:annotation> + <xs:documentation> + CellReadout2D segmentation type. + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="cell_size_x" type="xs:double" use="required"/> + <xs:attribute name="cell_size_y" type="xs:double" use="required"/> + <xs:attribute default="mm" name="lunit" type="xs:string"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="cell_readout_2d" substitutionGroup="segmentation" type="CellReadout2DSegmentationType"> + <xs:annotation> + <xs:documentation> + Cell Readout 2D type + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="grid_xyz" substitutionGroup="segmentation" type="NonprojectiveSegmentationType"> + <xs:annotation> + <xs:documentation> + Grid XYZ type + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="GlobalGridXYSegmentationType"> + <xs:annotation> + <xs:documentation> + Global grid XY type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="grid_size_x" type="xs:double" use="required"/> + <xs:attribute name="grid_size_y" type="xs:double" use="required"/> + <xs:attribute default="mm" name="lunit" type="xs:string"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="global_grid_xy" substitutionGroup="segmentation" type="GlobalGridXYSegmentationType"> + <xs:annotation> + <xs:documentation> + Global grid XY element + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ProjectiveCylinderSegmentationType"> + <xs:annotation> + <xs:documentation> + Projective segmentation type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="ntheta" type="xs:int" use="required" /> + <xs:attribute name="nphi" type="xs:int" use="required" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="projective_cylinder" substitutionGroup="segmentation" type="ProjectiveCylinderSegmentationType"> + <xs:annotation> + <xs:documentation> + Projective segmentation element + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="ProjectiveZPlaneSegmentationType"> + <xs:annotation> + <xs:documentation> + Projective ZPlane segmentation type + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="ntheta" type="xs:int" use="required" /> + <xs:attribute name="nphi" type="xs:int" use="required" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="projective_zplane" substitutionGroup="segmentation" type="ProjectiveZPlaneSegmentationType"> + <xs:annotation> + <xs:documentation> + Projective ZPlane segmentation element + </xs:documentation> + </xs:annotation> + </xs:element> + + <!-- Definitions for DDSegmentation types. --> + <xs:complexType name="CartesianGridXYType"> + <xs:complexContent> + <xs:extension base="SegmentationType"> + <xs:attribute name="grid_size_x" type="xs:double" use="required"/> + <xs:attribute name="grid_size_y" type="xs:double" use="required"/> + <xs:attribute name="offset_x" type="xs:double" default="0.0"/> + <xs:attribute name="offset_y" type="xs:double" default="0.0"/> + </xs:extension> + </xs:complexContent> + </xs:complexType> + <xs:element name="cartesian_grid_xy" substitutionGroup="segmentation" type="CartesianGridXYType"/> +</xs:schema>
\ No newline at end of file
Use REPLY-ALL to reply to list
To unsubscribe from the LCDET-SVN list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCDET-SVN&A=1