Skip to content

Commit

Permalink
ENA-5911
Browse files Browse the repository at this point in the history
- added new platforms VELA_DIAGNOSTICS, GENAPSYS, GENEMIND and TAPESTRI along with their instrument models.
  • Loading branch information
haseeb-gh committed Oct 6, 2023
1 parent 13f0fc9 commit 9d836ed
Show file tree
Hide file tree
Showing 4 changed files with 97 additions and 10 deletions.
6 changes: 2 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ plugins {

group = 'uk.ac.ebi.ena.sra'
archivesBaseName = 'webin-xml'
version = '2.0.0'
version = '2.1.0'

sourceCompatibility = 1.8
targetCompatibility = 1.8
Expand Down Expand Up @@ -93,9 +93,7 @@ task generateXMLBeanSources () {
}
}

compileGeneratedJava.dependsOn generateXMLBeanSources
compileTestJava.dependsOn compileGeneratedJava
jar.dependsOn compileGeneratedJava
compileJava.dependsOn generateXMLBeanSources
publish.dependsOn build

task classes (overwrite: true) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,21 @@
import uk.ac.ebi.ena.sra.xml.TypeCapillaryModel;
import uk.ac.ebi.ena.sra.xml.TypeDnbSeqModel;
import uk.ac.ebi.ena.sra.xml.TypeElementModel;
import uk.ac.ebi.ena.sra.xml.TypeGenapsysModel;
import uk.ac.ebi.ena.sra.xml.TypeGeneMindModel;
import uk.ac.ebi.ena.sra.xml.TypeHelicosModel;
import uk.ac.ebi.ena.sra.xml.TypeIlluminaModel;
import uk.ac.ebi.ena.sra.xml.TypeIontorrentModel;
import uk.ac.ebi.ena.sra.xml.TypeOxfordNanoporeModel;
import uk.ac.ebi.ena.sra.xml.TypePacBioModel;
import uk.ac.ebi.ena.sra.xml.TypeTapestriModel;
import uk.ac.ebi.ena.sra.xml.TypeUltimaModel;
import uk.ac.ebi.ena.sra.xml.TypeVelaDiagnosticsModel;

