diff --git a/chemclipse/features/org.eclipse.chemclipse.msd.converter.supplier.mzml.feature/feature.xml b/chemclipse/features/org.eclipse.chemclipse.msd.converter.supplier.mzml.feature/feature.xml
index b67ddc07a1..ffaaa3f8d3 100644
--- a/chemclipse/features/org.eclipse.chemclipse.msd.converter.supplier.mzml.feature/feature.xml
+++ b/chemclipse/features/org.eclipse.chemclipse.msd.converter.supplier.mzml.feature/feature.xml
@@ -26,16 +26,22 @@
+ version="0.0.0"/>
+ version="0.0.0"/>
+
+
+
+
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF
index a6cb5f56de..13aea6d314 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Automatic-Module-Name: org.eclipse.chemclipse.msd.converter.supplier.mzml.ui
Bundle-ManifestVersion: 2
-Bundle-Name: mzML UI
+Bundle-Name: mzML MSD UI
Bundle-SymbolicName: org.eclipse.chemclipse.msd.converter.supplier.mzml.ui;singleton:=true
Bundle-Version: 0.9.0.qualifier
Bundle-Activator: org.eclipse.chemclipse.msd.converter.supplier.mzml.ui.Activator
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/ui/preferences/PreferencePage.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/ui/preferences/PreferencePage.java
index ef4f76183d..ad71a1659d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/ui/preferences/PreferencePage.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/ui/preferences/PreferencePage.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -29,6 +29,7 @@ public PreferencePage() {
setDescription("mzML Converter");
}
+ @Override
public void createFieldEditors() {
addField(new SpacerFieldEditor(getFieldEditorParent()));
@@ -36,6 +37,7 @@ public void createFieldEditors() {
addField(new BooleanFieldEditor(PreferenceSupplier.P_CHROMATOGRAM_SAVE_COMPRESSION, "Compress values", getFieldEditorParent()));
}
+ @Override
public void init(IWorkbench workbench) {
}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/META-INF/MANIFEST.MF
index d64c4d1502..4e1b29b8eb 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/META-INF/MANIFEST.MF
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/META-INF/MANIFEST.MF
@@ -15,14 +15,16 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.chemclipse.converter;bundle-version="0.8.0",
org.eclipse.chemclipse.model;bundle-version="0.8.0",
org.eclipse.chemclipse.support;bundle-version="0.8.0",
- org.apache.commons.commons-codec;bundle-version="1.15.0",
- org.eclipse.chemclipse.xxd.converter.supplier.mzml,
- org.apache.commons.lang3;bundle-version="3.13.0"
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml;bundle-version="0.9.0",
+ org.apache.commons.lang3
Bundle-RequiredExecutionEnvironment: JavaSE-17
Bundle-ActivationPolicy: lazy
Import-Package: jakarta.xml.bind,
jakarta.xml.bind.annotation,
jakarta.xml.bind.annotation.adapters
-Export-Package: org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.io,
- org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter,
- org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model
+Export-Package: org.eclipse.chemclipse.msd.converter.supplier.mzml,
+ org.eclipse.chemclipse.msd.converter.supplier.mzml.converter,
+ org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.io,
+ org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model,
+ org.eclipse.chemclipse.msd.converter.supplier.mzml.io,
+ org.eclipse.chemclipse.msd.converter.supplier.mzml.preferences
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/plugin.xml b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/plugin.xml
index bee9954c5f..e9867f266b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/plugin.xml
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/plugin.xml
@@ -7,11 +7,11 @@
description="Reads mzML Chromatograms"
exportConverter="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.ChromatogramExportConverter"
fileExtension=".mzML"
- filterName="mzML Chromatogram (*.mzML)"
+ filterName="MSD Chromatogram (*.mzML)"
id="org.eclipse.chemclipse.msd.converter.supplier.mzml"
importContentMatcher="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.ChromatogramFileContentMatcher"
importConverter="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.ChromatogramImportConverter"
- importMagicNumberMatcher="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.MagicNumberMatcher"
+ importMagicNumberMatcher="org.eclipse.chemclipse.xxd.converter.supplier.mzml.converter.MagicNumberMatcher"
isExportable="true"
isImportable="true">
@@ -26,7 +26,7 @@
id="org.eclipse.chemclipse.msd.converter.supplier.mzml.ms"
importContentMatcher="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.MassSpectrumFileContentMatcher"
importConverter="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.MassSpectrumImportConverter"
- importMagicNumberMatcher="org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.MagicNumberMatcher"
+ importMagicNumberMatcher="org.eclipse.chemclipse.xxd.converter.supplier.mzml.converter.MagicNumberMatcher"
isExportable="false"
isImportable="true">
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/PathResolver.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/PathResolver.java
index 6f8a74b052..39289ec19a 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/PathResolver.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/PathResolver.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2018 Lablicate GmbH.
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
*
* All rights reserved.
* This program and the accompanying materials are made available under the
@@ -25,7 +25,7 @@ public class PathResolver {
/**
* Returns a absolute path of the specified Folder. For example
* TESTDATA_IMPORT_EMPTY as an absolute Path:
- * $PluginPath$/testData/files/EMPTY.D/DATA.MS
+ * $PluginPath$/testData/files/data.mzML
*
* @param string
* @return String absolutePath
@@ -36,7 +36,7 @@ public static String getAbsolutePath(String string) {
IPath path = new Path(string);
URL url = FileLocator.find(bundle, path, null);
try {
- return FileLocator.resolve(url).getPath().toString();
+ return FileLocator.resolve(url).getPath();
} catch(IOException e) {
e.printStackTrace();
}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramExportConverter.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramExportConverter.java
index bb806505a7..e2ded4ce6b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramExportConverter.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramExportConverter.java
@@ -23,7 +23,6 @@
import org.eclipse.chemclipse.model.core.IPeak;
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDWriter;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.io.ChromatogramWriter;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.SpecificationValidator;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
import org.eclipse.chemclipse.processing.core.IProcessingInfo;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -38,7 +37,6 @@ public class ChromatogramExportConverter extends AbstractChromatogramExportConve
@Override
public IProcessingInfo convert(File file, IChromatogram extends IPeak> chromatogram, IProgressMonitor monitor) {
- file = SpecificationValidator.validateSpecification(file);
IProcessingInfo processingInfo = super.validate(file);
if(!processingInfo.hasErrorMessages() && chromatogram instanceof IChromatogramMSD chromatogramMSD) {
monitor.subTask(EXPORT_CHROMATOGRAM);
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramFileContentMatcher.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramFileContentMatcher.java
index 8d4fd3b2a7..b2a772b487 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramFileContentMatcher.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramFileContentMatcher.java
@@ -36,6 +36,7 @@ public boolean checkFileFormat(File file) {
XMLStreamReader xmlStreamReader = xmlInputFactory.createXMLStreamReader(new FileInputStream(file));
boolean hasChromatogramList = false;
boolean hasRootElement = false;
+ boolean hasMS = false;
while(xmlStreamReader.hasNext()) {
int eventType = xmlStreamReader.next();
if(eventType == XMLStreamConstants.START_ELEMENT) {
@@ -44,8 +45,24 @@ public boolean checkFileFormat(File file) {
hasRootElement = true;
} else if(elementName.equals("chromatogramList")) {
hasChromatogramList = true;
+ } else if(elementName.equals("fileContent")) {
+ while(xmlStreamReader.hasNext()) {
+ int innerEventType = xmlStreamReader.next();
+ if(innerEventType == XMLStreamConstants.START_ELEMENT && xmlStreamReader.getLocalName().equals("cvParam")) {
+ String accession = xmlStreamReader.getAttributeValue(null, "accession");
+ String paramName = xmlStreamReader.getAttributeValue(null, "name");
+ if(accession.equals("MS:1000579") && paramName.equals("MS1 spectrum") || //
+ accession.equals("MS:1000580") && paramName.equals("MSn spectrum")) {
+ hasMS = true;
+ break;
+ }
+ }
+ if(innerEventType == XMLStreamConstants.END_ELEMENT && xmlStreamReader.getLocalName().equals("fileContent")) {
+ break;
+ }
+ }
}
- if(hasRootElement && hasChromatogramList) {
+ if(hasRootElement && hasChromatogramList && hasMS) {
isValidFormat = true;
break;
}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverter.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverter.java
index 6561f9104f..c69a7c4665 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverter.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverter.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2013, 2023 Lablicate GmbH.
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -20,7 +20,6 @@
import org.eclipse.chemclipse.model.core.IChromatogramOverview;
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDReader;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.io.ChromatogramReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.SpecificationValidator;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
import org.eclipse.chemclipse.processing.core.IProcessingInfo;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -41,7 +40,6 @@ public IProcessingInfo convert(File file, IProgressMonitor mon
/*
* Read the chromatogram.
*/
- file = SpecificationValidator.validateSpecification(file);
IChromatogramMSDReader reader = new ChromatogramReader();
monitor.subTask(IMPORT_CHROMATOGRAM);
try {
@@ -64,7 +62,6 @@ public IProcessingInfo convertOverview(File file, IProgre
IProcessingInfo processingInfo = super.validate(file);
if(!processingInfo.hasErrorMessages()) {
- file = SpecificationValidator.validateSpecification(file);
IChromatogramMSDReader reader = new ChromatogramReader();
monitor.subTask(IMPORT_CHROMATOGRAM_OVERVIEW);
try {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MassSpectrumImportConverter.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MassSpectrumImportConverter.java
index ee573d9a9a..96bf91cf4b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MassSpectrumImportConverter.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MassSpectrumImportConverter.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021, 2022 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved.
* This program and the accompanying materials are made available under the
@@ -17,14 +17,15 @@
import org.eclipse.chemclipse.converter.exceptions.FileIsEmptyException;
import org.eclipse.chemclipse.converter.exceptions.FileIsNotReadableException;
+import org.eclipse.chemclipse.converter.l10n.ConverterMessages;
import org.eclipse.chemclipse.logging.core.Logger;
import org.eclipse.chemclipse.msd.converter.io.IMassSpectraReader;
import org.eclipse.chemclipse.msd.converter.massspectrum.AbstractMassSpectrumImportConverter;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.io.MassSpectrumReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.SpecificationValidator;
import org.eclipse.chemclipse.msd.model.core.IMassSpectra;
import org.eclipse.chemclipse.processing.core.IProcessingInfo;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.osgi.util.NLS;
public class MassSpectrumImportConverter extends AbstractMassSpectrumImportConverter {
@@ -37,26 +38,25 @@ public IProcessingInfo convert(File file, IProgressMonitor monitor
IProcessingInfo processingInfo = super.validate(file);
if(!processingInfo.hasErrorMessages()) {
try {
- file = SpecificationValidator.validateSpecification(file);
IMassSpectraReader massSpectraReader = new MassSpectrumReader();
IMassSpectra massSpectra = massSpectraReader.read(file, monitor);
if(massSpectra != null && !massSpectra.isEmpty()) {
processingInfo.setProcessingResult(massSpectra);
} else {
- processingInfo.addErrorMessage(DESCRIPTION, "No mass spectra are stored." + file.getAbsolutePath());
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.noMassSpectraStored, file.getAbsolutePath()));
}
} catch(FileNotFoundException e) {
logger.warn(e);
- processingInfo.addErrorMessage(DESCRIPTION, "The file couldn't be found: " + file.getAbsolutePath());
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.fileNotFound, file.getAbsolutePath()));
} catch(FileIsNotReadableException e) {
logger.warn(e);
- processingInfo.addErrorMessage(DESCRIPTION, "The file is not readable: " + file.getAbsolutePath());
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.fileNotReadable, file.getAbsolutePath()));
} catch(FileIsEmptyException e) {
logger.warn(e);
- processingInfo.addErrorMessage(DESCRIPTION, "The file is empty: " + file.getAbsolutePath());
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.emptyFile, file.getAbsolutePath()));
} catch(IOException e) {
logger.warn(e);
- processingInfo.addErrorMessage(DESCRIPTION, "Something has gone completely wrong: " + file.getAbsolutePath());
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.failedToReadFile, file.getAbsolutePath()));
}
}
return processingInfo;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramReader.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramReader.java
index 8dece0164c..d4ca46620b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramReader.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramReader.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2014, 2023 Lablicate GmbH.
+ * Copyright (c) 2014, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -16,15 +16,15 @@
import java.io.FileReader;
import java.io.IOException;
+import org.eclipse.chemclipse.converter.exceptions.UnknownVersionException;
import org.eclipse.chemclipse.model.core.IChromatogramOverview;
import org.eclipse.chemclipse.msd.converter.io.AbstractChromatogramMSDReader;
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader10;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io.ChromatogramReaderVersion10;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io.ChromatogramReaderVersion110;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.io.ChromatogramReaderVersion10;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.io.ChromatogramReaderVersion110;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
-import org.eclipse.chemclipse.xxd.converter.supplier.io.exception.UnknownVersionException;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader10;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
import org.eclipse.core.runtime.IProgressMonitor;
public class ChromatogramReader extends AbstractChromatogramMSDReader implements IChromatogramMSDReader {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramWriter.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramWriter.java
index 0720e5438d..f3f3f4dc40 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramWriter.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/ChromatogramWriter.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2014, 2023 Lablicate GmbH.
+ * Copyright (c) 2014, 2024 Lablicate GmbH.
*
* All rights reserved.
* This program and the accompanying materials are made available under the
@@ -18,10 +18,10 @@
import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
import org.eclipse.chemclipse.converter.io.AbstractChromatogramWriter;
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDWriter;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io.ChromatogramWriterVersion110;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.io.ChromatogramWriterVersion110;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.preferences.PreferenceSupplier;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
import org.eclipse.core.runtime.IProgressMonitor;
public class ChromatogramWriter extends AbstractChromatogramWriter implements IChromatogramMSDWriter {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/MassSpectrumReader.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/MassSpectrumReader.java
index f11ccf3943..e3ca1b91c8 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/MassSpectrumReader.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/io/MassSpectrumReader.java
@@ -1,6 +1,6 @@
/*******************************************************************************
- * Copyright (c) 2013, 2023 Lablicate GmbH.
- *
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
+ *
* All rights reserved.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -15,12 +15,12 @@
import java.io.FileReader;
import java.io.IOException;
+import org.eclipse.chemclipse.converter.exceptions.UnknownVersionException;
import org.eclipse.chemclipse.msd.converter.io.AbstractMassSpectraReader;
import org.eclipse.chemclipse.msd.converter.io.IMassSpectraReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io.MassSpectrumReaderVersion110;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.io.MassSpectrumReaderVersion110;
import org.eclipse.chemclipse.msd.model.core.IMassSpectra;
-import org.eclipse.chemclipse.xxd.converter.supplier.io.exception.UnknownVersionException;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
import org.eclipse.core.runtime.IProgressMonitor;
public class MassSpectrumReader extends AbstractMassSpectraReader implements IMassSpectraReader {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryWriter.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryWriter.java
deleted file mode 100644
index 615ce9327a..0000000000
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryWriter.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2021, 2023 Lablicate GmbH.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Matthias Mailänder - initial API and implementation
- *******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
-
-import java.io.ByteArrayOutputStream;
-import java.math.BigInteger;
-import java.nio.ByteBuffer;
-import java.nio.ByteOrder;
-import java.nio.DoubleBuffer;
-import java.nio.FloatBuffer;
-import java.util.zip.Deflater;
-
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io.ChromatogramWriterVersion110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.preferences.PreferenceSupplier;
-
-import jakarta.xml.bind.DatatypeConverter;
-
-public class BinaryWriter {
-
- private BinaryWriter() {
-
- }
-
- public static BinaryDataArrayType createBinaryData(float[] values) {
-
- FloatBuffer floatBuffer = FloatBuffer.wrap(values);
- ByteBuffer byteBuffer = ByteBuffer.allocate(floatBuffer.capacity() * Float.BYTES);
- byteBuffer.order(ByteOrder.LITTLE_ENDIAN);
- byteBuffer.asFloatBuffer().put(floatBuffer);
- BinaryDataArrayType binaryDataArrayType = createBinaryDataArray(byteBuffer);
- CVParamType cvParamData = new CVParamType();
- cvParamData.setCvRef(ChromatogramWriterVersion110.MS);
- cvParamData.setAccession("MS:1000521");
- cvParamData.setName("32-bit float");
- binaryDataArrayType.getCvParam().add(cvParamData);
- return binaryDataArrayType;
- }
-
- public static BinaryDataArrayType createBinaryData(double[] values) {
-
- DoubleBuffer doubleBuffer = DoubleBuffer.wrap(values);
- ByteBuffer byteBuffer = ByteBuffer.allocate(doubleBuffer.capacity() * Double.BYTES);
- byteBuffer.order(ByteOrder.LITTLE_ENDIAN);
- byteBuffer.asDoubleBuffer().put(doubleBuffer);
- BinaryDataArrayType binaryDataArrayType = createBinaryDataArray(byteBuffer);
- CVParamType cvParamData = new CVParamType();
- cvParamData.setCvRef(ChromatogramWriterVersion110.MS);
- cvParamData.setAccession("MS:1000523");
- cvParamData.setName("64-bit float");
- binaryDataArrayType.getCvParam().add(cvParamData);
- return binaryDataArrayType;
- }
-
- private static BinaryDataArrayType createBinaryDataArray(ByteBuffer byteBuffer) {
-
- BinaryDataArrayType binaryDataArrayType = new BinaryDataArrayType();
- boolean compression = PreferenceSupplier.getChromatogramSaveCompression();
- if(compression) {
- CVParamType cvParamCompression = new CVParamType();
- cvParamCompression.setCvRef(ChromatogramWriterVersion110.MS);
- cvParamCompression.setAccession("MS:1000574");
- cvParamCompression.setName("zlib compression");
- binaryDataArrayType.getCvParam().add(cvParamCompression);
- Deflater compresser = new Deflater();
- compresser.setInput(byteBuffer.array());
- compresser.finish();
- ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
- byte[] readBuffer = new byte[1024];
- while(!compresser.finished()) {
- int compressCount = compresser.deflate(readBuffer);
- if(compressCount > 0) {
- outputStream.write(readBuffer, 0, compressCount);
- }
- }
- byte[] outputByteArray = outputStream.toByteArray();
- String characters = DatatypeConverter.printBase64Binary(outputByteArray);
- binaryDataArrayType.setEncodedLength(BigInteger.valueOf(characters.length()));
- binaryDataArrayType.setBinary(outputByteArray);
- compresser.end();
- } else {
- binaryDataArrayType.setBinary(byteBuffer.array());
- }
- return binaryDataArrayType;
- }
-}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/SpecificationValidator.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/SpecificationValidator.java
deleted file mode 100644
index c2c2285856..0000000000
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/SpecificationValidator.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2018 Lablicate GmbH.
- *
- * All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Dr. Philip Wenig - initial API and implementation
- *******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
-
-import java.io.File;
-
-public class SpecificationValidator {
-
- /**
- * Use only static methods.
- */
- private SpecificationValidator() {
- }
-
- /**
- * Validates the given chromatogram file.
- * If the file is denoted only by a directory path, /CHROMATOGRAM.mzML will
- * be added. E.g.: /home/user/chrom will be validated to
- * /home/user/chrom/CHROMATOGRAM.mzML
- *
- * @param file
- */
- public static File validateSpecification(File file) {
-
- if(file == null) {
- return null;
- }
- /*
- * Validate
- */
- File validFile;
- String path = file.getAbsolutePath().toLowerCase();
- if(file.isDirectory()) {
- validFile = new File(file.getAbsolutePath() + File.separator + "CHROMATOGRAM.mzML");
- } else {
- if(path.endsWith(".")) {
- validFile = new File(file.getAbsolutePath() + "mzML");
- } else if(!path.endsWith(".mzml")) {
- validFile = new File(file.getAbsolutePath() + ".mzML");
- } else {
- validFile = file;
- }
- }
- return validFile;
- }
-}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramWriterVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramWriterVersion110.java
deleted file mode 100644
index 51417c5531..0000000000
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramWriterVersion110.java
+++ /dev/null
@@ -1,585 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2021, 2024 Lablicate GmbH.
- *
- * All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Matthias Mailänder - initial API and implementation
- *******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.math.BigInteger;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.List;
-
-import javax.xml.datatype.DatatypeConfigurationException;
-import javax.xml.datatype.DatatypeFactory;
-
-import org.apache.commons.codec.digest.DigestUtils;
-import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
-import org.eclipse.chemclipse.converter.io.AbstractChromatogramWriter;
-import org.eclipse.chemclipse.logging.core.Logger;
-import org.eclipse.chemclipse.model.core.IChromatogram;
-import org.eclipse.chemclipse.model.core.IChromatogramOverview;
-import org.eclipse.chemclipse.model.core.IScan;
-import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDWriter;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.Activator;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.BinaryWriter;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ChromatogramListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ChromatogramType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.DataProcessingListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.DataProcessingType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.FileDescriptionType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.InstrumentConfigurationListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.InstrumentConfigurationType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ObjectFactory;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ParamGroupType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ProcessingMethodType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.RunType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ScanListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ScanType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SoftwareListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SoftwareRefType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SoftwareType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SourceFileListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SourceFileType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SpectrumListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SpectrumType;
-import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
-import org.eclipse.chemclipse.msd.model.core.IIon;
-import org.eclipse.chemclipse.msd.model.core.IScanMSD;
-import org.eclipse.chemclipse.msd.model.core.IRegularMassSpectrum;
-import org.eclipse.core.runtime.IProduct;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.osgi.framework.Version;
-
-import jakarta.xml.bind.JAXBContext;
-import jakarta.xml.bind.JAXBException;
-import jakarta.xml.bind.Marshaller;
-
-public class ChromatogramWriterVersion110 extends AbstractChromatogramWriter implements IChromatogramMSDWriter {
-
- private static final Logger logger = Logger.getLogger(ChromatogramWriterVersion110.class);
- //
- public static final CVType MS = createMS();
- public static final CVType UO = createUO();
-
- @Override
- public void writeChromatogram(File file, IChromatogramMSD chromatogram, IProgressMonitor monitor) throws FileIsNotWriteableException, IOException {
-
- try {
- JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
- Marshaller marshaller = jaxbContext.createMarshaller();
- //
- RunType run = new RunType();
- SoftwareListType softwareList = createSoftwareList();
- InstrumentConfigurationListType instrumentConfigurationList = createInstrumentConfigurationList(softwareList.getSoftware().get(0));
- run.setDefaultInstrumentConfigurationRef(instrumentConfigurationList.getInstrumentConfiguration().get(0));
- SourceFileListType sourceFileList = createSourceFileList(chromatogram);
- run.setDefaultSourceFileRef(sourceFileList.getSourceFile().get(0));
- run.setId(chromatogram.getName());
- //
- DataProcessingListType dataProcessingList = createDataProcessingList(softwareList.getSoftware().get(0));
- SpectrumListType spectrumList = new SpectrumListType();
- spectrumList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
- ChromatogramListType chromatogramList = new ChromatogramListType();
- chromatogramList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
- chromatogramList.setCount(BigInteger.valueOf(1)); // TODO export referenced chromatograms
- //
- int scans = chromatogram.getNumberOfScans();
- spectrumList.setCount(BigInteger.valueOf(scans));
- float[] totalSignals = new float[scans];
- float[] retentionTimes = new float[scans];
- int i = 0;
- for(IScan scan : chromatogram.getScans()) {
- SpectrumType spectrum = new SpectrumType();
- spectrum.setId("scan=" + scan.getScanNumber());
- spectrum.setIndex(BigInteger.valueOf((scan.getScanNumber() - 1)));
- // TIC
- totalSignals[i] = scan.getTotalSignal();
- retentionTimes[i] = (float)(scan.getRetentionTime() / IChromatogramOverview.SECOND_CORRELATION_FACTOR);
- i++;
- //
- // full spectra
- IScanMSD scanMSD = (IScanMSD)scan;
- //
- CVParamType cvParamTotalIonCurrent = new CVParamType();
- cvParamTotalIonCurrent.setCvRef(MS);
- cvParamTotalIonCurrent.setAccession("MS:1000285");
- cvParamTotalIonCurrent.setName("total ion current");
- cvParamTotalIonCurrent.setValue(String.valueOf(scanMSD.getTotalSignal()));
- spectrum.getCvParam().add(cvParamTotalIonCurrent);
- //
- CVParamType cvParamBasePeak = new CVParamType();
- cvParamBasePeak.setCvRef(MS);
- cvParamBasePeak.setAccession("MS:1000504");
- cvParamBasePeak.setName("base peak m/z");
- cvParamBasePeak.setUnitCvRef(MS);
- cvParamBasePeak.setUnitAccession("MS:1000040");
- cvParamBasePeak.setUnitName("m/z");
- cvParamBasePeak.setValue(String.valueOf(scanMSD.getBasePeak()));
- spectrum.getCvParam().add(cvParamBasePeak);
- //
- CVParamType cvParamBasePeakIntensity = new CVParamType();
- cvParamBasePeakIntensity.setCvRef(MS);
- cvParamBasePeakIntensity.setAccession("MS:1000505");
- cvParamBasePeakIntensity.setName("base peak intensity");
- cvParamBasePeakIntensity.setUnitCvRef(MS);
- cvParamBasePeakIntensity.setUnitAccession("MS:1000131");
- cvParamBasePeakIntensity.setUnitName("number of detector counts");
- cvParamBasePeakIntensity.setValue(String.valueOf(scanMSD.getBasePeakAbundance()));
- spectrum.getCvParam().add(cvParamBasePeakIntensity);
- //
- List ionList = scanMSD.getIons();
- double[] ions = new double[ionList.size()];
- float[] abundances = new float[ionList.size()];
- int j = 0;
- for(IIon ion : ionList) {
- ions[j] = ion.getIon();
- abundances[j] = ion.getAbundance();
- j++;
- }
- BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
- binaryDataArrayList.setCount(BigInteger.valueOf(2));
- //
- BinaryDataArrayType ionsBinaryDataArrayType = BinaryWriter.createBinaryData(ions);
- CVParamType cvParamIons = new CVParamType();
- cvParamIons.setCvRef(MS);
- cvParamIons.setAccession("MS:1000514");
- cvParamIons.setName("m/z array");
- cvParamIons.setUnitCvRef(MS);
- cvParamIons.setUnitAccession("MS:1000040");
- cvParamIons.setUnitName("m/z");
- ionsBinaryDataArrayType.getCvParam().add(cvParamIons);
- binaryDataArrayList.getBinaryDataArray().add(ionsBinaryDataArrayType);
- //
- BinaryDataArrayType abundancesBinaryDataArrayType = BinaryWriter.createBinaryData(abundances);
- CVParamType cvParamAbundances = new CVParamType();
- cvParamAbundances.setCvRef(MS);
- cvParamAbundances.setAccession("MS:1000515");
- cvParamAbundances.setName("intensity array");
- cvParamAbundances.setUnitCvRef(MS);
- cvParamAbundances.setUnitAccession("MS:1000131");
- cvParamAbundances.setUnitName("number of counts");
- abundancesBinaryDataArrayType.getCvParam().add(cvParamAbundances);
- binaryDataArrayList.getBinaryDataArray().add(abundancesBinaryDataArrayType);
- //
- CVParamType cvParamRetentionTime = new CVParamType();
- cvParamRetentionTime.setCvRef(MS);
- cvParamRetentionTime.setAccession("MS:1000016");
- cvParamRetentionTime.setName("scan start time");
- cvParamRetentionTime.setUnitCvRef(UO);
- cvParamRetentionTime.setUnitAccession("UO:0000031");
- cvParamRetentionTime.setUnitName("minute");
- cvParamRetentionTime.setValue(String.valueOf(scanMSD.getRetentionTime() / IChromatogramOverview.MINUTE_CORRELATION_FACTOR));
- ScanType scanType = new ScanType();
- scanType.getCvParam().add(cvParamRetentionTime);
- //
- ScanListType scanList = new ScanListType();
- CVParamType cvParamCombination = new CVParamType();
- cvParamCombination.setCvRef(MS);
- cvParamCombination.setAccession("MS:1000795");
- cvParamCombination.setName("no combination");
- scanList.getCvParam().add(cvParamCombination);
- scanList.setCount(BigInteger.valueOf(1));
- scanList.getScan().add(scanType);
- //
- spectrum.setScanList(scanList);
- spectrum.setBinaryDataArrayList(binaryDataArrayList);
- IRegularMassSpectrum massSpectrum = (IRegularMassSpectrum)scanMSD;
- CVParamType cvParamType = new CVParamType();
- if(massSpectrum.getMassSpectrometer() == 1) {
- cvParamType.setCvRef(MS);
- cvParamType.setAccession("MS:1000579");
- cvParamType.setName("MS1 spectrum");
- } else {
- cvParamType.setCvRef(MS);
- cvParamType.setAccession("MS:1000580");
- cvParamType.setName("MSn spectrum");
- }
- spectrum.getCvParam().add(cvParamType);
- CVParamType cvParamLevel = new CVParamType();
- cvParamLevel.setCvRef(MS);
- cvParamLevel.setAccession("MS:1000511");
- cvParamLevel.setName("ms level");
- cvParamLevel.setValue(String.valueOf(massSpectrum.getMassSpectrometer()));
- spectrum.getCvParam().add(cvParamLevel);
- if(massSpectrum.getMassSpectrumType() == 0) {
- CVParamType cvSpectrumType = new CVParamType();
- cvSpectrumType.setCvRef(MS);
- cvSpectrumType.setAccession("MS:1000127");
- cvSpectrumType.setName("centroid spectrum");
- spectrum.getCvParam().add(cvSpectrumType);
- } else if(massSpectrum.getMassSpectrumType() == 1) {
- CVParamType cvSpectrumType = new CVParamType();
- cvSpectrumType.setCvRef(MS);
- cvSpectrumType.setAccession("MS:1000128");
- cvSpectrumType.setName("profile spectrum");
- spectrum.getCvParam().add(cvSpectrumType);
- }
- spectrum.setDefaultArrayLength(ions.length);
- spectrumList.getSpectrum().add(spectrum);
- }
- run.setSpectrumList(spectrumList);
- //
- BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
- binaryDataArrayList.setCount(BigInteger.valueOf(2));
- //
- BinaryDataArrayType totalSignalsBinaryDataArrayType = BinaryWriter.createBinaryData(totalSignals);
- CVParamType cvParamTotalSignals = new CVParamType();
- cvParamTotalSignals.setCvRef(MS);
- cvParamTotalSignals.setAccession("MS:1000515");
- cvParamTotalSignals.setName("intensity array");
- cvParamTotalSignals.setUnitCvRef(MS);
- cvParamTotalSignals.setUnitAccession("MS:1000131");
- cvParamTotalSignals.setUnitName("number of counts");
- totalSignalsBinaryDataArrayType.getCvParam().add(cvParamTotalSignals);
- binaryDataArrayList.getBinaryDataArray().add(totalSignalsBinaryDataArrayType);
- //
- BinaryDataArrayType retentionTimesBinaryDataArrayType = BinaryWriter.createBinaryData(retentionTimes);
- CVParamType cvParamRetentionTime = new CVParamType();
- cvParamRetentionTime.setCvRef(MS);
- cvParamRetentionTime.setAccession("MS:1000595");
- cvParamRetentionTime.setName("time array");
- cvParamRetentionTime.setUnitAccession("UO:0000010");
- cvParamRetentionTime.setUnitName("second");
- retentionTimesBinaryDataArrayType.getCvParam().add(cvParamRetentionTime);
- binaryDataArrayList.getBinaryDataArray().add(retentionTimesBinaryDataArrayType);
- //
- ChromatogramType tic = new ChromatogramType();
- tic.setId("tic");
- tic.setIndex(BigInteger.valueOf(0));
- CVParamType cvParam = new CVParamType();
- cvParam.setCvRef(MS);
- cvParam.setAccession("MS:1000235");
- cvParam.setName("total ion current chromatogram");
- cvParam.setValue("");
- tic.getCvParam().add(cvParam);
- tic.setDefaultArrayLength(totalSignals.length);
- tic.setBinaryDataArrayList(binaryDataArrayList);
- chromatogramList.getChromatogram().add(tic);
- run.setChromatogramList(chromatogramList);
- //
- Date date = chromatogram.getDate();
- if(date != null) {
- GregorianCalendar calendar = new GregorianCalendar();
- calendar.setTime(date);
- run.setStartTimeStamp(DatatypeFactory.newInstance().newXMLGregorianCalendar(calendar));
- }
- MzMLType mzML = new MzMLType();
- mzML.setId(chromatogram.getFile().getName());
- //
- CVListType cvList = new CVListType();
- cvList.setCount(BigInteger.valueOf(2));
- cvList.getCv().add(MS);
- cvList.getCv().add(UO);
- mzML.setCvList(cvList);
- //
- mzML.setFileDescription(createFileDescription(chromatogram, sourceFileList));
- mzML.setInstrumentConfigurationList(instrumentConfigurationList);
- mzML.setSoftwareList(softwareList);
- mzML.setDataProcessingList(dataProcessingList);
- mzML.setVersion(XmlReader110.VERSION);
- mzML.setRun(run);
- marshaller.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, "http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd");
- marshaller.marshal(mzML, file);
- } catch(JAXBException e) {
- logger.warn(e);
- } catch(DatatypeConfigurationException e) {
- logger.warn(e);
- }
- }
-
- private SourceFileListType createSourceFileList(IChromatogram> chromatogram) {
-
- SourceFileListType sourceFileListType = new SourceFileListType();
- sourceFileListType.setCount(BigInteger.valueOf(1));
- File file = chromatogram.getFile();
- SourceFileType sourceFile = new SourceFileType();
- sourceFile.setLocation(file.getAbsolutePath());
- sourceFile.setId(file.getName());
- sourceFile.setName(file.getName());
- //
- CVParamType cvParamSHA1 = new CVParamType();
- cvParamSHA1.setCvRef(MS);
- cvParamSHA1.setAccession("MS:1000569");
- cvParamSHA1.setName("SHA-1");
- cvParamSHA1.setValue(calculateSHA1(file));
- sourceFile.getCvParam().add(cvParamSHA1);
- //
- if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.xxd.converter.supplier.chemclipse")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1003374");
- cvParamFileFormat.setName("Open Chromatography Binary OCB format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.mz5")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000560");
- cvParamFileFormat.setName("mz5 format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.cdf")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1002443");
- cvParamFileFormat.setName("Andi-CHROM format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.mzmlb")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000560");
- cvParamFileFormat.setName("mzMLb format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.shimadzu.lcd")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1003009");
- cvParamFileFormat.setName("Shimadzu Biotech LCD format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.waters.micromass")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000526");
- cvParamFileFormat.setName("Waters raw format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.absciex")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000562");
- cvParamFileFormat.setName("ABI WIFF format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.finnigan.raw")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000563");
- cvParamFileFormat.setName("Thermo RAW format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mzdata")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000564");
- cvParamFileFormat.setName("PSI mzData format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mzxml.chromatogram")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000566");
- cvParamFileFormat.setName("ISB mzXML format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.bruker.baf")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000815");
- cvParamFileFormat.setName("Bruker BAF format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.bruker.flex.chromatogram")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1000825");
- cvParamFileFormat.setName("Bruker FID format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mgf")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1001062");
- cvParamFileFormat.setName("Mascot MGF format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.masshunter.msd")) {
- CVParamType cvParamFileFormat = new CVParamType();
- cvParamFileFormat.setCvRef(MS);
- cvParamFileFormat.setAccession("MS:1001509");
- cvParamFileFormat.setName("Agilent MassHunter format");
- cvParamFileFormat.setValue("");
- sourceFile.getCvParam().add(cvParamFileFormat);
- sourceFileListType.setCount(BigInteger.valueOf(2));
- }
- sourceFileListType.getSourceFile().add(sourceFile);
- return sourceFileListType;
- }
-
- private static String calculateSHA1(File file) {
-
- try (FileInputStream fis = new FileInputStream(file)) {
- return DigestUtils.sha1Hex(fis);
- } catch(IOException e) {
- logger.warn(e);
- }
- return "";
- }
-
- private FileDescriptionType createFileDescription(IChromatogramMSD chromatogram, SourceFileListType sourceFiles) {
-
- FileDescriptionType fileDescriptionType = new FileDescriptionType();
- fileDescriptionType.setSourceFileList(sourceFiles);
- ParamGroupType fileContent = new ParamGroupType();
- //
- IScanMSD scanMSD = (IScanMSD)chromatogram.getScan(1);
- IRegularMassSpectrum massSpectrum = (IRegularMassSpectrum)scanMSD;
- //
- CVParamType cvParamSpectrum = new CVParamType();
- if(massSpectrum.getMassSpectrometer() == 1) {
- cvParamSpectrum.setCvRef(MS);
- cvParamSpectrum.setAccession("MS:1000579");
- cvParamSpectrum.setName("MS1 spectrum");
- } else {
- cvParamSpectrum.setCvRef(MS);
- cvParamSpectrum.setAccession("MS:1000580");
- cvParamSpectrum.setName("MSn spectrum");
- }
- cvParamSpectrum.setValue("");
- fileContent.getCvParam().add(cvParamSpectrum);
- //
- CVParamType cvParamSpectrumType = new CVParamType();
- if(massSpectrum.getMassSpectrumType() == 0) {
- cvParamSpectrumType.setCvRef(MS);
- cvParamSpectrumType.setAccession("MS:1000127");
- cvParamSpectrumType.setName("centroid spectrum");
- } else if(massSpectrum.getMassSpectrumType() == 1) {
- cvParamSpectrumType.setCvRef(MS);
- cvParamSpectrumType.setAccession("MS:1000128");
- cvParamSpectrumType.setName("profile spectrum");
- }
- cvParamSpectrumType.setValue("");
- fileContent.getCvParam().add(cvParamSpectrumType);
- fileDescriptionType.setFileContent(fileContent);
- //
- if(!chromatogram.getOperator().isEmpty()) {
- ParamGroupType paramGroupType = new ParamGroupType();
- CVParamType cvParam = new CVParamType();
- cvParam.setCvRef(MS);
- cvParam.setAccession("MS:1000586");
- cvParam.setName("contact name");
- cvParam.setValue(chromatogram.getOperator());
- paramGroupType.getCvParam().add(cvParam);
- fileDescriptionType.getContact().add(paramGroupType);
- }
- return fileDescriptionType;
- }
-
- private SoftwareListType createSoftwareList() {
-
- SoftwareListType softwareList = new SoftwareListType();
- softwareList.setCount(BigInteger.valueOf(1));
- SoftwareType software = new SoftwareType();
- IProduct product = Platform.getProduct();
- software.setId("Unknown");
- if(product != null) {
- software.setId(product.getName());
- Version version = product.getDefiningBundle().getVersion();
- software.setVersion(version.getMajor() + "." + version.getMinor() + "." + version.getMicro());
- if(product.getName().equals("ChemClipse")) {
- CVParamType cvParamSoftware = new CVParamType();
- cvParamSoftware.setCvRef(MS);
- cvParamSoftware.setAccession("MS:1003376");
- cvParamSoftware.setName("ChemClipse");
- cvParamSoftware.setValue("");
- software.getCvParam().add(cvParamSoftware);
- }
- if(product.getName().equals("OpenChrom")) {
- CVParamType cvParamSoftware = new CVParamType();
- cvParamSoftware.setCvRef(MS);
- cvParamSoftware.setAccession("MS:1003377");
- cvParamSoftware.setName("OpenChrom");
- cvParamSoftware.setValue("");
- software.getCvParam().add(cvParamSoftware);
- }
- }
- softwareList.getSoftware().add(software);
- return softwareList;
- }
-
- private InstrumentConfigurationListType createInstrumentConfigurationList(SoftwareType software) {
-
- InstrumentConfigurationListType instrumentConfigurationList = new InstrumentConfigurationListType();
- instrumentConfigurationList.setCount(BigInteger.valueOf(1));
- InstrumentConfigurationType instrumentConfiguration = new InstrumentConfigurationType();
- instrumentConfiguration.setId("unknown");
- SoftwareRefType softwareRef = new SoftwareRefType();
- softwareRef.setRef(software);
- instrumentConfiguration.setSoftwareRef(softwareRef);
- instrumentConfigurationList.getInstrumentConfiguration().add(instrumentConfiguration);
- return instrumentConfigurationList;
- }
-
- private DataProcessingListType createDataProcessingList(SoftwareType software) {
-
- DataProcessingListType dataProcessingList = new DataProcessingListType();
- dataProcessingList.setCount(BigInteger.valueOf(1));
- DataProcessingType dataProcessing = new DataProcessingType();
- dataProcessing.setId(Activator.getContext().getBundle().getSymbolicName());
- ProcessingMethodType processingMethod = new ProcessingMethodType();
- processingMethod.setSoftwareRef(software);
- processingMethod.setOrder(BigInteger.valueOf(1));
- CVParamType exportParam = new CVParamType();
- exportParam.setCvRef(MS);
- exportParam.setAccession("MS:1000544");
- exportParam.setName("Conversion to mzML");
- exportParam.setValue("");
- processingMethod.getCvParam().add(exportParam);
- dataProcessing.getProcessingMethod().add(processingMethod);
- dataProcessingList.getDataProcessing().add(dataProcessing);
- return dataProcessingList;
- }
-
- private static CVType createMS() {
-
- CVType cvTypeMS = new CVType();
- cvTypeMS.setId("MS");
- cvTypeMS.setFullName("Proteomics Standards Initiative Mass Spectrometry Ontology");
- cvTypeMS.setVersion("4.1.123");
- cvTypeMS.setURI("https://github.com/HUPO-PSI/psi-ms-CV/releases/download/v4.1.123/psi-ms.obo");
- return cvTypeMS;
- }
-
- private static CVType createUO() {
-
- CVType cvTypeUnit = new CVType();
- cvTypeUnit.setId("UO");
- cvTypeUnit.setFullName("Unit Ontology");
- cvTypeUnit.setVersion("2023:05:23");
- cvTypeUnit.setURI("https://raw.githubusercontent.com/bio-ontology-research-group/unit-ontology/v2023-05-23/unit-ontology.obo");
- return cvTypeUnit;
- }
-}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion10.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion10.java
similarity index 81%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion10.java
rename to chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion10.java
index c87c99e15c..d0baed31da 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion10.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion10.java
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io;
+package org.eclipse.chemclipse.msd.converter.supplier.mzml.io;
import java.io.File;
import java.io.IOException;
@@ -24,24 +24,6 @@
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDReader;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.IVendorChromatogram;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.VendorChromatogram;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.BinaryReader10;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader10;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.ChromatogramType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.DataProcessingType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.InstrumentConfigurationType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.ParamGroupType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.PrecursorType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.ProcessingMethodType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.RunType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.SampleListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.SampleType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.ScanType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.SoftwareType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.SpectrumType;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
import org.eclipse.chemclipse.msd.model.core.IIonTransition;
import org.eclipse.chemclipse.msd.model.core.IIonTransitionGroup;
@@ -50,6 +32,23 @@
import org.eclipse.chemclipse.msd.model.implementation.IonTransition;
import org.eclipse.chemclipse.msd.model.implementation.VendorMassSpectrum;
import org.eclipse.chemclipse.support.history.EditInformation;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.BinaryReader10;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader10;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.ChromatogramType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.DataProcessingType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.InstrumentConfigurationType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.PrecursorType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.ProcessingMethodType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.SampleListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.SampleType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.ScanType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.SoftwareType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.SpectrumType;
import org.eclipse.core.runtime.IProgressMonitor;
import org.xml.sax.SAXException;
@@ -84,7 +83,7 @@ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) t
}
}
}
- XmlReader.addIons(intensities, retentionTimes, chromatogram);
+ XmlMassSpectrumReader.addIons(intensities, retentionTimes, chromatogram);
} catch(JAXBException e) {
logger.warn(e);
} catch(SAXException e) {
@@ -201,7 +200,7 @@ public IChromatogramMSD read(File file, IProgressMonitor monitor) throws IOExcep
intensities = binaryData.getValue();
}
}
- XmlReader.addIons(intensities, mzs, massSpectrum);
+ XmlMassSpectrumReader.addIons(intensities, mzs, massSpectrum);
chromatogram.addScan(massSpectrum);
}
} catch(DataFormatException e) {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java
similarity index 66%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion110.java
rename to chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java
index b115f7367a..ba4cd6fe5c 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/ChromatogramReaderVersion110.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io;
+package org.eclipse.chemclipse.msd.converter.supplier.mzml.io;
import java.io.File;
import java.io.IOException;
@@ -24,24 +24,6 @@
import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDReader;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.IVendorChromatogram;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.VendorChromatogram;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.BinaryReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ChromatogramType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.DataProcessingType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.InstrumentConfigurationType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ParamGroupType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.PrecursorType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ProcessingMethodType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.RunType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SampleListType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SampleType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ScanType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SoftwareType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SpectrumType;
import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
import org.eclipse.chemclipse.msd.model.core.IIonTransition;
import org.eclipse.chemclipse.msd.model.core.IIonTransitionGroup;
@@ -49,7 +31,18 @@
import org.eclipse.chemclipse.msd.model.core.IRegularMassSpectrum;
import org.eclipse.chemclipse.msd.model.implementation.IonTransition;
import org.eclipse.chemclipse.msd.model.implementation.VendorMassSpectrum;
-import org.eclipse.chemclipse.support.history.EditInformation;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.BinaryReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.MetadataReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.PrecursorType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ScanType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumType;
import org.eclipse.core.runtime.IProgressMonitor;
import org.xml.sax.SAXException;
@@ -68,8 +61,9 @@ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) t
//
try {
chromatogram = new VendorChromatogram();
- //
- RunType run = XmlReader110.getMzML(file).getRun();
+ MzMLType mzML = XmlReader110.getMzML(file);
+ MetadataReader110.readMetadata(mzML, chromatogram);
+ RunType run = mzML.getRun();
for(ChromatogramType chromatogramType : run.getChromatogramList().getChromatogram()) {
if(chromatogramType.getId().equals("TIC")) {
if(chromatogramType.getCvParam().stream().anyMatch(n -> n.getAccession().equals("MS:1000235") && n.getName().equals("total ion current chromatogram"))) {
@@ -84,7 +78,7 @@ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) t
}
}
}
- XmlReader.addIons(intensities, retentionTimes, chromatogram);
+ XmlMassSpectrumReader.addIons(intensities, retentionTimes, chromatogram);
} catch(JAXBException e) {
logger.warn(e);
} catch(SAXException e) {
@@ -94,7 +88,6 @@ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) t
} catch(DataFormatException e) {
logger.warn(e);
}
- //
return chromatogram;
}
@@ -110,38 +103,7 @@ public IChromatogramMSD read(File file, IProgressMonitor monitor) throws IOExcep
chromatogram.setFile(file);
//
MzMLType mzML = XmlReader110.getMzML(file);
- for(ParamGroupType contact : mzML.getFileDescription().getContact()) {
- for(CVParamType cvParam : contact.getCvParam()) {
- if(chromatogram.getOperator().isEmpty()) {
- chromatogram.setOperator(cvParam.getValue());
- } else {
- chromatogram.setOperator(String.join(", ", chromatogram.getOperator(), cvParam.getValue()));
- }
- }
- }
- SampleListType sampleList = mzML.getSampleList();
- if(sampleList != null) {
- for(SampleType sample : sampleList.getSample()) {
- chromatogram.setSampleName(sample.getName());
- }
- }
- for(InstrumentConfigurationType instrument : mzML.getInstrumentConfigurationList().getInstrumentConfiguration()) {
- for(CVParamType cvParam : instrument.getCvParam()) {
- if(cvParam.getAccession().equals("MS:1000554")) {
- chromatogram.setInstrument(cvParam.getName());
- }
- }
- }
- for(DataProcessingType dataProcessing : mzML.getDataProcessingList().getDataProcessing()) {
- for(ProcessingMethodType processingMethod : dataProcessing.getProcessingMethod()) {
- SoftwareType software = (SoftwareType)processingMethod.getSoftwareRef();
- for(CVParamType cvParam : processingMethod.getCvParam()) {
- String operation = cvParam.getName();
- String editor = software.getId() + " " + software.getVersion();
- chromatogram.getEditHistory().add(new EditInformation(operation, editor));
- }
- }
- }
+ MetadataReader110.readMetadata(mzML, chromatogram);
RunType run = mzML.getRun();
for(SpectrumType spectrum : run.getSpectrumList().getSpectrum()) {
IRegularMassSpectrum massSpectrum = new VendorMassSpectrum();
@@ -199,7 +161,7 @@ public IChromatogramMSD read(File file, IProgressMonitor monitor) throws IOExcep
intensities = binaryData.getValue();
}
}
- XmlReader.addIons(intensities, mzs, massSpectrum);
+ XmlMassSpectrumReader.addIons(intensities, mzs, massSpectrum);
chromatogram.addScan(massSpectrum);
}
} catch(DataFormatException e) {
@@ -211,7 +173,6 @@ public IChromatogramMSD read(File file, IProgressMonitor monitor) throws IOExcep
} catch(JAXBException e) {
logger.warn(e);
}
- //
return chromatogram;
}
}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java
new file mode 100644
index 0000000000..789407bb86
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java
@@ -0,0 +1,508 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.msd.converter.supplier.mzml.io;
+
+import java.io.File;
+import java.io.IOException;
+import java.math.BigInteger;
+import java.util.List;
+
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
+import org.eclipse.chemclipse.converter.io.AbstractChromatogramWriter;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogram;
+import org.eclipse.chemclipse.model.core.IChromatogramOverview;
+import org.eclipse.chemclipse.model.core.IScan;
+import org.eclipse.chemclipse.msd.converter.io.IChromatogramMSDWriter;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.Activator;
+import org.eclipse.chemclipse.msd.converter.supplier.mzml.preferences.PreferenceSupplier;
+import org.eclipse.chemclipse.msd.model.core.IChromatogramMSD;
+import org.eclipse.chemclipse.msd.model.core.IIon;
+import org.eclipse.chemclipse.msd.model.core.IRegularMassSpectrum;
+import org.eclipse.chemclipse.msd.model.core.IScanMSD;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlWriter110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.DataProcessingListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.DataProcessingType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.FileDescriptionType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.InstrumentConfigurationListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.InstrumentConfigurationType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ObjectFactory;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ProcessingMethodType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ScanListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ScanType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareRefType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SourceFileListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SourceFileType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumType;
+import org.eclipse.core.runtime.IProgressMonitor;
+
+import jakarta.xml.bind.JAXBContext;
+import jakarta.xml.bind.JAXBException;
+import jakarta.xml.bind.Marshaller;
+
+public class ChromatogramWriterVersion110 extends AbstractChromatogramWriter implements IChromatogramMSDWriter {
+
+ private static final Logger logger = Logger.getLogger(ChromatogramWriterVersion110.class);
+
+ @Override
+ public void writeChromatogram(File file, IChromatogramMSD chromatogram, IProgressMonitor monitor) throws FileIsNotWriteableException, IOException {
+
+ try {
+ JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
+ Marshaller marshaller = jaxbContext.createMarshaller();
+ //
+ RunType run = new RunType();
+ SoftwareListType softwareList = XmlWriter110.createSoftwareList();
+ InstrumentConfigurationListType instrumentConfigurationList = createInstrumentConfigurationList(softwareList.getSoftware().get(0));
+ run.setDefaultInstrumentConfigurationRef(instrumentConfigurationList.getInstrumentConfiguration().get(0));
+ SourceFileListType sourceFileList = createSourceFileList(chromatogram);
+ run.setDefaultSourceFileRef(sourceFileList.getSourceFile().get(0));
+ run.setId(chromatogram.getName());
+ //
+ DataProcessingListType dataProcessingList = createDataProcessingList(softwareList.getSoftware().get(0));
+ SpectrumListType spectrumList = new SpectrumListType();
+ spectrumList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
+ ChromatogramListType chromatogramList = new ChromatogramListType();
+ chromatogramList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
+ chromatogramList.setCount(BigInteger.valueOf(1)); // TODO export referenced chromatograms
+ //
+ int scans = chromatogram.getNumberOfScans();
+ spectrumList.setCount(BigInteger.valueOf(scans));
+ float[] totalSignals = new float[scans];
+ float[] retentionTimes = new float[scans];
+ writeScans(chromatogram, totalSignals, retentionTimes, spectrumList);
+ run.setSpectrumList(spectrumList);
+ //
+ ChromatogramType tic = createTIC(totalSignals, retentionTimes);
+ chromatogramList.getChromatogram().add(tic);
+ run.setChromatogramList(chromatogramList);
+ //
+ XMLGregorianCalendar date = XmlWriter110.createDate(chromatogram);
+ if(date != null) {
+ run.setStartTimeStamp(date);
+ }
+ MzMLType mzML = new MzMLType();
+ mzML.setId(chromatogram.getFile().getName());
+ //
+ CVListType cvList = new CVListType();
+ cvList.setCount(BigInteger.valueOf(2));
+ cvList.getCv().add(XmlWriter110.MS);
+ cvList.getCv().add(XmlWriter110.UO);
+ mzML.setCvList(cvList);
+ //
+ mzML.setFileDescription(createFileDescription(chromatogram, sourceFileList));
+ mzML.setInstrumentConfigurationList(instrumentConfigurationList);
+ mzML.setSoftwareList(softwareList);
+ mzML.setDataProcessingList(dataProcessingList);
+ mzML.setVersion(XmlReader110.VERSION);
+ mzML.setRun(run);
+ marshaller.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, "http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd");
+ marshaller.marshal(mzML, file);
+ } catch(JAXBException e) {
+ logger.warn(e);
+ } catch(DatatypeConfigurationException e) {
+ logger.warn(e);
+ }
+ }
+
+ private ChromatogramType createTIC(float[] totalSignals, float[] retentionTimes) {
+
+ BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
+ binaryDataArrayList.setCount(BigInteger.valueOf(2));
+ boolean compression = PreferenceSupplier.getChromatogramSaveCompression();
+ //
+ BinaryDataArrayType totalSignalsBinaryDataArrayType = XmlWriter110.createBinaryData(totalSignals, compression);
+ totalSignalsBinaryDataArrayType.getCvParam().add(XmlWriter110.createIntensityArrayType());
+ binaryDataArrayList.getBinaryDataArray().add(totalSignalsBinaryDataArrayType);
+ //
+ BinaryDataArrayType retentionTimesBinaryDataArrayType = XmlWriter110.createBinaryData(retentionTimes, compression);
+ retentionTimesBinaryDataArrayType.getCvParam().add(XmlWriter110.createRetentionTimeType());
+ binaryDataArrayList.getBinaryDataArray().add(retentionTimesBinaryDataArrayType);
+ //
+ ChromatogramType tic = new ChromatogramType();
+ tic.setId("tic");
+ tic.setIndex(BigInteger.valueOf(0));
+ tic.getCvParam().add(createTotalIonCurrrentType());
+ tic.setDefaultArrayLength(totalSignals.length);
+ tic.setBinaryDataArrayList(binaryDataArrayList);
+ return tic;
+ }
+
+ private void writeScans(IChromatogramMSD chromatogram, float[] totalSignals, float[] retentionTimes, SpectrumListType spectrumList) {
+
+ int i = 0;
+ for(IScan scan : chromatogram.getScans()) {
+ SpectrumType spectrum = new SpectrumType();
+ spectrum.setId("scan=" + scan.getScanNumber());
+ spectrum.setIndex(BigInteger.valueOf((scan.getScanNumber() - 1)));
+ // TIC
+ totalSignals[i] = scan.getTotalSignal();
+ retentionTimes[i] = (float)(scan.getRetentionTime() / IChromatogramOverview.SECOND_CORRELATION_FACTOR);
+ i++;
+ spectrum.getCvParam().add(createTotalIonCurrentType(scan));
+ IScanMSD scanMSD = (IScanMSD)scan;
+ // full spectra
+ //
+ spectrum.getCvParam().add(createBasePeakMassType(scanMSD));
+ spectrum.getCvParam().add(createBasePeakIntensity(scanMSD));
+ //
+ List ionList = scanMSD.getIons();
+ double[] ions = new double[ionList.size()];
+ float[] abundances = new float[ionList.size()];
+ int j = 0;
+ for(IIon ion : ionList) {
+ ions[j] = ion.getIon();
+ abundances[j] = ion.getAbundance();
+ j++;
+ }
+ BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
+ binaryDataArrayList.setCount(BigInteger.valueOf(2));
+ //
+ boolean compression = PreferenceSupplier.getChromatogramSaveCompression();
+ BinaryDataArrayType ionsBinaryDataArrayType = XmlWriter110.createBinaryData(ions, compression);
+ ionsBinaryDataArrayType.getCvParam().add(createIonType());
+ binaryDataArrayList.getBinaryDataArray().add(ionsBinaryDataArrayType);
+ //
+ BinaryDataArrayType abundancesBinaryDataArrayType = XmlWriter110.createBinaryData(abundances, compression);
+ abundancesBinaryDataArrayType.getCvParam().add(XmlWriter110.createIntensityArrayType());
+ binaryDataArrayList.getBinaryDataArray().add(abundancesBinaryDataArrayType);
+ //
+ ScanType scanType = new ScanType();
+ scanType.getCvParam().add(createScanStartTimeType(scanMSD));
+ //
+ ScanListType scanList = new ScanListType();
+ scanList.getCvParam().add(createCombinationType());
+ scanList.setCount(BigInteger.valueOf(1));
+ scanList.getScan().add(scanType);
+ //
+ spectrum.setScanList(scanList);
+ spectrum.setBinaryDataArrayList(binaryDataArrayList);
+ IRegularMassSpectrum massSpectrum = (IRegularMassSpectrum)scanMSD;
+ spectrum.getCvParam().add(createSpectrumDimension(massSpectrum));
+ spectrum.getCvParam().add(createSpectrumLevel(massSpectrum));
+ spectrum.getCvParam().add(createSpectrumType(massSpectrum));
+ spectrum.setDefaultArrayLength(ions.length);
+ spectrumList.getSpectrum().add(spectrum);
+ }
+ }
+
+ private CVParamType createBasePeakIntensity(IScanMSD scanMSD) {
+
+ CVParamType cvParamBasePeakIntensity = new CVParamType();
+ cvParamBasePeakIntensity.setCvRef(XmlWriter110.MS);
+ cvParamBasePeakIntensity.setAccession("MS:1000505");
+ cvParamBasePeakIntensity.setName("base peak intensity");
+ cvParamBasePeakIntensity.setUnitCvRef(XmlWriter110.MS);
+ cvParamBasePeakIntensity.setUnitAccession("MS:1000131");
+ cvParamBasePeakIntensity.setUnitName("number of detector counts");
+ cvParamBasePeakIntensity.setValue(String.valueOf(scanMSD.getBasePeakAbundance()));
+ return cvParamBasePeakIntensity;
+ }
+
+ private CVParamType createBasePeakMassType(IScanMSD scanMSD) {
+
+ CVParamType cvParamBasePeak = new CVParamType();
+ cvParamBasePeak.setCvRef(XmlWriter110.MS);
+ cvParamBasePeak.setAccession("MS:1000504");
+ cvParamBasePeak.setName("base peak m/z");
+ cvParamBasePeak.setUnitCvRef(XmlWriter110.MS);
+ cvParamBasePeak.setUnitAccession("MS:1000040");
+ cvParamBasePeak.setUnitName("m/z");
+ cvParamBasePeak.setValue(String.valueOf(scanMSD.getBasePeak()));
+ return cvParamBasePeak;
+ }
+
+ private CVParamType createTotalIonCurrentType(IScan scan) {
+
+ CVParamType cvParamTotalIonCurrent = new CVParamType();
+ cvParamTotalIonCurrent.setCvRef(XmlWriter110.MS);
+ cvParamTotalIonCurrent.setAccession("MS:1000285");
+ cvParamTotalIonCurrent.setName("total ion current");
+ cvParamTotalIonCurrent.setValue(String.valueOf(scan.getTotalSignal()));
+ return cvParamTotalIonCurrent;
+ }
+
+ private CVParamType createCombinationType() {
+
+ CVParamType cvParamCombination = new CVParamType();
+ cvParamCombination.setCvRef(XmlWriter110.MS);
+ cvParamCombination.setAccession("MS:1000795");
+ cvParamCombination.setName("no combination");
+ return cvParamCombination;
+ }
+
+ private CVParamType createTotalIonCurrrentType() {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000235");
+ cvParam.setName("total ion current chromatogram");
+ cvParam.setValue("");
+ return cvParam;
+ }
+
+ private CVParamType createScanStartTimeType(IScan scan) {
+
+ CVParamType cvParamScanStartTime = new CVParamType();
+ cvParamScanStartTime.setCvRef(XmlWriter110.MS);
+ cvParamScanStartTime.setAccession("MS:1000016");
+ cvParamScanStartTime.setName("scan start time");
+ cvParamScanStartTime.setUnitCvRef(XmlWriter110.UO);
+ cvParamScanStartTime.setUnitAccession("UO:0000031");
+ cvParamScanStartTime.setUnitName("minute");
+ cvParamScanStartTime.setValue(String.valueOf(scan.getRetentionTime() / IChromatogramOverview.MINUTE_CORRELATION_FACTOR));
+ return cvParamScanStartTime;
+ }
+
+ private CVParamType createIonType() {
+
+ CVParamType cvParamIons = new CVParamType();
+ cvParamIons.setCvRef(XmlWriter110.MS);
+ cvParamIons.setAccession("MS:1000514");
+ cvParamIons.setName("m/z array");
+ cvParamIons.setUnitCvRef(XmlWriter110.MS);
+ cvParamIons.setUnitAccession("MS:1000040");
+ cvParamIons.setUnitName("m/z");
+ return cvParamIons;
+ }
+
+ private SourceFileListType createSourceFileList(IChromatogram> chromatogram) {
+
+ SourceFileListType sourceFileListType = new SourceFileListType();
+ sourceFileListType.setCount(BigInteger.valueOf(1));
+ SourceFileType sourceFile = XmlWriter110.createSourceFile(chromatogram);
+ //
+ if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.xxd.converter.supplier.chemclipse")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1003374");
+ cvParamFileFormat.setName("Open Chromatography Binary OCB format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.mz5")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000560");
+ cvParamFileFormat.setName("mz5 format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.cdf")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1002443");
+ cvParamFileFormat.setName("Andi-CHROM format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.mzmlb")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000560");
+ cvParamFileFormat.setName("mzMLb format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.shimadzu.lcd")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1003009");
+ cvParamFileFormat.setName("Shimadzu Biotech LCD format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.waters.micromass")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000526");
+ cvParamFileFormat.setName("Waters raw format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.absciex")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000562");
+ cvParamFileFormat.setName("ABI WIFF format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.finnigan.raw")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000563");
+ cvParamFileFormat.setName("Thermo RAW format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mzdata")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000564");
+ cvParamFileFormat.setName("PSI mzData format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mzxml.chromatogram")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000566");
+ cvParamFileFormat.setName("ISB mzXML format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.bruker.baf")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000815");
+ cvParamFileFormat.setName("Bruker BAF format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.bruker.flex.chromatogram")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1000825");
+ cvParamFileFormat.setName("Bruker FID format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.msd.converter.supplier.mgf")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1001062");
+ cvParamFileFormat.setName("Mascot MGF format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ } else if(chromatogram.getConverterId().equals("net.openchrom.msd.converter.supplier.masshunter.msd")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1001509");
+ cvParamFileFormat.setName("Agilent MassHunter format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ }
+ sourceFileListType.getSourceFile().add(sourceFile);
+ return sourceFileListType;
+ }
+
+ private FileDescriptionType createFileDescription(IChromatogramMSD chromatogram, SourceFileListType sourceFiles) {
+
+ FileDescriptionType fileDescriptionType = new FileDescriptionType();
+ fileDescriptionType.setSourceFileList(sourceFiles);
+ ParamGroupType fileContent = new ParamGroupType();
+ IScanMSD scanMSD = (IScanMSD)chromatogram.getScan(1);
+ IRegularMassSpectrum massSpectrum = (IRegularMassSpectrum)scanMSD;
+ fileContent.getCvParam().add(createSpectrumDimension(massSpectrum));
+ fileContent.getCvParam().add(createSpectrumType(massSpectrum));
+ fileDescriptionType.setFileContent(fileContent);
+ ParamGroupType paramGroupType = XmlWriter110.getOperator(chromatogram);
+ if(paramGroupType != null) {
+ fileDescriptionType.getContact().add(paramGroupType);
+ }
+ return fileDescriptionType;
+ }
+
+ private CVParamType createSpectrumDimension(IRegularMassSpectrum massSpectrum) {
+
+ CVParamType cvParamSpectrum = new CVParamType();
+ if(massSpectrum.getMassSpectrometer() == 1) {
+ cvParamSpectrum.setCvRef(XmlWriter110.MS);
+ cvParamSpectrum.setAccession("MS:1000579");
+ cvParamSpectrum.setName("MS1 spectrum");
+ } else {
+ cvParamSpectrum.setCvRef(XmlWriter110.MS);
+ cvParamSpectrum.setAccession("MS:1000580");
+ cvParamSpectrum.setName("MSn spectrum");
+ }
+ cvParamSpectrum.setValue("");
+ return cvParamSpectrum;
+ }
+
+ private CVParamType createSpectrumLevel(IRegularMassSpectrum massSpectrum) {
+
+ CVParamType cvParamLevel = new CVParamType();
+ cvParamLevel.setCvRef(XmlWriter110.MS);
+ cvParamLevel.setAccession("MS:1000511");
+ cvParamLevel.setName("ms level");
+ cvParamLevel.setValue(String.valueOf(massSpectrum.getMassSpectrometer()));
+ return cvParamLevel;
+ }
+
+ private CVParamType createSpectrumType(IRegularMassSpectrum massSpectrum) {
+
+ CVParamType cvParamSpectrumType = new CVParamType();
+ if(massSpectrum.getMassSpectrumType() == 0) {
+ cvParamSpectrumType.setCvRef(XmlWriter110.MS);
+ cvParamSpectrumType.setAccession("MS:1000127");
+ cvParamSpectrumType.setName("centroid spectrum");
+ } else if(massSpectrum.getMassSpectrumType() == 1) {
+ cvParamSpectrumType.setCvRef(XmlWriter110.MS);
+ cvParamSpectrumType.setAccession("MS:1000128");
+ cvParamSpectrumType.setName("profile spectrum");
+ }
+ cvParamSpectrumType.setValue("");
+ return cvParamSpectrumType;
+ }
+
+ private InstrumentConfigurationListType createInstrumentConfigurationList(SoftwareType software) {
+
+ InstrumentConfigurationListType instrumentConfigurationList = new InstrumentConfigurationListType();
+ instrumentConfigurationList.setCount(BigInteger.valueOf(1));
+ InstrumentConfigurationType instrumentConfiguration = new InstrumentConfigurationType();
+ instrumentConfiguration.setId("unknown");
+ SoftwareRefType softwareRef = new SoftwareRefType();
+ softwareRef.setRef(software);
+ instrumentConfiguration.setSoftwareRef(softwareRef);
+ instrumentConfigurationList.getInstrumentConfiguration().add(instrumentConfiguration);
+ return instrumentConfigurationList;
+ }
+
+ private DataProcessingListType createDataProcessingList(SoftwareType software) {
+
+ DataProcessingListType dataProcessingList = new DataProcessingListType();
+ dataProcessingList.setCount(BigInteger.valueOf(1));
+ DataProcessingType dataProcessing = new DataProcessingType();
+ dataProcessing.setId(Activator.getContext().getBundle().getSymbolicName());
+ ProcessingMethodType processingMethod = new ProcessingMethodType();
+ processingMethod.setSoftwareRef(software);
+ processingMethod.setOrder(BigInteger.valueOf(1));
+ CVParamType exportParam = new CVParamType();
+ exportParam.setCvRef(XmlWriter110.MS);
+ exportParam.setAccession("MS:1000544");
+ exportParam.setName("Conversion to mzML");
+ exportParam.setValue("");
+ processingMethod.getCvParam().add(exportParam);
+ dataProcessing.getProcessingMethod().add(processingMethod);
+ dataProcessingList.getDataProcessing().add(dataProcessing);
+ return dataProcessingList;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/MassSpectrumReaderVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/MassSpectrumReaderVersion110.java
similarity index 78%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/MassSpectrumReaderVersion110.java
rename to chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/MassSpectrumReaderVersion110.java
index 247ef7559d..aadd648aec 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/io/MassSpectrumReaderVersion110.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/MassSpectrumReaderVersion110.java
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.io;
+package org.eclipse.chemclipse.msd.converter.supplier.mzml.io;
import java.io.File;
import java.io.IOException;
@@ -23,19 +23,18 @@
import org.eclipse.chemclipse.msd.converter.io.IMassSpectraReader;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.IVendorMassSpectra;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.VendorMassSpectra;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.BinaryReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.FileDescriptionType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ParamGroupType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.RunType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.SpectrumType;
import org.eclipse.chemclipse.msd.model.core.IMassSpectra;
import org.eclipse.chemclipse.msd.model.core.IStandaloneMassSpectrum;
import org.eclipse.chemclipse.msd.model.implementation.VendorMassSpectrum;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.BinaryReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.FileDescriptionType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumType;
import org.eclipse.core.runtime.IProgressMonitor;
import org.xml.sax.SAXException;
@@ -91,7 +90,7 @@ public IMassSpectra read(File file, IProgressMonitor monitor) throws IOException
}
}
}
- XmlReader.addIons(mzs, intensities, massSpectrum);
+ XmlMassSpectrumReader.addIons(mzs, intensities, massSpectrum);
} catch(SAXException e) {
logger.warn(e);
} catch(JAXBException e) {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/XmlMassSpectrumReader.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader.java
rename to chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/XmlMassSpectrumReader.java
index 855b1d2b24..a21045835d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/io/XmlMassSpectrumReader.java
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
+package org.eclipse.chemclipse.msd.converter.supplier.mzml.io;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.IVendorChromatogram;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.converter.model.VendorIon;
@@ -17,9 +17,9 @@
import org.eclipse.chemclipse.msd.model.core.IIon;
import org.eclipse.chemclipse.msd.model.core.IScanMSD;
-public class XmlReader {
+public class XmlMassSpectrumReader {
- private XmlReader() {
+ private XmlMassSpectrumReader() {
}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/preferences/PreferenceSupplier.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/preferences/PreferenceSupplier.java
index 9030788069..e8fc6b3032 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/preferences/PreferenceSupplier.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/preferences/PreferenceSupplier.java
@@ -13,9 +13,9 @@
package org.eclipse.chemclipse.msd.converter.supplier.mzml.preferences;
import org.eclipse.chemclipse.msd.converter.supplier.mzml.Activator;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter.XmlReader110;
import org.eclipse.chemclipse.support.preferences.AbstractPreferenceSupplier;
import org.eclipse.chemclipse.support.preferences.IPreferenceSupplier;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
public class PreferenceSupplier extends AbstractPreferenceSupplier implements IPreferenceSupplier {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.arw/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.arw/META-INF/MANIFEST.MF
index 3a9c84f683..c505a974d0 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.arw/META-INF/MANIFEST.MF
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.arw/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Automatic-Module-Name: org.eclipse.chemclipse.wsd.converter.supplier.arw
Eclipse-RegisterBuddy: org.eclipse.chemclipse.model, org.eclipse.chemclipse.wsd.model
Bundle-ManifestVersion: 2
-Bundle-Name: ARW (DAD) Converter
+Bundle-Name: ARW (HPLC-DAD) Converter
Bundle-SymbolicName: org.eclipse.chemclipse.wsd.converter.supplier.arw;singleton:=true
Bundle-Version: 0.9.0.qualifier
Bundle-Activator: org.eclipse.chemclipse.wsd.converter.supplier.arw.Activator
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.classpath b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.classpath
new file mode 100644
index 0000000000..81fe078c20
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.classpath
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.gitignore
new file mode 100644
index 0000000000..5e56e040ec
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.project b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.project
new file mode 100644
index 0000000000..defcfe61a8
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.project
@@ -0,0 +1,28 @@
+
+
+ org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.core.resources.prefs b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000000..801fab74d0
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/=utf8
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.jdt.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000000..9154beff79
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=17
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..d6a8796f46
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Automatic-Module-Name: org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui
+Bundle-ManifestVersion: 2
+Bundle-Name: mzML HPLC-DAD UI
+Bundle-SymbolicName: org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-Activator: org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui.Activator
+Bundle-Vendor: ChemClipse
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.chemclipse.support.ui,
+ org.eclipse.chemclipse.xxd.process.ui,
+ org.eclipse.chemclipse.rcp.ui.icons,
+ org.eclipse.chemclipse.ux.extension.xxd.ui;bundle-version="0.9.0",
+ org.eclipse.chemclipse.wsd.converter.supplier.mzml;bundle-version="0.9.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-17
+Bundle-ActivationPolicy: lazy
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/OSGI-INF/l10n/bundle_en.properties b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/OSGI-INF/l10n/bundle_en.properties
new file mode 100644
index 0000000000..70d792b0b8
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/OSGI-INF/l10n/bundle_en.properties
@@ -0,0 +1,12 @@
+###############################################################################
+# Copyright (c) 2015, 2017 Lablicate GmbH.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Dr. Philip Wenig - initial API and implementation
+###############################################################################
+#Properties file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/build.properties b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/build.properties
new file mode 100644
index 0000000000..948f0bdf02
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ plugin.xml
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/plugin.xml b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/plugin.xml
new file mode 100644
index 0000000000..af197c082e
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/plugin.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/Activator.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/Activator.java
new file mode 100644
index 0000000000..c2c92a7580
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/Activator.java
@@ -0,0 +1,63 @@
+/*******************************************************************************
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Dr. Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+
+ return plugin;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/icon/MenuIcon.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/icon/MenuIcon.java
new file mode 100644
index 0000000000..ab006d5dcb
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/icon/MenuIcon.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2022, 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui.icon;
+
+import org.eclipse.chemclipse.rcp.ui.icons.core.ApplicationImageFactory;
+import org.eclipse.chemclipse.rcp.ui.icons.core.IApplicationImage;
+import org.eclipse.chemclipse.rcp.ui.icons.core.IApplicationImageProvider;
+import org.eclipse.chemclipse.xxd.process.ui.menu.IMenuIcon;
+import org.eclipse.swt.graphics.Image;
+
+public class MenuIcon implements IMenuIcon {
+
+ @Override
+ public Image getImage() {
+
+ return ApplicationImageFactory.getInstance().getImage(IApplicationImage.IMAGE_XML_FILE, IApplicationImageProvider.SIZE_16x16);
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/preferences/PreferencePage.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/preferences/PreferencePage.java
new file mode 100644
index 0000000000..a407a1d367
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/ui/preferences/PreferencePage.java
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui.preferences;
+
+import org.eclipse.chemclipse.support.ui.preferences.fieldeditors.SpacerFieldEditor;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.preferences.PreferenceSupplier;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.ui.Activator;
+import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.jface.preference.ComboFieldEditor;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+
+public class PreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
+
+ public PreferencePage() {
+
+ super(GRID);
+ setPreferenceStore(Activator.getDefault().getPreferenceStore());
+ setDescription("mzML Converter");
+ }
+
+ @Override
+ public void createFieldEditors() {
+
+ addField(new SpacerFieldEditor(getFieldEditorParent()));
+ addField(new ComboFieldEditor(PreferenceSupplier.P_CHROMATOGRAM_VERSION_SAVE, "Save (*.mzML) as version:", PreferenceSupplier.getChromatogramVersions(), getFieldEditorParent()));
+ addField(new BooleanFieldEditor(PreferenceSupplier.P_CHROMATOGRAM_SAVE_COMPRESSION, "Compress values", getFieldEditorParent()));
+ }
+
+ @Override
+ public void init(IWorkbench workbench) {
+
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.classpath b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.classpath
new file mode 100644
index 0000000000..81fe078c20
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.classpath
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.gitignore
new file mode 100644
index 0000000000..5e56e040ec
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.project b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.project
new file mode 100644
index 0000000000..c2efe570aa
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.project
@@ -0,0 +1,28 @@
+
+
+ org.eclipse.chemclipse.wsd.converter.supplier.mzml
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000000..801fab74d0
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/=utf8
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000000..9154beff79
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=17
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.pde.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 0000000000..f29e940a00
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+pluginProject.extensions=false
+resolve.requirebundle=false
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..c2531b094c
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/META-INF/MANIFEST.MF
@@ -0,0 +1,24 @@
+Manifest-Version: 1.0
+Automatic-Module-Name: org.eclipse.chemclipse.wsd.converter.supplier.arw
+Eclipse-RegisterBuddy: org.eclipse.chemclipse.model, org.eclipse.chemclipse.wsd.model
+Export-Package: org.eclipse.chemclipse.wsd.converter.supplier.mzml.preferences
+Bundle-ManifestVersion: 2
+Bundle-Name: mzML (HPLC-DAD) Converter
+Bundle-SymbolicName: org.eclipse.chemclipse.wsd.converter.supplier.mzml;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-Activator: org.eclipse.chemclipse.wsd.converter.supplier.mzml.Activator
+Bundle-Vendor: Chemclipse
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.chemclipse.converter;bundle-version="0.8.0",
+ org.eclipse.chemclipse.wsd.converter;bundle-version="0.8.0",
+ org.eclipse.chemclipse.model;bundle-version="0.8.0",
+ org.eclipse.chemclipse.wsd.model;bundle-version="0.8.0",
+ org.eclipse.chemclipse.logging;bundle-version="0.8.0",
+ org.eclipse.chemclipse.processing;bundle-version="0.8.0",
+ org.eclipse.chemclipse.support;bundle-version="0.8.0",
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml,
+ org.apache.commons.lang3;bundle-version="3.13.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-17
+Import-Package: jakarta.xml.bind;version="[4.0.0,5.0.0)",
+ org.osgi.framework;version="1.3.0"
+Bundle-ActivationPolicy: lazy
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties
new file mode 100644
index 0000000000..597fd0bfba
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties
@@ -0,0 +1 @@
+#Properties file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/build.properties b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/build.properties
new file mode 100644
index 0000000000..948f0bdf02
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ plugin.xml
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/plugin.xml b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/plugin.xml
new file mode 100644
index 0000000000..c7bfa6ce42
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/plugin.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/Activator.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/Activator.java
new file mode 100644
index 0000000000..93482af1b4
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/Activator.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ public static BundleContext getContext() {
+
+ return context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext bundleContext) throws Exception {
+
+ Activator.context = bundleContext;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext bundleContext) throws Exception {
+
+ Activator.context = null;
+ }
+}
\ No newline at end of file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/PathResolver.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/PathResolver.java
new file mode 100644
index 0000000000..8a45dd797a
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/PathResolver.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Dr. Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml;
+
+import java.io.IOException;
+import java.net.URL;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.osgi.framework.Bundle;
+
+public class PathResolver {
+
+ /**
+ * Returns a absolute path of the specified Folder. For example
+ * TESTDATA_IMPORT_EMPTY as an absolute Path:
+ * $PluginPath$/testData/files/data.mzML
+ *
+ * @param string
+ * @return String absolutePath
+ */
+ public static String getAbsolutePath(String string) {
+
+ Bundle bundle = Platform.getBundle(Activator.getContext().getBundle().getSymbolicName());
+ IPath path = new Path(string);
+ URL url = FileLocator.find(bundle, path, null);
+ try {
+ return FileLocator.resolve(url).getPath();
+ } catch(IOException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramExportConverter.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramExportConverter.java
new file mode 100644
index 0000000000..b2e8977d3b
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramExportConverter.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.chemclipse.converter.chromatogram.AbstractChromatogramExportConverter;
+import org.eclipse.chemclipse.converter.chromatogram.IChromatogramExportConverter;
+import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
+import org.eclipse.chemclipse.converter.l10n.ConverterMessages;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogram;
+import org.eclipse.chemclipse.model.core.IPeak;
+import org.eclipse.chemclipse.processing.core.IProcessingInfo;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDWriter;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter.io.ChromatogramWriter;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.osgi.util.NLS;
+
+public class ChromatogramExportConverter extends AbstractChromatogramExportConverter implements IChromatogramExportConverter {
+
+ private static final Logger logger = Logger.getLogger(ChromatogramExportConverter.class);
+ private static final String DESCRIPTION = "mzML Chromatogram Export Converter";
+ private static final String EXPORT_CHROMATOGRAM = "Export mzML Chromatogram";
+
+ @Override
+ public IProcessingInfo convert(File file, IChromatogram extends IPeak> chromatogram, IProgressMonitor monitor) {
+
+ IProcessingInfo processingInfo = super.validate(file);
+ if(!processingInfo.hasErrorMessages() && chromatogram instanceof IChromatogramWSD chromatogramMSD) {
+ monitor.subTask(EXPORT_CHROMATOGRAM);
+ IChromatogramWSDWriter writer = new ChromatogramWriter();
+ try {
+ writer.writeChromatogram(file, chromatogramMSD, monitor);
+ } catch(IOException e) {
+ logger.error(e);
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.failedToWriteFile, file.getAbsolutePath()));
+ } catch(FileIsNotWriteableException e) {
+ logger.error(e);
+ processingInfo.addErrorMessage(DESCRIPTION, NLS.bind(ConverterMessages.fileNotWritable, file.getAbsolutePath()));
+ }
+ processingInfo.setProcessingResult(file);
+ }
+ return processingInfo;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverter.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverter.java
new file mode 100644
index 0000000000..619dc2e30d
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverter.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.chemclipse.converter.chromatogram.AbstractChromatogramImportConverter;
+import org.eclipse.chemclipse.converter.l10n.ConverterMessages;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogramOverview;
+import org.eclipse.chemclipse.processing.core.IProcessingInfo;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDReader;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter.io.ChromatogramReader;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.osgi.util.NLS;
+
+public class ChromatogramImportConverter extends AbstractChromatogramImportConverter {
+
+ private static final Logger logger = Logger.getLogger(ChromatogramImportConverter.class);
+
+ @Override
+ public IProcessingInfo convert(File file, IProgressMonitor monitor) {
+
+ IProcessingInfo processingInfo = super.validate(file);
+ if(!processingInfo.hasErrorMessages()) {
+ IChromatogramWSDReader chromatogramReader = new ChromatogramReader();
+ try {
+ IChromatogramWSD chromatogram = chromatogramReader.read(file, monitor);
+ processingInfo.setProcessingResult(chromatogram);
+ } catch(IOException e) {
+ logger.warn(e);
+ processingInfo.addErrorMessage(ConverterMessages.importChromatogram, NLS.bind(ConverterMessages.failedToReadFile, file.getAbsolutePath()));
+ }
+ }
+ return processingInfo;
+ }
+
+ @Override
+ public IProcessingInfo convertOverview(File file, IProgressMonitor monitor) {
+
+ IProcessingInfo processingInfo = super.validate(file);
+ if(!processingInfo.hasErrorMessages()) {
+ IChromatogramWSDReader chromatogramReader = new ChromatogramReader();
+ try {
+ IChromatogramOverview chromatogramOverview = chromatogramReader.readOverview(file, monitor);
+ processingInfo.setProcessingResult(chromatogramOverview);
+ } catch(IOException e) {
+ logger.warn(e);
+ processingInfo.addErrorMessage(ConverterMessages.importChromatogram, NLS.bind(ConverterMessages.failedToReadFile, file.getAbsolutePath()));
+ }
+ }
+ return processingInfo;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/FileContentMatcher.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/FileContentMatcher.java
new file mode 100644
index 0000000000..4b511bb0cd
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/FileContentMatcher.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter;
+
+import java.io.File;
+import java.io.FileInputStream;
+
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamReader;
+
+import org.eclipse.chemclipse.converter.core.AbstractFileContentMatcher;
+import org.eclipse.chemclipse.converter.core.IFileContentMatcher;
+
+public class FileContentMatcher extends AbstractFileContentMatcher implements IFileContentMatcher {
+
+ @Override
+ public boolean checkFileFormat(File file) {
+
+ boolean isValidFormat = false;
+ try {
+ XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance();
+ XMLStreamReader xmlStreamReader = xmlInputFactory.createXMLStreamReader(new FileInputStream(file));
+ boolean hasChromatogramList = false;
+ boolean hasRootElement = false;
+ boolean hasPDA = false;
+ while(xmlStreamReader.hasNext()) {
+ int eventType = xmlStreamReader.next();
+ if(eventType == XMLStreamConstants.START_ELEMENT) {
+ String elementName = xmlStreamReader.getLocalName();
+ if(elementName.equals("mzML")) {
+ hasRootElement = true;
+ } else if(elementName.equals("chromatogramList")) {
+ hasChromatogramList = true;
+ } else if(elementName.equals("fileContent")) {
+ while(xmlStreamReader.hasNext()) {
+ int innerEventType = xmlStreamReader.next();
+ if(innerEventType == XMLStreamConstants.START_ELEMENT && xmlStreamReader.getLocalName().equals("cvParam")) {
+ String accession = xmlStreamReader.getAttributeValue(null, "accession");
+ String paramName = xmlStreamReader.getAttributeValue(null, "name");
+ if(accession.equals("MS:1000806") && paramName.equals("absorption spectrum")) {
+ hasPDA = true;
+ break;
+ }
+ }
+ if(innerEventType == XMLStreamConstants.END_ELEMENT && xmlStreamReader.getLocalName().equals("fileContent")) {
+ break;
+ }
+ }
+ }
+ if(hasRootElement && hasChromatogramList && hasPDA) {
+ isValidFormat = true;
+ break;
+ }
+ }
+ }
+ xmlStreamReader.close();
+ } catch(Exception e) {
+ // fail silently
+ }
+ return isValidFormat;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramReader.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramReader.java
new file mode 100644
index 0000000000..23bd397a5c
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramReader.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ * Lorenz Gerber - adjust failed parsing behaviour
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter.io;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+
+import org.eclipse.chemclipse.converter.exceptions.UnknownVersionException;
+import org.eclipse.chemclipse.model.core.IChromatogramOverview;
+import org.eclipse.chemclipse.wsd.converter.io.AbstractChromatogramWSDReader;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDReader;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.io.ChromatogramReaderVersion110;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.core.runtime.IProgressMonitor;
+
+public class ChromatogramReader extends AbstractChromatogramWSDReader implements IChromatogramWSDReader {
+
+ public static IChromatogramWSDReader getReader(final File file) throws IOException {
+
+ IChromatogramWSDReader chromatogramReader = null;
+ try (final FileReader fileReader = new FileReader(file)) {
+ final char[] charBuffer = new char[500];
+ fileReader.read(charBuffer);
+ final String header = new String(charBuffer);
+ if(header.contains(XmlReader110.VERSION)) {
+ chromatogramReader = new ChromatogramReaderVersion110();
+ } else {
+ throw new UnknownVersionException();
+ }
+ }
+ return chromatogramReader;
+ }
+
+ @Override
+ public IChromatogramWSD read(File file, IProgressMonitor monitor) throws IOException {
+
+ IChromatogramWSDReader reader = getReader(file);
+ return reader.read(file, monitor);
+ }
+
+ @Override
+ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) throws IOException {
+
+ IChromatogramWSDReader reader = getReader(file);
+ return reader.read(file, monitor);
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramWriter.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramWriter.java
new file mode 100644
index 0000000000..fe21e4d266
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/io/ChromatogramWriter.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2014, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Dr. Philip Wenig - initial API and implementation
+ * Matthias Mailänder - add support for saving version 1.10
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter.io;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
+import org.eclipse.chemclipse.converter.io.AbstractChromatogramWriter;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDWriter;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.io.ChromatogramWriterVersion110;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.core.runtime.IProgressMonitor;
+
+public class ChromatogramWriter extends AbstractChromatogramWriter implements IChromatogramWSDWriter {
+
+ @Override
+ public void writeChromatogram(File file, IChromatogramWSD chromatogram, IProgressMonitor monitor) throws FileIsNotWriteableException, IOException {
+
+ final IChromatogramWSDWriter chromatogramWriter = getChromatogramWriter();
+ if(chromatogramWriter != null) {
+ chromatogramWriter.writeChromatogram(file, chromatogram, monitor);
+ }
+ }
+
+ private IChromatogramWSDWriter getChromatogramWriter() {
+
+ return new ChromatogramWriterVersion110();
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java
new file mode 100644
index 0000000000..92bb0449ea
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramReaderVersion110.java
@@ -0,0 +1,177 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.io;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.zip.DataFormatException;
+
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.apache.commons.lang3.tuple.Pair;
+import org.eclipse.chemclipse.converter.io.AbstractChromatogramReader;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogramOverview;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDReader;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.IVendorChromatogram;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.IVendorScan;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.IVendorScanSignal;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.VendorChromatogram;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.VendorScan;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.VendorScanSignal;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.BinaryReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.MetadataReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumType;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.xml.sax.SAXException;
+
+import jakarta.xml.bind.JAXBException;
+
+public class ChromatogramReaderVersion110 extends AbstractChromatogramReader implements IChromatogramWSDReader {
+
+ private static final Logger logger = Logger.getLogger(ChromatogramReaderVersion110.class);
+
+ @Override
+ public IChromatogramOverview readOverview(File file, IProgressMonitor monitor) throws IOException {
+
+ IVendorChromatogram chromatogram = null;
+ try {
+ chromatogram = new VendorChromatogram();
+ chromatogram.setFile(file);
+ MzMLType mzML = XmlReader110.getMzML(file);
+ chromatogram = (IVendorChromatogram)MetadataReader110.readMetadata(mzML, chromatogram);
+ RunType run = mzML.getRun();
+ readSingleWavelengthSignal(run, chromatogram);
+ } catch(ParserConfigurationException e) {
+ logger.warn(e);
+ } catch(SAXException e) {
+ logger.warn(e);
+ } catch(JAXBException e) {
+ logger.warn(e);
+ }
+ return chromatogram;
+ }
+
+ @Override
+ public IChromatogramWSD read(File file, IProgressMonitor monitor) throws IOException {
+
+ IVendorChromatogram chromatogram = null;
+ try {
+ chromatogram = new VendorChromatogram();
+ chromatogram.setFile(file);
+ MzMLType mzML = XmlReader110.getMzML(file);
+ chromatogram = (IVendorChromatogram)MetadataReader110.readMetadata(mzML, chromatogram);
+ RunType run = mzML.getRun();
+ readSingleWavelengthSignal(run, chromatogram);
+ readFullSpectrum(run, chromatogram);
+ } catch(ParserConfigurationException e) {
+ logger.warn(e);
+ } catch(SAXException e) {
+ logger.warn(e);
+ } catch(JAXBException e) {
+ logger.warn(e);
+ } catch(DataFormatException e) {
+ logger.warn(e);
+ }
+ return chromatogram;
+ }
+
+ private void readFullSpectrum(RunType run, IVendorChromatogram chromatogram) throws DataFormatException {
+
+ int i = 1;
+ for(SpectrumType spectrum : run.getSpectrumList().getSpectrum()) {
+ double[] wavelengths = new double[0];
+ double[] intensities = new double[0];
+ for(BinaryDataArrayType binaryDataArrayType : spectrum.getBinaryDataArrayList().getBinaryDataArray()) {
+ Pair binaryData = BinaryReader110.parseBinaryData(binaryDataArrayType);
+ if(binaryData.getKey().equals("wavelength")) {
+ wavelengths = binaryData.getValue();
+ } else if(binaryData.getKey().equals("intensity")) {
+ intensities = binaryData.getValue();
+ }
+ }
+ IVendorScan scan = (IVendorScan)chromatogram.getSupplierScan(i);
+ scan.deleteScanSignals(); // otherwise the total signal is added upon
+ addSpectrum(wavelengths, intensities, scan);
+ i++;
+ }
+ }
+
+ private void readSingleWavelengthSignal(RunType run, IVendorChromatogram chromatogram) {
+
+ double[] retentionTimes = new double[0];
+ double[] intensities = new double[0];
+ float lowestWavelength = 0f;
+ float highestWavelength = 0f;
+ try {
+ for(ChromatogramType chromatogramType : run.getChromatogramList().getChromatogram()) {
+ for(CVParamType cvParam : chromatogramType.getCvParam()) {
+ if(cvParam.getAccession().equals("MS:1000618") && cvParam.getName().equals("highest observed wavelength")) {
+ highestWavelength = Float.parseFloat(cvParam.getValue());
+ } else if(cvParam.getAccession().equals("MS:1000619") && cvParam.getName().equals("lowest observed wavelength")) {
+ lowestWavelength = Float.parseFloat(cvParam.getValue());
+ } else if(cvParam.getAccession().equals("MS:1000812") && cvParam.getName().equals("absorption chromatogram")) {
+ for(BinaryDataArrayType binaryDataArrayType : chromatogramType.getBinaryDataArrayList().getBinaryDataArray()) {
+ Pair binaryData = BinaryReader110.parseBinaryData(binaryDataArrayType);
+ if(binaryData.getKey().equals("time")) {
+ retentionTimes = binaryData.getValue();
+ } else if(binaryData.getKey().equals("intensity")) {
+ intensities = binaryData.getValue();
+ }
+ }
+ }
+ }
+ }
+ if(lowestWavelength != highestWavelength) {
+ logger.warn("Not a single wavelength chromatogram.");
+ }
+ float wavelength = Math.max(lowestWavelength, highestWavelength);
+ addScans(wavelength, intensities, retentionTimes, chromatogram);
+ } catch(DataFormatException e) {
+ logger.warn(e);
+ }
+ }
+
+ private void addScans(float wavelength, double[] intensities, double[] retentionTimes, IVendorChromatogram chromatogram) {
+
+ int rt = Math.min(retentionTimes.length, intensities.length);
+ for(int i = 0; i < rt; i++) {
+ IVendorScan scan = new VendorScan();
+ int retentionTime = (int)(retentionTimes[i]);
+ scan.setRetentionTime(retentionTime);
+ float intensity = (float)intensities[i];
+ IVendorScanSignal signal = new VendorScanSignal();
+ signal.setAbsorbance(intensity);
+ signal.setWavelength(wavelength);
+ scan.addScanSignal(signal);
+ chromatogram.addScan(scan);
+ }
+ }
+
+ private void addSpectrum(double[] wavelengths, double[] intensities, IVendorScan scan) {
+
+ int max = Math.min(wavelengths.length, intensities.length);
+ for(int i = 0; i < max; i++) {
+ IVendorScanSignal signal = new VendorScanSignal();
+ signal.setAbsorbance((float)intensities[i]);
+ signal.setWavelength((float)wavelengths[i]);
+ scan.addScanSignal(signal);
+ }
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java
new file mode 100644
index 0000000000..6a06042eca
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/io/ChromatogramWriterVersion110.java
@@ -0,0 +1,327 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.io;
+
+import java.io.File;
+import java.io.IOException;
+import java.math.BigInteger;
+import java.util.List;
+
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.eclipse.chemclipse.converter.exceptions.FileIsNotWriteableException;
+import org.eclipse.chemclipse.converter.io.AbstractChromatogramWriter;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogram;
+import org.eclipse.chemclipse.model.core.IChromatogramOverview;
+import org.eclipse.chemclipse.model.core.IScan;
+import org.eclipse.chemclipse.wsd.converter.io.IChromatogramWSDWriter;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.Activator;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.preferences.PreferenceSupplier;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.chemclipse.wsd.model.core.IScanSignalWSD;
+import org.eclipse.chemclipse.wsd.model.core.IScanWSD;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlWriter110;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ChromatogramType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.DataProcessingListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.DataProcessingType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.FileDescriptionType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.InstrumentConfigurationListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.InstrumentConfigurationType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ObjectFactory;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ProcessingMethodType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.RunType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareRefType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SourceFileListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SourceFileType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SpectrumType;
+import org.eclipse.core.runtime.IProgressMonitor;
+
+import jakarta.xml.bind.JAXBContext;
+import jakarta.xml.bind.JAXBException;
+import jakarta.xml.bind.Marshaller;
+
+public class ChromatogramWriterVersion110 extends AbstractChromatogramWriter implements IChromatogramWSDWriter {
+
+ private static final Logger logger = Logger.getLogger(ChromatogramWriterVersion110.class);
+
+ @Override
+ public void writeChromatogram(File file, IChromatogramWSD chromatogram, IProgressMonitor monitor) throws FileIsNotWriteableException, IOException {
+
+ try {
+ JAXBContext jaxbContext = JAXBContext.newInstance(ObjectFactory.class);
+ Marshaller marshaller = jaxbContext.createMarshaller();
+ //
+ RunType run = new RunType();
+ SoftwareListType softwareList = XmlWriter110.createSoftwareList();
+ InstrumentConfigurationListType instrumentConfigurationList = createInstrumentConfigurationList(softwareList.getSoftware().get(0));
+ run.setDefaultInstrumentConfigurationRef(instrumentConfigurationList.getInstrumentConfiguration().get(0));
+ SourceFileListType sourceFileList = createSourceFileList(chromatogram);
+ run.setDefaultSourceFileRef(sourceFileList.getSourceFile().get(0));
+ run.setId(chromatogram.getName());
+ //
+ DataProcessingListType dataProcessingList = createDataProcessingList(softwareList.getSoftware().get(0));
+ SpectrumListType spectrumList = new SpectrumListType();
+ spectrumList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
+ ChromatogramListType chromatogramList = new ChromatogramListType();
+ chromatogramList.setDefaultDataProcessingRef(dataProcessingList.getDataProcessing().get(0));
+ chromatogramList.setCount(BigInteger.valueOf(1)); // TODO export referenced chromatograms
+ //
+ int scans = chromatogram.getNumberOfScans();
+ spectrumList.setCount(BigInteger.valueOf(scans));
+ float[] totalSignals = new float[scans];
+ float[] retentionTimes = new float[scans];
+ writeScans(chromatogram, totalSignals, retentionTimes, spectrumList);
+ run.setSpectrumList(spectrumList);
+ //
+ BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
+ binaryDataArrayList.setCount(BigInteger.valueOf(2));
+ boolean compression = PreferenceSupplier.getChromatogramSaveCompression();
+ //
+ BinaryDataArrayType totalSignalsBinaryDataArrayType = XmlWriter110.createBinaryData(totalSignals, compression);
+ totalSignalsBinaryDataArrayType.getCvParam().add(XmlWriter110.createIntensityArrayType());
+ binaryDataArrayList.getBinaryDataArray().add(totalSignalsBinaryDataArrayType);
+ //
+ BinaryDataArrayType retentionTimesBinaryDataArrayType = XmlWriter110.createBinaryData(retentionTimes, compression);
+ retentionTimesBinaryDataArrayType.getCvParam().add(XmlWriter110.createRetentionTimeType());
+ binaryDataArrayList.getBinaryDataArray().add(retentionTimesBinaryDataArrayType);
+ //
+ ChromatogramType defaultPDA = new ChromatogramType();
+ float wavelength = chromatogram.getWavelengths().iterator().next(); // TODO: not default wavelength
+ defaultPDA.setId(wavelength + "nm");
+ defaultPDA.setIndex(BigInteger.valueOf(0));
+ defaultPDA.getCvParam().add(createAbsorptionChromatogramType());
+ defaultPDA.setDefaultArrayLength(totalSignals.length);
+ defaultPDA.setBinaryDataArrayList(binaryDataArrayList);
+ chromatogramList.getChromatogram().add(defaultPDA);
+ run.setChromatogramList(chromatogramList);
+ //
+ XMLGregorianCalendar date = XmlWriter110.createDate(chromatogram);
+ if(date != null) {
+ run.setStartTimeStamp(date);
+ }
+ MzMLType mzML = new MzMLType();
+ mzML.setId(chromatogram.getFile().getName());
+ //
+ CVListType cvList = new CVListType();
+ cvList.setCount(BigInteger.valueOf(2));
+ cvList.getCv().add(XmlWriter110.MS);
+ cvList.getCv().add(XmlWriter110.UO);
+ mzML.setCvList(cvList);
+ //
+ mzML.setFileDescription(createFileDescription(chromatogram, sourceFileList));
+ mzML.setInstrumentConfigurationList(instrumentConfigurationList);
+ mzML.setSoftwareList(softwareList);
+ mzML.setDataProcessingList(dataProcessingList);
+ mzML.setVersion(XmlReader110.VERSION);
+ mzML.setRun(run);
+ marshaller.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, "http://psi.hupo.org/ms/mzml http://psidev.info/files/ms/mzML/xsd/mzML1.1.0.xsd");
+ marshaller.marshal(mzML, file);
+ } catch(JAXBException e) {
+ logger.warn(e);
+ } catch(DatatypeConfigurationException e) {
+ logger.warn(e);
+ }
+ }
+
+ private void writeScans(IChromatogramWSD chromatogram, float[] totalSignals, float[] retentionTimes, SpectrumListType spectrumList) {
+
+ int i = 0;
+ for(IScan scan : chromatogram.getScans()) {
+ SpectrumType spectrum = new SpectrumType();
+ spectrum.setId("scan=" + scan.getScanNumber());
+ spectrum.setIndex(BigInteger.valueOf((scan.getScanNumber() - 1)));
+ // TIC
+ totalSignals[i] = scan.getTotalSignal();
+ retentionTimes[i] = (float)(scan.getRetentionTime() / IChromatogramOverview.SECOND_CORRELATION_FACTOR);
+ i++;
+ spectrum.getCvParam().add(createAbsorptionType());
+ spectrum.getCvParam().add(createProfileType());
+ IScanWSD scanWSD = (IScanWSD)scan;
+ // full spectra
+ //
+ spectrum.getCvParam().add(createHighestObservedWavelength(scanWSD));
+ spectrum.getCvParam().add(createLowestObservedWavelength(scanWSD));
+ //
+ List scanSignals = scanWSD.getScanSignals();
+ float[] wavelength = new float[scanSignals.size()];
+ float[] absorbance = new float[scanSignals.size()];
+ int j = 0;
+ for(IScanSignalWSD scanSignal : scanSignals) {
+ wavelength[j] = scanSignal.getWavelength();
+ absorbance[j] = scanSignal.getAbsorbance();
+ j++;
+ }
+ BinaryDataArrayListType binaryDataArrayList = new BinaryDataArrayListType();
+ binaryDataArrayList.setCount(BigInteger.valueOf(2));
+ //
+ boolean compression = PreferenceSupplier.getChromatogramSaveCompression();
+ BinaryDataArrayType wavelengthsBinaryDataArrayType = XmlWriter110.createBinaryData(wavelength, compression);
+ wavelengthsBinaryDataArrayType.getCvParam().add(createWavelengthType());
+ binaryDataArrayList.getBinaryDataArray().add(wavelengthsBinaryDataArrayType);
+ //
+ BinaryDataArrayType absorbancesBinaryDataArrayType = XmlWriter110.createBinaryData(absorbance, compression);
+ absorbancesBinaryDataArrayType.getCvParam().add(XmlWriter110.createIntensityArrayType());
+ binaryDataArrayList.getBinaryDataArray().add(absorbancesBinaryDataArrayType);
+ //
+ spectrum.setBinaryDataArrayList(binaryDataArrayList);
+ spectrum.setDefaultArrayLength(wavelength.length);
+ spectrumList.getSpectrum().add(spectrum);
+ }
+ }
+
+ private CVParamType createWavelengthType() {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000617");
+ cvParam.setName("wavelength array");
+ setUnitNanometer(cvParam);
+ return cvParam;
+ }
+
+ private CVParamType createHighestObservedWavelength(IScanWSD scanWSD) {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000618");
+ cvParam.setName("highest observed wavelength");
+ cvParam.setValue(String.valueOf(scanWSD.getWavelengthBounds().getHighestWavelength().getWavelength()));
+ setUnitNanometer(cvParam);
+ return cvParam;
+ }
+
+ private CVParamType createLowestObservedWavelength(IScanWSD scanWSD) {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000619");
+ cvParam.setName("lowest observed wavelength");
+ cvParam.setValue(String.valueOf(scanWSD.getWavelengthBounds().getLowestWavelength().getWavelength()));
+ setUnitNanometer(cvParam);
+ return cvParam;
+ }
+
+ private void setUnitNanometer(CVParamType cvParam) {
+
+ cvParam.setUnitAccession("UO:0000018");
+ cvParam.setUnitName("nanometer");
+ cvParam.setUnitCvRef(XmlWriter110.UO);
+ }
+
+ private CVParamType createProfileType() {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000128");
+ cvParam.setName("profile spectrum");
+ cvParam.setValue("");
+ return cvParam;
+ }
+
+ private CVParamType createAbsorptionChromatogramType() {
+
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000812");
+ cvParam.setName("absorption chromatogram");
+ cvParam.setValue("");
+ return cvParam;
+ }
+
+ private SourceFileListType createSourceFileList(IChromatogram> chromatogram) {
+
+ SourceFileListType sourceFileListType = new SourceFileListType();
+ sourceFileListType.setCount(BigInteger.valueOf(1));
+ SourceFileType sourceFile = XmlWriter110.createSourceFile(chromatogram);
+ if(chromatogram.getConverterId().equals("org.eclipse.chemclipse.xxd.converter.supplier.chemclipse")) {
+ CVParamType cvParamFileFormat = new CVParamType();
+ cvParamFileFormat.setCvRef(XmlWriter110.MS);
+ cvParamFileFormat.setAccession("MS:1003374");
+ cvParamFileFormat.setName("Open Chromatography Binary OCB format");
+ cvParamFileFormat.setValue("");
+ sourceFile.getCvParam().add(cvParamFileFormat);
+ sourceFileListType.setCount(BigInteger.valueOf(2));
+ }
+ sourceFileListType.getSourceFile().add(sourceFile);
+ return sourceFileListType;
+ }
+
+ private FileDescriptionType createFileDescription(IChromatogramWSD chromatogram, SourceFileListType sourceFiles) {
+
+ FileDescriptionType fileDescriptionType = new FileDescriptionType();
+ fileDescriptionType.setSourceFileList(sourceFiles);
+ ParamGroupType fileContent = new ParamGroupType();
+ fileContent.getCvParam().add(createAbsorptionType());
+ fileDescriptionType.setFileContent(fileContent);
+ ParamGroupType paramGroupType = XmlWriter110.getOperator(chromatogram);
+ if(paramGroupType != null) {
+ fileDescriptionType.getContact().add(paramGroupType);
+ }
+ return fileDescriptionType;
+ }
+
+ private CVParamType createAbsorptionType() {
+
+ CVParamType cvParamSpectrum = new CVParamType();
+ cvParamSpectrum.setCvRef(XmlWriter110.MS);
+ cvParamSpectrum.setAccession("MS:1000806");
+ cvParamSpectrum.setName("absorption spectrum");
+ cvParamSpectrum.setValue("");
+ return cvParamSpectrum;
+ }
+
+ private InstrumentConfigurationListType createInstrumentConfigurationList(SoftwareType software) {
+
+ InstrumentConfigurationListType instrumentConfigurationList = new InstrumentConfigurationListType();
+ instrumentConfigurationList.setCount(BigInteger.valueOf(1));
+ InstrumentConfigurationType instrumentConfiguration = new InstrumentConfigurationType();
+ instrumentConfiguration.setId("unknown");
+ SoftwareRefType softwareRef = new SoftwareRefType();
+ softwareRef.setRef(software);
+ instrumentConfiguration.setSoftwareRef(softwareRef);
+ instrumentConfigurationList.getInstrumentConfiguration().add(instrumentConfiguration);
+ return instrumentConfigurationList;
+ }
+
+ private DataProcessingListType createDataProcessingList(SoftwareType software) {
+
+ DataProcessingListType dataProcessingList = new DataProcessingListType();
+ dataProcessingList.setCount(BigInteger.valueOf(1));
+ DataProcessingType dataProcessing = new DataProcessingType();
+ dataProcessing.setId(Activator.getContext().getBundle().getSymbolicName());
+ ProcessingMethodType processingMethod = new ProcessingMethodType();
+ processingMethod.setSoftwareRef(software);
+ processingMethod.setOrder(BigInteger.valueOf(1));
+ CVParamType exportParam = new CVParamType();
+ exportParam.setCvRef(XmlWriter110.MS);
+ exportParam.setAccession("MS:1000544");
+ exportParam.setName("Conversion to mzML");
+ exportParam.setValue("");
+ processingMethod.getCvParam().add(exportParam);
+ dataProcessing.getProcessingMethod().add(processingMethod);
+ dataProcessingList.getDataProcessing().add(dataProcessing);
+ return dataProcessingList;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorChromatogram.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorChromatogram.java
new file mode 100644
index 0000000000..71300b15ef
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorChromatogram.java
@@ -0,0 +1,17 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+
+public interface IVendorChromatogram extends IChromatogramWSD {
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScan.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScan.java
new file mode 100644
index 0000000000..af96d43f0c
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScan.java
@@ -0,0 +1,17 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.IScanWSD;
+
+public interface IVendorScan extends IScanWSD {
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScanSignal.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScanSignal.java
new file mode 100644
index 0000000000..d17a9e9596
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/IVendorScanSignal.java
@@ -0,0 +1,17 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.IScanSignalWSD;
+
+public interface IVendorScanSignal extends IScanSignalWSD {
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorChromatogram.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorChromatogram.java
new file mode 100644
index 0000000000..7332061b48
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorChromatogram.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.AbstractChromatogramWSD;
+
+@SuppressWarnings("serial")
+public class VendorChromatogram extends AbstractChromatogramWSD implements IVendorChromatogram {
+
+ @Override
+ public String getName() {
+
+ return extractNameFromFile("mzML HPLC-DAD");
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScan.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScan.java
new file mode 100644
index 0000000000..4ce80bd97e
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScan.java
@@ -0,0 +1,19 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.AbstractScanWSD;
+
+public class VendorScan extends AbstractScanWSD implements IVendorScan {
+
+ private static final long serialVersionUID = -4577378416225112598L;
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScanSignal.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScanSignal.java
new file mode 100644
index 0000000000..9699a1b36d
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/model/VendorScanSignal.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.model;
+
+import org.eclipse.chemclipse.wsd.model.core.AbstractScanSignalWSD;
+
+public class VendorScanSignal extends AbstractScanSignalWSD implements IVendorScanSignal {
+
+ private static final long serialVersionUID = -1231272201935129319L;
+
+ public VendorScanSignal() {
+
+ super();
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/preferences/PreferenceSupplier.java b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/preferences/PreferenceSupplier.java
new file mode 100644
index 0000000000..a221a46b8e
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.wsd.converter.supplier.mzml/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/preferences/PreferenceSupplier.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ * Philip Wenig - preference initializer
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.preferences;
+
+import org.eclipse.chemclipse.support.preferences.AbstractPreferenceSupplier;
+import org.eclipse.chemclipse.support.preferences.IPreferenceSupplier;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.Activator;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.io.XmlReader110;
+
+public class PreferenceSupplier extends AbstractPreferenceSupplier implements IPreferenceSupplier {
+
+ public static final String P_CHROMATOGRAM_VERSION_SAVE = "chromatogramVersionSave";
+ public static final String DEF_CHROMATOGRAM_VERSION_SAVE = XmlReader110.VERSION;
+ public static final String P_CHROMATOGRAM_SAVE_COMPRESSION = "chromatogramSaveCompression";
+ public static final boolean DEF_CHROMATOGRAM_SAVE_COMPRESSION = true;
+
+ public static IPreferenceSupplier INSTANCE() {
+
+ return INSTANCE(PreferenceSupplier.class);
+ }
+
+ @Override
+ public String getPreferenceNode() {
+
+ return Activator.getContext().getBundle().getSymbolicName();
+ }
+
+ @Override
+ public void initializeDefaults() {
+
+ putDefault(P_CHROMATOGRAM_VERSION_SAVE, DEF_CHROMATOGRAM_VERSION_SAVE);
+ putDefault(P_CHROMATOGRAM_SAVE_COMPRESSION, Boolean.toString(DEF_CHROMATOGRAM_SAVE_COMPRESSION));
+ }
+
+ public static String getChromatogramVersionSave() {
+
+ return INSTANCE().get(P_CHROMATOGRAM_VERSION_SAVE, DEF_CHROMATOGRAM_VERSION_SAVE);
+ }
+
+ public static String[][] getChromatogramVersions() {
+
+ String[][] elements = new String[1][2];
+ elements[0][0] = XmlReader110.VERSION;
+ elements[0][1] = XmlReader110.VERSION;
+ return elements;
+ }
+
+ public static boolean getChromatogramSaveCompression() {
+
+ return INSTANCE().getBoolean(P_CHROMATOGRAM_SAVE_COMPRESSION, DEF_CHROMATOGRAM_SAVE_COMPRESSION);
+ }
+}
\ No newline at end of file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.classpath b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.classpath
new file mode 100644
index 0000000000..81fe078c20
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.classpath
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.gitignore
new file mode 100644
index 0000000000..5e56e040ec
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.project b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.project
new file mode 100644
index 0000000000..e310f6aabe
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.project
@@ -0,0 +1,28 @@
+
+
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000000..801fab74d0
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/=utf8
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000000..9154beff79
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=17
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..5c44cb6b87
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/META-INF/MANIFEST.MF
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Automatic-Module-Name: org.eclipse.chemclipse.xxd.converter.supplier.mzml
+Eclipse-RegisterBuddy: org.eclipse.chemclipse.model, org.eclipse.chemclipse.msd.model
+Bundle-ManifestVersion: 2
+Bundle-Name: mzML
+Bundle-SymbolicName: org.eclipse.chemclipse.xxd.converter.supplier.mzml;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-Activator: org.eclipse.chemclipse.xxd.converter.supplier.mzml.Activator
+Bundle-Vendor: ChemClipse
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.chemclipse.logging;bundle-version="0.8.0",
+ org.eclipse.chemclipse.converter;bundle-version="0.8.0",
+ org.eclipse.chemclipse.model;bundle-version="0.8.0",
+ org.eclipse.chemclipse.support;bundle-version="0.8.0",
+ org.apache.commons.commons-codec;bundle-version="1.15.0",
+ org.apache.commons.lang3;bundle-version="3.13.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-17
+Bundle-ActivationPolicy: lazy
+Import-Package: jakarta.xml.bind,
+ jakarta.xml.bind.annotation,
+ jakarta.xml.bind.annotation.adapters
+Export-Package: org.eclipse.chemclipse.xxd.converter.supplier.mzml.converter,
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml.io,
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10,
+ org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties
new file mode 100644
index 0000000000..597fd0bfba
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/OSGI-INF/l10n/bundle_en.properties
@@ -0,0 +1 @@
+#Properties file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/build.properties b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/build.properties
new file mode 100644
index 0000000000..b26f6d363a
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/build.properties
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/
\ No newline at end of file
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/Activator.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/Activator.java
new file mode 100644
index 0000000000..1007e5df79
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/Activator.java
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2013, 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Dr. Philip Wenig - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ public static BundleContext getContext() {
+
+ return context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext bundleContext) throws Exception {
+
+ Activator.context = bundleContext;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext bundleContext) throws Exception {
+
+ Activator.context = null;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MagicNumberMatcher.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/converter/MagicNumberMatcher.java
similarity index 89%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MagicNumberMatcher.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/converter/MagicNumberMatcher.java
index cf5be0d3ca..a168d1ed44 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/MagicNumberMatcher.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/converter/MagicNumberMatcher.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2016, 2023 Lablicate GmbH.
+ * Copyright (c) 2016, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -10,7 +10,7 @@
* Dr. Philip Wenig - initial API and implementation
* Matthias Mailänder - auto detection for MALDI files
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.converter;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.converter;
import java.io.File;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader10.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader10.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader10.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader10.java
index 65313b0270..1afe2ce38d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader10.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader10.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021, 2023 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
import java.math.BigInteger;
import java.nio.ByteBuffer;
@@ -21,8 +21,8 @@
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.CVParamType;
public class BinaryReader10 {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader110.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader110.java
similarity index 73%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader110.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader110.java
index 233ecb810d..5566243553 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/BinaryReader110.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/BinaryReader110.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021, 2023 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
import java.math.BigInteger;
import java.nio.ByteBuffer;
@@ -21,8 +21,8 @@
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.BinaryDataArrayType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
public class BinaryReader110 {
@@ -46,31 +46,23 @@ public static Pair parseBinaryData(BinaryDataArrayType binaryD
boolean doublePrecision = false;
float multiplicator = 1f;
for(CVParamType cvParam : binaryDataArrayType.getCvParam()) {
- if(cvParam.getAccession().equals("MS:1000574")) {
- if(cvParam.getName().equals("zlib compression")) {
- compressed = true;
- }
+ if(cvParam.getAccession().equals("MS:1000574") && cvParam.getName().equals("zlib compression")) {
+ compressed = true;
}
if(cvParam.getAccession().equals("MS:1000521") && cvParam.getName().equals("32-bit float")) {
doublePrecision = false;
} else if(cvParam.getAccession().equals("MS:1000523") && cvParam.getName().equals("64-bit float")) {
doublePrecision = true;
}
- if(cvParam.getAccession().equals("MS:1000514")) {
- if(cvParam.getName().equals("m/z array")) {
- content = "m/z";
- }
- }
- if(cvParam.getAccession().equals("MS:1000515")) {
- if(cvParam.getName().equals("intensity array")) {
- content = "intensity";
- }
- }
- if(cvParam.getAccession().equals("MS:1000595")) {
- if(cvParam.getName().equals("time array")) {
- content = "time";
- multiplicator = XmlReader110.getTimeMultiplicator(cvParam);
- }
+ if(cvParam.getAccession().equals("MS:1000514") && cvParam.getName().equals("m/z array")) {
+ content = "m/z";
+ } else if(cvParam.getAccession().equals("MS:1000617") && cvParam.getName().equals("wavelength array")) {
+ content = "wavelength";
+ } else if(cvParam.getAccession().equals("MS:1000515") && cvParam.getName().equals("intensity array")) {
+ content = "intensity";
+ } else if(cvParam.getAccession().equals("MS:1000595") && cvParam.getName().equals("time array")) {
+ content = "time";
+ multiplicator = XmlReader110.getTimeMultiplicator(cvParam);
}
}
if(compressed) {
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/MetadataReader110.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/MetadataReader110.java
new file mode 100644
index 0000000000..863766dbb8
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/MetadataReader110.java
@@ -0,0 +1,66 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
+
+import org.eclipse.chemclipse.model.core.IChromatogram;
+import org.eclipse.chemclipse.support.history.EditInformation;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.DataProcessingType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.InstrumentConfigurationType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ProcessingMethodType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SampleListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SampleType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareType;
+
+public class MetadataReader110 {
+
+ public static IChromatogram> readMetadata(MzMLType mzML, IChromatogram> chromatogram) {
+
+ for(ParamGroupType contact : mzML.getFileDescription().getContact()) {
+ for(CVParamType cvParam : contact.getCvParam()) {
+ if(chromatogram.getOperator().isEmpty()) {
+ chromatogram.setOperator(cvParam.getValue());
+ } else {
+ chromatogram.setOperator(String.join(", ", chromatogram.getOperator(), cvParam.getValue()));
+ }
+ }
+ }
+ SampleListType sampleList = mzML.getSampleList();
+ if(sampleList != null) {
+ for(SampleType sample : sampleList.getSample()) {
+ if(sample.getName() != null) {
+ chromatogram.setSampleName(sample.getName());
+ }
+ }
+ }
+ for(InstrumentConfigurationType instrument : mzML.getInstrumentConfigurationList().getInstrumentConfiguration()) {
+ for(CVParamType cvParam : instrument.getCvParam()) {
+ if(cvParam.getAccession().equals("MS:1000554")) {
+ chromatogram.setInstrument(cvParam.getName());
+ }
+ }
+ }
+ for(DataProcessingType dataProcessing : mzML.getDataProcessingList().getDataProcessing()) {
+ for(ProcessingMethodType processingMethod : dataProcessing.getProcessingMethod()) {
+ SoftwareType software = (SoftwareType)processingMethod.getSoftwareRef();
+ for(CVParamType cvParam : processingMethod.getCvParam()) {
+ String operation = cvParam.getName();
+ String editor = software.getId() + " " + software.getVersion();
+ chromatogram.getEditHistory().add(new EditInformation(operation, editor));
+ }
+ }
+ }
+ return chromatogram;
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader10.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader10.java
similarity index 84%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader10.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader10.java
index a01bc9f953..dd5ecdcd73 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader10.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader10.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021, 2023 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
import java.io.File;
import java.io.IOException;
@@ -18,9 +18,9 @@
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model.ObjectFactory;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10.ObjectFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader110.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader110.java
similarity index 85%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader110.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader110.java
index 560039c21d..78154369cb 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/converter/XmlReader110.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlReader110.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2021, 2023 Lablicate GmbH.
+ * Copyright (c) 2021, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.converter;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
import java.io.File;
import java.io.IOException;
@@ -19,9 +19,9 @@
import javax.xml.parsers.ParserConfigurationException;
import org.eclipse.chemclipse.model.core.IChromatogramOverview;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.CVParamType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.MzMLType;
-import org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model.ObjectFactory;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.MzMLType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ObjectFactory;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlWriter110.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlWriter110.java
new file mode 100644
index 0000000000..500e0e1463
--- /dev/null
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/io/XmlWriter110.java
@@ -0,0 +1,242 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.io;
+
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.math.BigInteger;
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
+import java.nio.DoubleBuffer;
+import java.nio.FloatBuffer;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.zip.Deflater;
+
+import javax.xml.datatype.DatatypeConfigurationException;
+import javax.xml.datatype.DatatypeFactory;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+import org.apache.commons.codec.digest.DigestUtils;
+import org.eclipse.chemclipse.logging.core.Logger;
+import org.eclipse.chemclipse.model.core.IChromatogram;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.BinaryDataArrayType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVParamType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.CVType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.ParamGroupType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareListType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SoftwareType;
+import org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110.SourceFileType;
+import org.eclipse.core.runtime.IProduct;
+import org.eclipse.core.runtime.Platform;
+import org.osgi.framework.Version;
+
+import jakarta.xml.bind.DatatypeConverter;
+
+public class XmlWriter110 {
+
+ public static final CVType MS = createMS();
+ public static final CVType UO = createUO();
+ //
+ private static final Logger logger = Logger.getLogger(XmlWriter110.class);
+
+ public static ParamGroupType getOperator(IChromatogram> chromatogram) {
+
+ if(!chromatogram.getOperator().isEmpty()) {
+ ParamGroupType paramGroupType = new ParamGroupType();
+ CVParamType cvParam = new CVParamType();
+ cvParam.setCvRef(XmlWriter110.MS);
+ cvParam.setAccession("MS:1000586");
+ cvParam.setName("contact name");
+ cvParam.setValue(chromatogram.getOperator());
+ paramGroupType.getCvParam().add(cvParam);
+ return paramGroupType;
+ }
+ return null;
+ }
+
+ public static SoftwareListType createSoftwareList() {
+
+ SoftwareListType softwareList = new SoftwareListType();
+ softwareList.setCount(BigInteger.valueOf(1));
+ SoftwareType software = new SoftwareType();
+ IProduct product = Platform.getProduct();
+ software.setId("Unknown");
+ if(product != null) {
+ software.setId(product.getName());
+ Version version = product.getDefiningBundle().getVersion();
+ software.setVersion(version.getMajor() + "." + version.getMinor() + "." + version.getMicro());
+ if(product.getName().equals("ChemClipse")) {
+ CVParamType cvParamSoftware = new CVParamType();
+ cvParamSoftware.setCvRef(XmlWriter110.MS);
+ cvParamSoftware.setAccession("MS:1003376");
+ cvParamSoftware.setName("ChemClipse");
+ cvParamSoftware.setValue("");
+ software.getCvParam().add(cvParamSoftware);
+ }
+ if(product.getName().equals("OpenChrom")) {
+ CVParamType cvParamSoftware = new CVParamType();
+ cvParamSoftware.setCvRef(XmlWriter110.MS);
+ cvParamSoftware.setAccession("MS:1003377");
+ cvParamSoftware.setName("OpenChrom");
+ cvParamSoftware.setValue("");
+ software.getCvParam().add(cvParamSoftware);
+ }
+ }
+ softwareList.getSoftware().add(software);
+ return softwareList;
+ }
+
+ public static CVParamType createIntensityArrayType() {
+
+ CVParamType cvParamTotalSignals = new CVParamType();
+ cvParamTotalSignals.setCvRef(XmlWriter110.MS);
+ cvParamTotalSignals.setAccession("MS:1000515");
+ cvParamTotalSignals.setName("intensity array");
+ cvParamTotalSignals.setUnitCvRef(XmlWriter110.MS);
+ cvParamTotalSignals.setUnitAccession("MS:1000131");
+ cvParamTotalSignals.setUnitName("number of counts");
+ return cvParamTotalSignals;
+ }
+
+ public static CVParamType createRetentionTimeType() {
+
+ CVParamType cvParamRetentionTime = new CVParamType();
+ cvParamRetentionTime.setCvRef(XmlWriter110.MS);
+ cvParamRetentionTime.setAccession("MS:1000595");
+ cvParamRetentionTime.setName("time array");
+ cvParamRetentionTime.setUnitAccession("UO:0000010");
+ cvParamRetentionTime.setUnitName("second");
+ return cvParamRetentionTime;
+ }
+
+ public static XMLGregorianCalendar createDate(IChromatogram> chromatogram) throws DatatypeConfigurationException {
+
+ Date date = chromatogram.getDate();
+ if(date != null) {
+ GregorianCalendar calendar = new GregorianCalendar();
+ calendar.setTime(date);
+ return DatatypeFactory.newInstance().newXMLGregorianCalendar(calendar);
+ }
+ return null;
+ }
+
+ public static BinaryDataArrayType createBinaryData(float[] values, boolean compression) {
+
+ FloatBuffer floatBuffer = FloatBuffer.wrap(values);
+ ByteBuffer byteBuffer = ByteBuffer.allocate(floatBuffer.capacity() * Float.BYTES);
+ byteBuffer.order(ByteOrder.LITTLE_ENDIAN);
+ byteBuffer.asFloatBuffer().put(floatBuffer);
+ BinaryDataArrayType binaryDataArrayType = createBinaryDataArray(byteBuffer, compression);
+ CVParamType cvParamData = new CVParamType();
+ cvParamData.setCvRef(XmlWriter110.MS);
+ cvParamData.setAccession("MS:1000521");
+ cvParamData.setName("32-bit float");
+ binaryDataArrayType.getCvParam().add(cvParamData);
+ return binaryDataArrayType;
+ }
+
+ public static BinaryDataArrayType createBinaryData(double[] values, boolean compression) {
+
+ DoubleBuffer doubleBuffer = DoubleBuffer.wrap(values);
+ ByteBuffer byteBuffer = ByteBuffer.allocate(doubleBuffer.capacity() * Double.BYTES);
+ byteBuffer.order(ByteOrder.LITTLE_ENDIAN);
+ byteBuffer.asDoubleBuffer().put(doubleBuffer);
+ BinaryDataArrayType binaryDataArrayType = createBinaryDataArray(byteBuffer, compression);
+ CVParamType cvParamData = new CVParamType();
+ cvParamData.setCvRef(XmlWriter110.MS);
+ cvParamData.setAccession("MS:1000523");
+ cvParamData.setName("64-bit float");
+ binaryDataArrayType.getCvParam().add(cvParamData);
+ return binaryDataArrayType;
+ }
+
+ private static BinaryDataArrayType createBinaryDataArray(ByteBuffer byteBuffer, boolean compression) {
+
+ BinaryDataArrayType binaryDataArrayType = new BinaryDataArrayType();
+ if(compression) {
+ CVParamType cvParamCompression = new CVParamType();
+ cvParamCompression.setCvRef(XmlWriter110.MS);
+ cvParamCompression.setAccession("MS:1000574");
+ cvParamCompression.setName("zlib compression");
+ binaryDataArrayType.getCvParam().add(cvParamCompression);
+ Deflater compresser = new Deflater();
+ compresser.setInput(byteBuffer.array());
+ compresser.finish();
+ ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+ byte[] readBuffer = new byte[1024];
+ while(!compresser.finished()) {
+ int compressCount = compresser.deflate(readBuffer);
+ if(compressCount > 0) {
+ outputStream.write(readBuffer, 0, compressCount);
+ }
+ }
+ byte[] outputByteArray = outputStream.toByteArray();
+ String characters = DatatypeConverter.printBase64Binary(outputByteArray);
+ binaryDataArrayType.setEncodedLength(BigInteger.valueOf(characters.length()));
+ binaryDataArrayType.setBinary(outputByteArray);
+ compresser.end();
+ } else {
+ binaryDataArrayType.setBinary(byteBuffer.array());
+ }
+ return binaryDataArrayType;
+ }
+
+ private static CVType createMS() {
+
+ CVType cvTypeMS = new CVType();
+ cvTypeMS.setId("MS");
+ cvTypeMS.setFullName("Proteomics Standards Initiative Mass Spectrometry Ontology");
+ cvTypeMS.setVersion("4.1.123");
+ cvTypeMS.setURI("https://github.com/HUPO-PSI/psi-ms-CV/releases/download/v4.1.123/psi-ms.obo");
+ return cvTypeMS;
+ }
+
+ private static CVType createUO() {
+
+ CVType cvTypeUnit = new CVType();
+ cvTypeUnit.setId("UO");
+ cvTypeUnit.setFullName("Unit Ontology");
+ cvTypeUnit.setVersion("2023:05:23");
+ cvTypeUnit.setURI("https://raw.githubusercontent.com/bio-ontology-research-group/unit-ontology/v2023-05-23/unit-ontology.obo");
+ return cvTypeUnit;
+ }
+
+ public static SourceFileType createSourceFile(IChromatogram> chromatogram) {
+
+ File file = chromatogram.getFile();
+ SourceFileType sourceFile = new SourceFileType();
+ sourceFile.setLocation(file.getAbsolutePath());
+ sourceFile.setId(file.getName());
+ sourceFile.setName(file.getName());
+ //
+ CVParamType cvParamSHA1 = new CVParamType();
+ cvParamSHA1.setCvRef(XmlWriter110.MS);
+ cvParamSHA1.setAccession("MS:1000569");
+ cvParamSHA1.setName("SHA-1");
+ cvParamSHA1.setValue(calculateSHA1(file));
+ sourceFile.getCvParam().add(cvParamSHA1);
+ return sourceFile;
+ }
+
+ private static String calculateSHA1(File file) {
+
+ try (FileInputStream fis = new FileInputStream(file)) {
+ return DigestUtils.sha1Hex(fis);
+ } catch(IOException e) {
+ logger.warn(e);
+ }
+ return "";
+ }
+}
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionListType.java
index 076d633da0..4b71586696 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsListType.java
index 38f8e73324..3f17c0a514 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsType.java
index 79ff0f9164..bea7efa5ea 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionSettingsType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionSettingsType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionType.java
index 0d19ba35ff..4caf995b4d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/AcquisitionType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/AcquisitionType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayListType.java
index 3d72416d32..f02e3f4daa 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayType.java
index 906627d02a..00d82e7332 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/BinaryDataArrayType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/BinaryDataArrayType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVListType.java
index b6e406eafb..3f499d5ec3 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVParamType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVParamType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVParamType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVParamType.java
index 79b0d1db7e..f8eab017f2 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVParamType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVParamType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVType.java
index 3726b958da..20078d42fa 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/CVType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/CVType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramListType.java
index d8b1e201ae..374602848c 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramType.java
index 0c0fda0dd3..8a3b6173e7 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ChromatogramType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ChromatogramType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentListType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentListType.java
index d26e180675..a11faa8f73 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentType.java
similarity index 89%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentType.java
index f94169af7f..2d0dea871f 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ComponentType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ComponentType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingListType.java
index a854dd7752..81075d0150 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingType.java
index 6345bf6f3b..80247e43f7 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/DataProcessingType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/DataProcessingType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/FileDescriptionType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/FileDescriptionType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/FileDescriptionType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/FileDescriptionType.java
index 7c7b1dbb85..4559c996b5 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/FileDescriptionType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/FileDescriptionType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationListType.java
index e1924fe26f..78d898bcf3 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationType.java
index 5cf23555b8..a89d45e519 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/InstrumentConfigurationType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/InstrumentConfigurationType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/MzMLType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/MzMLType.java
similarity index 97%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/MzMLType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/MzMLType.java
index 936c4a882f..128bfe0f46 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/MzMLType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/MzMLType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.io.Serializable;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ObjectFactory.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ObjectFactory.java
similarity index 98%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ObjectFactory.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ObjectFactory.java
index cab09d6bab..6a0b3cdaf9 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ObjectFactory.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ObjectFactory.java
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import javax.xml.namespace.QName;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ParamGroupType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ParamGroupType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ParamGroupType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ParamGroupType.java
index 052622d86d..29982a6bbd 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ParamGroupType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ParamGroupType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorListType.java
index c00d1a6ab3..3f151c36d8 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorType.java
index 5a51c1486f..101392d669 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/PrecursorType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/PrecursorType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ProcessingMethodType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ProcessingMethodType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ProcessingMethodType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ProcessingMethodType.java
index b059078ab7..8f2b5fae43 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ProcessingMethodType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ProcessingMethodType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupListType.java
index b1a4e28955..436feff475 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupRefType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupRefType.java
index feb3cf997f..ec415bf493 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupType.java
index 0fe6b14ccc..58c99d4131 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ReferenceableParamGroupType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ReferenceableParamGroupType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/RunType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/RunType.java
similarity index 96%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/RunType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/RunType.java
index 8d1b9b8d3a..f7bf6b990d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/RunType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/RunType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import javax.xml.datatype.XMLGregorianCalendar;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleListType.java
index df12773697..0d4b2dc274 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleType.java
index bc5bbed8aa..11fbe9cc54 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SampleType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SampleType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanType.java
index ecdd3ba1cf..50bfae5d2d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowListType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowListType.java
index 48165ce69e..9f1f0e71a7 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowType.java
index 3c10096405..a09d1b908f 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/ScanWindowType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/ScanWindowType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SelectedIonListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SelectedIonListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SelectedIonListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SelectedIonListType.java
index d43b956df5..87d8b1cc8e 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SelectedIonListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SelectedIonListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareListType.java
index fe8df789e2..6a2c503ba5 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareParamType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareParamType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareParamType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareParamType.java
index 8becf8ece3..2df9c22829 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareParamType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareParamType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareRefType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareRefType.java
index 3ecb61f084..9851b67815 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareType.java
index 189b9dc76b..f5362a4a45 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SoftwareType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SoftwareType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileListType.java
index a80ac60ccf..5cea7ebc1d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefListType.java
index 563dc3c781..2877a2129b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefType.java
index 0ee51198b9..efc9210388 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileType.java
index 257d5e098a..7122372976 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SourceFileType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SourceFileType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumDescriptionType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumDescriptionType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumDescriptionType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumDescriptionType.java
index 64a8451a4f..b236634ecb 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumDescriptionType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumDescriptionType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumListType.java
index 71df8744bb..57d58f44d1 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumType.java
similarity index 96%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumType.java
index b74449e34d..1ccb399014 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/SpectrumType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/SpectrumType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/TargetListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/TargetListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/TargetListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/TargetListType.java
index 53bf430013..73a3f0f5bb 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/TargetListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/TargetListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/UserParamType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/UserParamType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/UserParamType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/UserParamType.java
index 36ae4c2587..c3d17cff16 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v10/model/UserParamType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v10/UserParamType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v10.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v10;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/AnalyzerComponentType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/AnalyzerComponentType.java
similarity index 86%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/AnalyzerComponentType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/AnalyzerComponentType.java
index ea59783589..06589c7582 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/AnalyzerComponentType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/AnalyzerComponentType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayListType.java
index c3760f55a3..419a371dcd 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayType.java
index becee5992e..ea90e2fa78 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/BinaryDataArrayType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/BinaryDataArrayType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2022 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVListType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVListType.java
index 8e986eacad..831c8cafb0 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVParamType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVParamType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVParamType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVParamType.java
index 121d83ac19..8aa71b2c27 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVParamType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVParamType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVType.java
index b673b41661..a5f6aaa322 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/CVType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/CVType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramListType.java
index ba6a26552c..b9bb29753d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramType.java
index 9123200c33..29a8fdcfe2 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ChromatogramType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ChromatogramType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentListType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentListType.java
index 32ab427bc4..d6f7bafa9c 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentType.java
index 2301e7c477..fc76ca2232 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ComponentType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ComponentType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingListType.java
index fb7edbbf46..a5d29896a7 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingType.java
index 6673987eca..15ea6faa64 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DataProcessingType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DataProcessingType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DetectorComponentType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DetectorComponentType.java
similarity index 86%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DetectorComponentType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DetectorComponentType.java
index 3a6fe1cfac..d265c88df0 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/DetectorComponentType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/DetectorComponentType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/FileDescriptionType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/FileDescriptionType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/FileDescriptionType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/FileDescriptionType.java
index cc427cf43c..04e9769874 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/FileDescriptionType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/FileDescriptionType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationListType.java
index d8b64b9993..7cc4ad32bf 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationType.java
index 718c995ad9..7065f97dd1 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/InstrumentConfigurationType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/InstrumentConfigurationType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/MzMLType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/MzMLType.java
similarity index 96%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/MzMLType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/MzMLType.java
index 75a579aed3..3644729530 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/MzMLType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/MzMLType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.io.Serializable;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ObjectFactory.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ObjectFactory.java
similarity index 97%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ObjectFactory.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ObjectFactory.java
index 0d7a87ebe7..428e4e2047 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ObjectFactory.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ObjectFactory.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlRegistry;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ParamGroupType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ParamGroupType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ParamGroupType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ParamGroupType.java
index 4aaeb13cdb..9140c31dd0 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ParamGroupType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ParamGroupType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorListType.java
index edbcd3513c..954ebf9937 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorType.java
similarity index 95%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorType.java
index 44fae0b282..6ee31f6a87 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/PrecursorType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/PrecursorType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProcessingMethodType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProcessingMethodType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProcessingMethodType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProcessingMethodType.java
index 2dc74d94b0..5e7a3bd258 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProcessingMethodType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProcessingMethodType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductListType.java
index 22fc0faee8..810c0d7538 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductType.java
similarity index 88%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductType.java
index 4462dbfd5f..da23d6cd50 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ProductType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ProductType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupListType.java
index b5a90df683..77752051e3 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupRefType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupRefType.java
index 3e680a1260..6d895abfbe 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupType.java
index 99195b1d5c..727f5520c1 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ReferenceableParamGroupType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ReferenceableParamGroupType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/RunType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/RunType.java
similarity index 96%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/RunType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/RunType.java
index 3a23fc36d4..30175d720d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/RunType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/RunType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import javax.xml.datatype.XMLGregorianCalendar;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleListType.java
index 1d5b49f69f..9a04694a01 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleType.java
index f4f7238e38..c6f24e6a5a 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SampleType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SampleType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanListType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanListType.java
index 6898a1cfb9..8748390757 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsListType.java
index 3f98dd9cf6..497cc6df01 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsType.java
index 50ba9b8133..4fb1a1461e 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanSettingsType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanSettingsType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanType.java
index 9d371eedc0..a395dabe87 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanWindowListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanWindowListType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanWindowListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanWindowListType.java
index 9847b5c4df..a5b5ae2f3b 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/ScanWindowListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/ScanWindowListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.util.ArrayList;
import java.util.List;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SelectedIonListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SelectedIonListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SelectedIonListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SelectedIonListType.java
index 06f479f471..b1d68d8cd1 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SelectedIonListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SelectedIonListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareListType.java
index b592007cc7..59e5ed7ee3 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareRefType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareRefType.java
index c9598e2b5c..7f7bdb891f 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareType.java
index 7d011dde56..2f0914b858 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SoftwareType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SoftwareType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceComponentType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceComponentType.java
similarity index 86%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceComponentType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceComponentType.java
index f97394aea1..9d33bb5749 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceComponentType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceComponentType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileListType.java
index 4f62ff425d..1f486f9b42 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefListType.java
similarity index 91%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefListType.java
index 8677f76bc0..ab83f59e04 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefType.java
similarity index 90%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefType.java
index e4dc42ce64..b00a6ac8bb 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileRefType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileRefType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileType.java
index dd5a53fa68..d55e5de7f8 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SourceFileType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SourceFileType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumListType.java
similarity index 93%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumListType.java
index 08a3523f61..bd0f892375 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2023 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumType.java
similarity index 96%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumType.java
index be073237bf..2ad932fb19 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/SpectrumType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/SpectrumType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2022 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/TargetListType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/TargetListType.java
similarity index 92%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/TargetListType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/TargetListType.java
index c070a33dce..fa5cba59e7 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/TargetListType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/TargetListType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import java.math.BigInteger;
import java.util.ArrayList;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/UserParamType.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/UserParamType.java
similarity index 94%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/UserParamType.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/UserParamType.java
index b82274c921..97983ec72d 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/UserParamType.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/UserParamType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015, 2018 Lablicate GmbH.
+ * Copyright (c) 2015, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,7 @@
* Contributors:
* Dr. Philip Wenig - initial API and implementation
*******************************************************************************/
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/package-info.java b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/package-info.java
similarity index 87%
rename from chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/package-info.java
rename to chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/package-info.java
index 1bc0caedc1..dc9be0f551 100644
--- a/chemclipse/plugins/org.eclipse.chemclipse.msd.converter.supplier.mzml/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/internal/v110/model/package-info.java
+++ b/chemclipse/plugins/org.eclipse.chemclipse.xxd.converter.supplier.mzml/src/org/eclipse/chemclipse/xxd/converter/supplier/mzml/model/v110/package-info.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2023 Lablicate GmbH.
+ * Copyright (c) 2023, 2024 Lablicate GmbH.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -10,7 +10,7 @@
* Matthias Mailänder - initial API and implementation
*******************************************************************************/
@XmlSchema(namespace = "http://psi.hupo.org/ms/mzml", elementFormDefault = XmlNsForm.QUALIFIED, xmlns = {@XmlNs(namespaceURI = "http://psi.hupo.org/ms/mzml", prefix = "")})
-package org.eclipse.chemclipse.msd.converter.supplier.mzml.internal.v110.model;
+package org.eclipse.chemclipse.xxd.converter.supplier.mzml.model.v110;
import jakarta.xml.bind.annotation.XmlNs;
import jakarta.xml.bind.annotation.XmlNsForm;
diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverterTinyProteoWizard10_ITest.java b/chemclipse/tests/org.eclipse.chemclipse.msd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverterTinyProteoWizard10_ITest.java
index 7b9e6b991e..ecdf386e1d 100644
--- a/chemclipse/tests/org.eclipse.chemclipse.msd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverterTinyProteoWizard10_ITest.java
+++ b/chemclipse/tests/org.eclipse.chemclipse.msd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/msd/converter/supplier/mzml/converter/ChromatogramImportConverterTinyProteoWizard10_ITest.java
@@ -96,7 +96,7 @@ public void testMaxIonAbundance() {
}
@Test
- public void testFirstScan() {
+ public void testFirstScan() {
IRegularMassSpectrum massSpectrum = (IRegularMassSpectrum)chromatogram.getScan(1);
assertEquals("Ions", 15, massSpectrum.getNumberOfIons());
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.classpath b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.classpath
new file mode 100644
index 0000000000..81fe078c20
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.classpath
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.gitignore b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.gitignore
new file mode 100644
index 0000000000..5e56e040ec
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.gitignore
@@ -0,0 +1 @@
+/bin
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.project b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.project
new file mode 100644
index 0000000000..480971910c
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.project
@@ -0,0 +1,28 @@
+
+
+ org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.core.resources.prefs b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000000..801fab74d0
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/=utf8
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.jdt.core.prefs b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000000..9154beff79
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=17
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/META-INF/MANIFEST.MF b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..b5ea65b740
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Automatic-Module-Name: org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test
+Bundle-ManifestVersion: 2
+Bundle-Name: mzML DAD Test
+Bundle-SymbolicName: org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test
+Bundle-Version: 0.9.0.qualifier
+Bundle-Vendor: ChemClipse
+Fragment-Host: org.eclipse.chemclipse.wsd.converter.supplier.mzml;bundle-version="0.8.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-17
+Require-Bundle: org.junit;bundle-version="4.11.0",
+ org.eclipse.chemclipse.rcp.app.test;bundle-version="0.9.0",
+ com.sun.xml.bind.jaxb-core;bundle-version="4.0.1",
+ com.sun.xml.bind.jaxb-impl;bundle-version="4.0.1",
+ org.glassfish.hk2.osgi-resource-locator;bundle-version="1.0.3"
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/build.properties b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/build.properties
new file mode 100644
index 0000000000..34d2e4d2da
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/build.properties
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/TestPathHelper.java b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/TestPathHelper.java
new file mode 100644
index 0000000000..8102b3efb8
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/TestPathHelper.java
@@ -0,0 +1,17 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml;
+
+public class TestPathHelper extends PathResolver {
+
+ public static final String TESTFILE_PDA_HANDCRAFTED = "testData/PDA.mzML";
+}
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverterHandCrafted110_ITest.java b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverterHandCrafted110_ITest.java
new file mode 100644
index 0000000000..1744bfb68a
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/src/org/eclipse/chemclipse/wsd/converter/supplier/mzml/converter/ChromatogramImportConverterHandCrafted110_ITest.java
@@ -0,0 +1,107 @@
+/*******************************************************************************
+ * Copyright (c) 2024 Lablicate GmbH.
+ *
+ * All rights reserved.
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthias Mailänder - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.chemclipse.wsd.converter.supplier.mzml.converter;
+
+import java.io.File;
+
+import org.eclipse.chemclipse.processing.core.IProcessingInfo;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.TestPathHelper;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.IVendorChromatogram;
+import org.eclipse.chemclipse.wsd.converter.supplier.mzml.model.VendorChromatogram;
+import org.eclipse.chemclipse.wsd.model.core.IChromatogramWSD;
+import org.eclipse.chemclipse.wsd.model.core.IScanWSD;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.junit.Test;
+
+import junit.framework.TestCase;
+
+public class ChromatogramImportConverterHandCrafted110_ITest extends TestCase {
+
+ private IVendorChromatogram chromatogram;
+
+ @Override
+ protected void setUp() throws Exception {
+
+ super.setUp();
+ File importFile = new File(TestPathHelper.getAbsolutePath(TestPathHelper.TESTFILE_PDA_HANDCRAFTED));
+ ChromatogramImportConverter converter = new ChromatogramImportConverter();
+ IProcessingInfo processingInfo = converter.convert(importFile, new NullProgressMonitor());
+ chromatogram = (VendorChromatogram)processingInfo.getProcessingResult();
+ }
+
+ @Test
+ public void testSample() {
+
+ assertEquals("Sample1", chromatogram.getSampleName());
+ }
+
+ @Test
+ public void testOperator() {
+
+ assertEquals("William Pennington, Higglesworth University, 12 Higglesworth Avenue, 12045, HI, USA, http://www.higglesworth.edu/, wpennington@higglesworth.edu, dort, Drek'Thar, da", chromatogram.getOperator());
+ }
+
+ @Test
+ public void testEditHistory() {
+
+ assertEquals("Conversion to mzML", chromatogram.getEditHistory().get(0).getDescription());
+ }
+
+ @Test
+ public void testNumberOfScans() {
+
+ assertEquals("NumberOfScans", 15, chromatogram.getNumberOfScans());
+ }
+
+ @Test
+ public void testStartRetentionTime() {
+
+ assertEquals("Start RT", 0, chromatogram.getStartRetentionTime());
+ }
+
+ @Test
+ public void testStopRetentionTime() {
+
+ assertEquals("Stop RT", 14000, chromatogram.getStopRetentionTime());
+ }
+
+ @Test
+ public void testTotalSignal() {
+
+ assertEquals("Total Signal", 225.0f, chromatogram.getTotalSignal());
+ }
+
+ @Test
+ public void testMaxAbsorption() {
+
+ assertEquals("Max Signal", 120.0f, chromatogram.getMaxSignal());
+ }
+
+ @Test
+ public void testScans() {
+
+ IScanWSD pdaSpectrum = (IScanWSD)chromatogram.getScan(1);
+ assertEquals("Scans", 15, pdaSpectrum.getNumberOfScanSignals());
+ assertEquals(15f, pdaSpectrum.getScanSignal(0).getAbsorbance());
+ assertEquals(0f, pdaSpectrum.getScanSignal(0).getWavelength());
+ assertEquals(14f, pdaSpectrum.getScanSignal(1).getAbsorbance());
+ assertEquals(1f, pdaSpectrum.getScanSignal(1).getWavelength());
+ assertEquals(13f, pdaSpectrum.getScanSignal(2).getAbsorbance());
+ assertEquals(2f, pdaSpectrum.getScanSignal(2).getWavelength());
+ assertEquals(12f, pdaSpectrum.getScanSignal(3).getAbsorbance());
+ assertEquals(3f, pdaSpectrum.getScanSignal(3).getWavelength());
+ assertEquals(11f, pdaSpectrum.getScanSignal(4).getAbsorbance());
+ assertEquals(4f, pdaSpectrum.getScanSignal(4).getWavelength());
+ assertEquals(10f, pdaSpectrum.getScanSignal(5).getAbsorbance());
+ assertEquals(5f, pdaSpectrum.getScanSignal(5).getWavelength());
+ }
+}
diff --git a/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/testData/PDA.mzML b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/testData/PDA.mzML
new file mode 100644
index 0000000000..9e8f5f583e
--- /dev/null
+++ b/chemclipse/tests/org.eclipse.chemclipse.wsd.converter.supplier.mzml.fragment.test/testData/PDA.mzML
@@ -0,0 +1,190 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxA
+
+
+
+
+
+
+ AAAAAAAALkAAAAAAAAAsQAAAAAAAACpAAAAAAAAAKEAAAAAAAAAmQAAAAAAAACRAAAAAAAAAIkAAAAAAAAAgQAAAAAAAABxAAAAAAAAAGEAAAAAAAAAUQAAAAAAAABBAAAAAAAAACEAAAAAAAAAAQAAAAAAAAPA/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxA
+
+
+
+
+
+ AAAAAAAALkAAAAAAAAAsQAAAAAAAACpAAAAAAAAAKEAAAAAAAAAmQAAAAAAAACRAAAAAAAAAIkAAAAAAAAAgQAAAAAAAABxAAAAAAAAAGEAAAAAAAAAUQAAAAAAAABBAAAAAAAAACEAAAAAAAAAAQAAAAAAAAPA/
+
+
+
+
+
+
+
+