public static ControlledVocabulary Get() { ControlledVocabulary vocabulary = new ControlledVocabulary("Proteomics Standards Initiative Quality Control Ontology", "https://github.com/HUPO-PSI/mzQC/raw/master/cv/qc-cv.obo", "0.1.0"); vocabulary.AddTerms(new Term[] { new Term(vocabulary, "QC:4000053", "Quameter metric: RT-Duration"), new Term(vocabulary, "QC:02", "SwaMe metric: swathSizeDifference"), new Term(vocabulary, "QC:4000060", "Quameter metric: MS2-Count"), new Term(vocabulary, "QC:04", "SwaMe metric: NumOfSwaths"), new Term(vocabulary, "QC:05", "SwaMe metric: Target mz"), new Term(vocabulary, "QC:06", "SwaMe metric: TotalMS2IonCount"), new Term(vocabulary, "QC:07", "SwaMe metric: MS2Density50"), new Term(vocabulary, "QC:08", "SwaMe metric: MS2DensityIQR"), new Term(vocabulary, "QC:4000059", "Quameter metric: MS1-Count"), new Term(vocabulary, "QC:09", "SwaMe metric: scansPerSwathGroup"), new Term(vocabulary, "QC:10", "SwaMe metric: AvgMzRange"), new Term(vocabulary, "QC:11", "SwaMe metric: SwathProportionOfTotalTIC"), new Term(vocabulary, "QC:12", "SwaMe metric: swDensity50"), new Term(vocabulary, "QC:13", "SwaMe metric: swDensityIQR"), new Term(vocabulary, "QC:14", "SwaMe metric: Peakwidths"), new Term(vocabulary, "QC:15", "SwaMe metric: PeakCapacity"), new Term(vocabulary, "QC:24", "SwaMe metric: TailingFactor"), new Term(vocabulary, "QC:XXXXXXXX", "SwaMe metric: MS2PeakPrecision"), new Term(vocabulary, "QC:16", "SwaMe metric: MS1PeakPrecision"), new Term(vocabulary, "QC:17", "SwaMe metric: DeltaTICAverage"), new Term(vocabulary, "QC:18", "SwaMe metric: DeltaTICIQR"), new Term(vocabulary, "QC:19", "SwaMe metric: AvgScanTime"), new Term(vocabulary, "QC:20", "SwaMe metric: MS2Density"), new Term(vocabulary, "QC:21", "SwaMe metric: MS1Density"), new Term(vocabulary, "QC:22", "SwaMe metric: MS2TICTotal"), new Term(vocabulary, "QC:23", "SwaMe metric: MS1TICTotal"), new Term(vocabulary, "QC:99", "Prognosticator Metric: MS1TICQuartiles"), new Term(vocabulary, "QC:98", "Prognosticator Metric: MS2TICQuartiles"), new Term(vocabulary, "QC:97", "Prognosticator Metric: MS1TIC"), new Term(vocabulary, "QC:96", "Prognosticator Metric: MS2TIC"), new Term(vocabulary, "QC:95", "Prognosticator Metric: MS1BPC"), new Term(vocabulary, "QC:94", "Prognosticator Metric: MS2BPC"), new Term(vocabulary, "QC:93", "Prognosticator Metric: CombinedTIC"), new Term(vocabulary, "QC:92", "Prognosticator Metric: MS1:MS2 ratio"), new Term(vocabulary, "QC:91", "Prognosticator Metric: MS1 weighted median skew"), new Term(vocabulary, "QC:90", "Prognosticator Metric: MS2 weighted median skew"), new Term(vocabulary, "QC:89", "Prognosticator Metric: MeanIrtMassError"), new Term(vocabulary, "QC:88", "Prognosticator Metric: MaxIrtMassError"), new Term(vocabulary, "QC:87", "Prognosticator Metric: IrtPeptideFoundProportion"), new Term(vocabulary, "QC:86", "Prognosticator Metric: IrtPeptides"), new Term(vocabulary, "QC:85", "Prognosticator Metric: IrtPeptidesFound"), new Term(vocabulary, "QC:84", "Prognosticator Metric: IrtSpread"), new Term(vocabulary, "QC:83", "Prognosticator Metric: MS1TICQuartilesByRT"), new Term(vocabulary, "QC:82", "Prognosticator Metric: MS2TICQuartilesByRT"), new Term(vocabulary, "QC:81", "Prognosticator Metric: IrtOrderedness") }); return(vocabulary); }
public static ControlledVocabulary Get() { ControlledVocabulary vocabulary = new ControlledVocabulary("Unit Ontology", "http://ontologies.berkeleybop.org/uo.obo", "releases/2020-03-10"); vocabulary.AddTerms(new Term[] { new Term(vocabulary, "UO:0000189", "count"), new Term(vocabulary, "UO:0000010", "second"), new Term(vocabulary, "UO:0010006", "ratio") // TODO: What's the difference between this and UO:0000190? }); return(vocabulary); }
public static ControlledVocabulary Get() { ControlledVocabulary vocabulary = new ControlledVocabulary("Proteomics Standards Initiative Mass Spectrometry Ontology", "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/master/psi-ms.obo", "4.1.7"); vocabulary.AddTerms(new Term[] { new Term(vocabulary, "XXXXXXXXXXXXXX", "SwaMe"), new Term(vocabulary, "MS:1000040", "m/z"), new Term(vocabulary, "MS:1000042", "Peak Intensity"), new Term(vocabulary, "MS:1000569", "SHA-1"), new Term(vocabulary, "MS:1000584", "mzML format"), new Term(vocabulary, "MS:1000747", "completion time") }); return(vocabulary); }
public MzqcWriter() { uo = cvLibrary.RegisterControlledVocabulary(UnitOntology.Get(), "UO"); ms = cvLibrary.RegisterControlledVocabulary(MSVocabulary.Get(), "MS"); qc = cvLibrary.RegisterControlledVocabulary(MzQCVocabulary.Get(), "QC"); JsonClasses.Unit Count = ToUnit(uo, "UO:0000189"); JsonClasses.Unit Intensity = ToUnit(ms, "MS:1000042"); JsonClasses.Unit Mz = ToUnit(ms, "MS:1000040"); JsonClasses.Unit Ratio = ToUnit(uo, "UO:0010006"); // TODO: What's the difference between this and UO:0000190? JsonClasses.Unit Second = ToUnit(uo, "UO:0000010"); QualityParametersByAccession = new JsonClasses.QualityParameters[] { ToQualityParameters(qc, "QC:4000053", Second), ToQualityParameters(qc, "QC:02", Mz), ToQualityParameters(qc, "QC:4000060", Count), ToQualityParameters(qc, "QC:04", Count), ToQualityParameters(qc, "QC:05", Mz), ToQualityParameters(qc, "QC:06", Count), ToQualityParameters(qc, "QC:07", Count), ToQualityParameters(qc, "QC:08", Count), ToQualityParameters(qc, "QC:4000059", Count), ToQualityParameters(qc, "QC:09", Count), ToQualityParameters(qc, "QC:10", Mz), ToQualityParameters(qc, "QC:11", Ratio), ToQualityParameters(qc, "QC:12", Count), ToQualityParameters(qc, "QC:13", Count), ToQualityParameters(qc, "QC:14", Second), ToQualityParameters(qc, "QC:15", Count), ToQualityParameters(qc, "QC:24", Count), ToQualityParameters(qc, "QC:XXXXXXXX", Mz), ToQualityParameters(qc, "QC:16", Mz), ToQualityParameters(qc, "QC:17", Intensity), ToQualityParameters(qc, "QC:18", Intensity), ToQualityParameters(qc, "QC:19", Second), ToQualityParameters(qc, "QC:20", Count), ToQualityParameters(qc, "QC:21", Count), ToQualityParameters(qc, "QC:22", Count), ToQualityParameters(qc, "QC:23", Count), ToQualityParameters(qc, "QC:99", Count), ToQualityParameters(qc, "QC:98", Count), ToQualityParameters(qc, "QC:97", Count), ToQualityParameters(qc, "QC:96", Count), ToQualityParameters(qc, "QC:95", Count), ToQualityParameters(qc, "QC:94", Count), ToQualityParameters(qc, "QC:93", Count), ToQualityParameters(qc, "QC:92", Count), ToQualityParameters(qc, "QC:91", Count), ToQualityParameters(qc, "QC:90", Count), ToQualityParameters(qc, "QC:89", Count), ToQualityParameters(qc, "QC:88", Count), ToQualityParameters(qc, "QC:87", Count), ToQualityParameters(qc, "QC:86", Count), ToQualityParameters(qc, "QC:85", Count), ToQualityParameters(qc, "QC:84", Count), ToQualityParameters(qc, "QC:83", Count), ToQualityParameters(qc, "QC:82", Count), ToQualityParameters(qc, "QC:81", Count) } .ToDictionary(qp => qp.accession); }
private JsonClasses.QualityParameters ToQualityParameters(ControlledVocabulary cv, Term term, JsonClasses.Unit unit) => new JsonClasses.QualityParameters(cv.PrimaryNamespace, term.Id, term.Name, unit, null);
private JsonClasses.NUV ToNUV(ControlledVocabulary controlledVocabulary) => new JsonClasses.NUV() { name = controlledVocabulary.Name, uri = controlledVocabulary.Url, version = controlledVocabulary.Version };
private JsonClasses.FileProperties ToFileProperties(ControlledVocabulary cv, Term term, string value) => new JsonClasses.FileProperties(cv.PrimaryNamespace, term.Id, term.Name, value);
private JsonClasses.QualityParameters ToQualityParameters(ControlledVocabulary cv, string id, JsonClasses.Unit unit) => ToQualityParameters(cv, cv.GetById(id), unit);
private JsonClasses.FileProperties ToFileProperties(ControlledVocabulary cv, string id, string value) => ToFileProperties(cv, cv.GetById(id), value);
private JsonClasses.FileFormat ToFileFormat(ControlledVocabulary cv, Term term) => new JsonClasses.FileFormat(cv.PrimaryNamespace, term.Id, term.Name);
private JsonClasses.FileFormat ToFileFormat(ControlledVocabulary cv, string id) => ToFileFormat(cv, cv.GetById(id));
private JsonClasses.Unit ToUnit(ControlledVocabulary cv, Term term) => new JsonClasses.Unit(cv.PrimaryNamespace, term.Id, term.Name);
private JsonClasses.Unit ToUnit(ControlledVocabulary cv, string id) => ToUnit(cv, cv.GetById(id));