public class InstrumentModelEnumFixer extends EnumValueFixer {

public InstrumentModelEnumFixer() {
/** Any addition or removal of models in SRA.common.xsd should be reflected here. */
add(Type454Model.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeIlluminaModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeHelicosModel.Factory.newInstance().schemaType().getStringEnumEntries());
Expand All @@ -40,6 +45,10 @@ public InstrumentModelEnumFixer() {
add(TypeOxfordNanoporeModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeElementModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeUltimaModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeVelaDiagnosticsModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeGenapsysModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeGeneMindModel.Factory.newInstance().schemaType().getStringEnumEntries());
add(TypeTapestriModel.Factory.newInstance().schemaType().getStringEnumEntries());

add("none", "unspecified");
add("AB SOLiD System 3 Plus", "AB SOLiD 3 Plus System");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,20 @@
import uk.ac.ebi.ena.sra.xml.TypeCapillaryModel;
import uk.ac.ebi.ena.sra.xml.TypeDnbSeqModel;
import uk.ac.ebi.ena.sra.xml.TypeElementModel;
import uk.ac.ebi.ena.sra.xml.TypeGenapsysModel;
import uk.ac.ebi.ena.sra.xml.TypeGeneMindModel;
import uk.ac.ebi.ena.sra.xml.TypeHelicosModel;
import uk.ac.ebi.ena.sra.xml.TypeIlluminaModel;
import uk.ac.ebi.ena.sra.xml.TypeIontorrentModel;
import uk.ac.ebi.ena.sra.xml.TypeOxfordNanoporeModel;
import uk.ac.ebi.ena.sra.xml.TypePacBioModel;
import uk.ac.ebi.ena.sra.xml.TypeTapestriModel;
import uk.ac.ebi.ena.sra.xml.TypeUltimaModel;
import uk.ac.ebi.ena.sra.xml.TypeVelaDiagnosticsModel;

public class PlatformEnumFixer extends EnumValueFixer {
public PlatformEnumFixer() {

/** Any addition or removal of models in SRA.common.xsd should be reflected here. */
addValueList(Type454Model.Factory.newInstance().schemaType().getStringEnumEntries(), "LS454");
addValueList(
TypeIlluminaModel.Factory.newInstance().schemaType().getStringEnumEntries(), "ILLUMINA");
Expand Down Expand Up @@ -55,6 +59,15 @@ public PlatformEnumFixer() {
TypeElementModel.Factory.newInstance().schemaType().getStringEnumEntries(), "ELEMENT");
addValueList(
TypeUltimaModel.Factory.newInstance().schemaType().getStringEnumEntries(), "ULTIMA");
addValueList(
TypeVelaDiagnosticsModel.Factory.newInstance().schemaType().getStringEnumEntries(),
"VELA_DIAGNOSTICS");
addValueList(
TypeGenapsysModel.Factory.newInstance().schemaType().getStringEnumEntries(), "GENAPSYS");
addValueList(
TypeGeneMindModel.Factory.newInstance().schemaType().getStringEnumEntries(), "GENEMIND");
addValueList(
TypeTapestriModel.Factory.newInstance().schemaType().getStringEnumEntries(), "TAPESTRI");
}

private void addValueList(SchemaStringEnumEntry[] keys, String value) {
Expand Down
77 changes: 72 additions & 5 deletions src/main/resources/uk/ac/ebi/ena/sra/schema/SRA.common.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@
~ specific language governing permissions and limitations under the License.
-->

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:com="SRA.common"
targetNamespace="SRA.common">
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:com="SRA.common" targetNamespace="SRA.common">

<xs:complexType name="ObjectType">
<xs:sequence>
Expand Down Expand Up @@ -192,6 +191,7 @@
</xs:element>
</xs:sequence>
</xs:complexType>

<xs:complexType name="XRefType">
<xs:all>
<xs:element name="DB" type="xs:string" minOccurs="1" maxOccurs="1">
Expand Down Expand Up @@ -235,6 +235,7 @@
</xs:element>
</xs:all>
</xs:complexType>

<xs:complexType name="AttributeType">
<xs:annotation>
<xs:documentation>
Expand Down Expand Up @@ -334,7 +335,6 @@
</xs:choice>
</xs:complexType>


<xs:complexType name="SpotDescriptorType">
<xs:annotation>
<xs:documentation>
Expand Down Expand Up @@ -689,8 +689,41 @@
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="VELA_DIAGNOSTICS">
<xs:annotation>
<xs:documentation> semi-conductor based sequencing technology. </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="INSTRUMENT_MODEL" maxOccurs="1" minOccurs="1" type="com:typeVelaDiagnosticsModel"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GENAPSYS">
<xs:annotation>
<xs:documentation> Chip based electronic sensing of polymerase extension reaction </xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="INSTRUMENT_MODEL" maxOccurs="1" minOccurs="1" type="com:typeGenapsysModel"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="GENEMIND">
<xs:complexType>
<xs:sequence>
<xs:element name="INSTRUMENT_MODEL" maxOccurs="1" minOccurs="1" type="com:typeGeneMindModel"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TAPESTRI">
<xs:complexType>
<xs:sequence>
<xs:element name="INSTRUMENT_MODEL" maxOccurs="1" minOccurs="1" type="com:typeTapestriModel"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>

</xs:complexType>

<xs:complexType name="SequencingDirectivesType">
Expand Down Expand Up @@ -725,7 +758,6 @@
</xs:all>
</xs:complexType>


<xs:complexType name="PipelineType">
<xs:annotation>
<xs:documentation> The PipelineType identifies the sequence or tree of actions to
Expand Down Expand Up @@ -785,6 +817,7 @@
</xs:element>
</xs:sequence>
</xs:complexType>

<xs:complexType name="ReferenceAssemblyType">
<xs:annotation>
<xs:documentation>Reference assembly details.</xs:documentation>
Expand Down Expand Up @@ -852,6 +885,7 @@
</xs:element>
</xs:choice>
</xs:complexType>

<xs:complexType name="ReferenceSequenceType">
<xs:annotation>
<xs:documentation>Reference assembly and sequence details. </xs:documentation>
Expand Down Expand Up @@ -897,6 +931,7 @@
</xs:element>
</xs:sequence>
</xs:complexType>

<xs:complexType name="ProcessingType">
<xs:sequence>
<xs:element name="PIPELINE" type="com:PipelineType" minOccurs="0" maxOccurs="1">
Expand Down Expand Up @@ -1073,6 +1108,38 @@
</xs:restriction>
</xs:simpleType>

<xs:simpleType name="typeVelaDiagnosticsModel">
<xs:restriction base="xs:string">
<xs:enumeration value="Sentosa SQ301"/>
<xs:enumeration value="unspecified"/>
</xs:restriction>
</xs:simpleType>

<xs:simpleType name="typeGenapsysModel">
<xs:restriction base="xs:string">
<xs:enumeration value="GENIUS"/>
<xs:enumeration value="Genapsys Sequencer"/>
<xs:enumeration value="GS111"/>
<xs:enumeration value="unspecified"/>
</xs:restriction>
</xs:simpleType>

<xs:simpleType name="typeGeneMindModel">
<xs:restriction base="xs:string">
<xs:enumeration value="GenoCare 1600"/>
<xs:enumeration value="GenoLab M"/>
<xs:enumeration value="FASTASeq 300"/>
<xs:enumeration value="unspecified"/>
</xs:restriction>
</xs:simpleType>

<xs:simpleType name="typeTapestriModel">
<xs:restriction base="xs:string">
<xs:enumeration value="Tapestri"/>
<xs:enumeration value="unspecified"/>
</xs:restriction>
</xs:simpleType>

<!-- STRING ENUMERATIONS END -->

</xs:schema>

0 comments on commit 9d836ed

Please sign in to comment.