diff --git a/pom.xml b/pom.xml index c1c22b4..d333880 100644 --- a/pom.xml +++ b/pom.xml @@ -127,6 +127,12 @@ 3.1.0 + + + org.yaml + snakeyaml + + diff --git a/src/main/java/nl/esciencecenter/controller/AlternativesController.java b/src/main/java/nl/esciencecenter/controller/AlternativesController.java new file mode 100644 index 0000000..1c7d052 --- /dev/null +++ b/src/main/java/nl/esciencecenter/controller/AlternativesController.java @@ -0,0 +1,71 @@ +package nl.esciencecenter.controller; + +import java.io.IOException; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import nl.esciencecenter.controller.dto.ParseResponse; +import nl.esciencecenter.restape.CwlParser; +import nl.esciencecenter.restape.EdamLabels; + +@RestController +@RequestMapping("/alternatives") +public class AlternativesController { + + @Autowired + private EdamLabels edamLabels; + + /** + * Parses a CWL v1.2 workflow and returns its DAG representation plus + * workflow-level I/O terms for use as APE synthesis constraints. + */ + @PostMapping(value = "/parse", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) + @Operation( + summary = "Parse a CWL workflow file", + description = "Accepts a CWL v1.2 Workflow file as multipart/form-data and returns a " + + "graph-optimised representation: tool nodes, data-flow edges, and the " + + "workflow-level input/output EDAM terms.", + tags = {"Alternatives"}, + responses = { + @ApiResponse(responseCode = "200", + description = "Successful operation. Graph representation of the CWL workflow is returned.", + content = @Content( + schema = @Schema(implementation = ParseResponse.class), + mediaType = MediaType.APPLICATION_JSON_VALUE)), + @ApiResponse(responseCode = "400", description = "Invalid or unsupported CWL file") + }) + public ResponseEntity parseCwl( + @RequestParam("cwl_file") MultipartFile cwlFile) throws IOException { + edamLabels.ensureLoaded(); + ParseResponse response = CwlParser.parse(cwlFile.getInputStream(), edamLabels::resolve); + return ResponseEntity.ok().contentType(MediaType.APPLICATION_JSON).body(response); + } + + @ExceptionHandler(IllegalArgumentException.class) + public ResponseEntity handleIllegalArgument(IllegalArgumentException e) { + return ResponseEntity.badRequest().body(e.getMessage()); + } + + @ExceptionHandler(IOException.class) + public ResponseEntity handleIOException(IOException e) { + return ResponseEntity.badRequest().body(e.getMessage()); + } + + @ExceptionHandler(Exception.class) + public ResponseEntity handleAny(Exception e) { + return ResponseEntity.internalServerError() + .body(e.getClass().getSimpleName() + ": " + e.getMessage()); + } +} diff --git a/src/main/java/nl/esciencecenter/controller/dto/GraphEdge.java b/src/main/java/nl/esciencecenter/controller/dto/GraphEdge.java new file mode 100644 index 0000000..c177f8d --- /dev/null +++ b/src/main/java/nl/esciencecenter/controller/dto/GraphEdge.java @@ -0,0 +1,11 @@ +package nl.esciencecenter.controller.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class GraphEdge { + private final String source; + private final String target; +} diff --git a/src/main/java/nl/esciencecenter/controller/dto/GraphNode.java b/src/main/java/nl/esciencecenter/controller/dto/GraphNode.java new file mode 100644 index 0000000..a826440 --- /dev/null +++ b/src/main/java/nl/esciencecenter/controller/dto/GraphNode.java @@ -0,0 +1,21 @@ +package nl.esciencecenter.controller.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class GraphNode { + private final String id; + private final String label; + private final NodeType type; + + /** + * Kind of node in the workflow graph. Constants are lowercase so Jackson + * serialises them as {@code "input"}/{@code "tool"}/{@code "output"} for the + * frontend (matching the existing {@code ImageFormat} enum convention). + */ + public enum NodeType { + input, tool, output + } +} diff --git a/src/main/java/nl/esciencecenter/controller/dto/ParseResponse.java b/src/main/java/nl/esciencecenter/controller/dto/ParseResponse.java new file mode 100644 index 0000000..7f05eef --- /dev/null +++ b/src/main/java/nl/esciencecenter/controller/dto/ParseResponse.java @@ -0,0 +1,15 @@ +package nl.esciencecenter.controller.dto; + +import java.util.List; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class ParseResponse { + private final List nodes; + private final List edges; + private final List inputs; + private final List outputs; +} diff --git a/src/main/java/nl/esciencecenter/controller/dto/TaxonomyElem.java b/src/main/java/nl/esciencecenter/controller/dto/TaxonomyElem.java index 009cfa7..1521c7b 100644 --- a/src/main/java/nl/esciencecenter/controller/dto/TaxonomyElem.java +++ b/src/main/java/nl/esciencecenter/controller/dto/TaxonomyElem.java @@ -1,16 +1,18 @@ package nl.esciencecenter.controller.dto; +import com.fasterxml.jackson.annotation.JsonInclude; + import lombok.AllArgsConstructor; import lombok.NoArgsConstructor; /** * This class represents a single element of the taxonomy. - * TODO: This class is not used at the moment, but it is a good idea to use it - * in the future. - * + * Used for taxonomy tree responses as well as for the flat input/output EDAM + * terms of a parsed workflow, where only {@code id} and {@code label} are set. */ @NoArgsConstructor @AllArgsConstructor +@JsonInclude(JsonInclude.Include.NON_NULL) public class TaxonomyElem { public String id; public String label; diff --git a/src/main/java/nl/esciencecenter/restape/CwlParser.java b/src/main/java/nl/esciencecenter/restape/CwlParser.java new file mode 100644 index 0000000..8afebd2 --- /dev/null +++ b/src/main/java/nl/esciencecenter/restape/CwlParser.java @@ -0,0 +1,178 @@ +package nl.esciencecenter.restape; + +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.function.UnaryOperator; + +import org.yaml.snakeyaml.LoaderOptions; +import org.yaml.snakeyaml.Yaml; +import org.yaml.snakeyaml.constructor.SafeConstructor; + +import nl.esciencecenter.controller.dto.GraphEdge; +import nl.esciencecenter.controller.dto.GraphNode; +import nl.esciencecenter.controller.dto.ParseResponse; +import nl.esciencecenter.controller.dto.TaxonomyElem; + +/** + * Transforms a CWL v1.2 Workflow document into the graph-optimised ParseResponse. + */ +public class CwlParser { + + private CwlParser() {} + + /** + * Parses a CWL v1.2 Workflow from the given stream and returns the full DAG + * including input and output data nodes. + * + * @throws IllegalArgumentException if the document fails validation or is structurally incomplete + * @throws IOException if the stream cannot be read + */ + @SuppressWarnings("unchecked") + public static ParseResponse parse(InputStream inputStream, UnaryOperator labelResolver) throws IOException { + Yaml yaml = new Yaml(new SafeConstructor(new LoaderOptions())); + Map cwl; + try { + cwl = yaml.load(inputStream); + } catch (Exception e) { + throw new IllegalArgumentException("CWL file could not be parsed as YAML: " + e.getMessage()); + } + if (cwl == null) { + throw new IllegalArgumentException("CWL file is empty."); + } + + // Step 1 – Validate + validateMetadata(cwl); + + Map inputsSection = (Map) cwl.get("inputs"); + Map stepsSection = (Map) cwl.get("steps"); + Map outputsSection = (Map) cwl.get("outputs"); + + if (stepsSection == null || stepsSection.isEmpty()) { + throw new IllegalArgumentException("CWL Workflow must contain a non-empty 'steps' section."); + } + + List nodes = new ArrayList<>(); + List edges = new ArrayList<>(); + Set seen = new LinkedHashSet<>(); + + // Step 2a – Input nodes (dagre places them at the top in TB layout) + Set inputIds = new LinkedHashSet<>(); + if (inputsSection != null) { + for (Map.Entry entry : inputsSection.entrySet()) { + String id = entry.getKey(); + String label = formatLabel(entry.getValue(), id, labelResolver); + nodes.add(new GraphNode(id, label, GraphNode.NodeType.input)); + inputIds.add(id); + } + } + + // Step 2b – Tool nodes + Set stepIds = stepsSection.keySet(); + for (String stepId : stepIds) { + nodes.add(new GraphNode(stepId, toolLabel(stepId), GraphNode.NodeType.tool)); + } + + // Step 2c – Output nodes + remember which step feeds each output + Map outputSources = new LinkedHashMap<>(); + if (outputsSection != null) { + for (Map.Entry entry : outputsSection.entrySet()) { + String id = entry.getKey(); + String label = formatLabel(entry.getValue(), id, labelResolver); + nodes.add(new GraphNode(id, label, GraphNode.NodeType.output)); + + if (entry.getValue() instanceof Map def) { + String src = (String) ((Map) def).get("outputSource"); + if (src != null && src.contains("/")) { + String sourceStepId = src.substring(0, src.indexOf('/')); + if (stepIds.contains(sourceStepId)) { + outputSources.put(id, sourceStepId); + } + } + } + } + } + + // Step 3 – Edges + for (String targetId : stepIds) { + Object inField = ((Map) stepsSection.get(targetId)).get("in"); + if (!(inField instanceof Map rawIn)) continue; + + for (Object sourceRef : ((Map) rawIn).values()) { + if (!(sourceRef instanceof String ref)) continue; + + if (ref.contains("/")) { + // Tool → Tool + String sourceId = ref.substring(0, ref.indexOf('/')); + if (stepIds.contains(sourceId) && seen.add(sourceId + "->" + targetId)) { + edges.add(new GraphEdge(sourceId, targetId)); + } + } else if (inputIds.contains(ref) && seen.add(ref + "->" + targetId)) { + // Input → Tool + edges.add(new GraphEdge(ref, targetId)); + } + } + } + + // Tool → Output + outputSources.forEach((outputId, sourceId) -> + edges.add(new GraphEdge(sourceId, outputId))); + + // Step 4 – EDAM tuples for APE synthesis constraints + List inputs = extractTuples(inputsSection, labelResolver); + List outputs = extractTuples(outputsSection, labelResolver); + + return new ParseResponse(nodes, edges, inputs, outputs); + } + + private static void validateMetadata(Map cwl) { + String cwlClass = (String) cwl.get("class"); + String cwlVersion = (String) cwl.get("cwlVersion"); + if (!"Workflow".equals(cwlClass)) { + throw new IllegalArgumentException( + "CWL file must declare 'class: Workflow', found: " + cwlClass); + } + if (!"v1.2".equals(cwlVersion)) { + throw new IllegalArgumentException( + "CWL file must declare 'cwlVersion: v1.2', found: " + cwlVersion); + } + } + + /** Strips the APE-generated numeric suffix (e.g. MSFragger_01 → MSFragger). */ + private static String toolLabel(String stepId) { + return stepId.replaceAll("_\\d+$", ""); + } + + /** + * Resolves the EDAM format URI from an inputs/outputs entry to a human-readable label. + * Falls back to the port ID when no format is declared. + */ + @SuppressWarnings("unchecked") + private static String formatLabel(Object entry, String fallbackId, UnaryOperator resolver) { + if (entry instanceof Map def) { + String uri = (String) ((Map) def).get("format"); + if (uri != null && !uri.isBlank()) { + return resolver.apply(uri); + } + } + return fallbackId; + } + + @SuppressWarnings("unchecked") + private static List extractTuples(Map section, UnaryOperator resolver) { + List tuples = new ArrayList<>(); + if (section == null) return tuples; + for (Map.Entry entry : section.entrySet()) { + if (!(entry.getValue() instanceof Map def)) continue; + String uri = (String) ((Map) def).get("format"); + if (uri == null) continue; + tuples.add(new TaxonomyElem(uri, resolver.apply(uri), null, null)); + } + return tuples; + } +} diff --git a/src/main/java/nl/esciencecenter/restape/EdamLabels.java b/src/main/java/nl/esciencecenter/restape/EdamLabels.java new file mode 100644 index 0000000..420205e --- /dev/null +++ b/src/main/java/nl/esciencecenter/restape/EdamLabels.java @@ -0,0 +1,54 @@ +package nl.esciencecenter.restape; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.stereotype.Component; + +import java.io.InputStream; +import java.util.Collections; +import java.util.HashMap; +import java.util.Map; + +/** + * Resolves EDAM URIs to human-readable labels via a pre-generated static index. + * + * The index (edam_labels.json) is bundled as a classpath resource and was generated + * once from the EDAM OWL file. Lookups are O(1) after the first call to + * {@link #ensureLoaded()}. + */ +@Component +public class EdamLabels { + + private volatile Map labels = null; + + /** + * Loads the static label index if not already done. Thread-safe; subsequent + * calls return immediately. + */ + public synchronized void ensureLoaded() { + if (labels != null) return; + try (InputStream is = getClass().getClassLoader() + .getResourceAsStream("edam_labels.json")) { + if (is == null) throw new IllegalStateException("edam_labels.json not found on classpath"); + Map map = new ObjectMapper() + .readValue(is, new TypeReference>() {}); + labels = Collections.unmodifiableMap(map); + } catch (Exception e) { + throw new IllegalStateException("Failed to load edam_labels.json: " + e.getMessage(), e); + } + } + + public String resolve(String uri) { + if (uri == null || uri.isBlank()) return ""; + Map map = labels; + if (map == null) return shortForm(uri); + return map.getOrDefault(uri, shortForm(uri)); + } + + static String shortForm(String uri) { + if (uri == null || uri.isBlank()) return ""; + int slash = uri.lastIndexOf('/'); + int hash = uri.lastIndexOf('#'); + return uri.substring(Math.max(slash, hash) + 1); + } +} diff --git a/src/main/resources/edam_labels.json b/src/main/resources/edam_labels.json new file mode 100644 index 0000000..e41883f --- /dev/null +++ b/src/main/resources/edam_labels.json @@ -0,0 +1,3474 @@ +{ + "http://edamontology.org/data_0005": "Resource type", + "http://edamontology.org/data_0006": "Data", + "http://edamontology.org/data_0007": "Tool", + "http://edamontology.org/data_0581": "Database", + "http://edamontology.org/data_0582": "Ontology", + "http://edamontology.org/data_0583": "Directory metadata", + "http://edamontology.org/data_0831": "MeSH vocabulary", + "http://edamontology.org/data_0832": "HGNC vocabulary", + "http://edamontology.org/data_0835": "UMLS vocabulary", + "http://edamontology.org/data_0842": "Identifier", + "http://edamontology.org/data_0843": "Database entry", + "http://edamontology.org/data_0844": "Molecular mass", + "http://edamontology.org/data_0845": "Molecular charge", + "http://edamontology.org/data_0846": "Chemical formula", + "http://edamontology.org/data_0847": "QSAR descriptor", + "http://edamontology.org/data_0848": "Raw sequence", + "http://edamontology.org/data_0849": "Sequence record", + "http://edamontology.org/data_0850": "Sequence set", + "http://edamontology.org/data_0851": "Sequence mask character", + "http://edamontology.org/data_0852": "Sequence mask type", + "http://edamontology.org/data_0853": "DNA sense specification", + "http://edamontology.org/data_0854": "Sequence length specification", + "http://edamontology.org/data_0855": "Sequence metadata", + "http://edamontology.org/data_0856": "Sequence feature source", + "http://edamontology.org/data_0857": "Sequence search results", + "http://edamontology.org/data_0858": "Sequence signature matches", + "http://edamontology.org/data_0859": "Sequence signature model", + "http://edamontology.org/data_0860": "Sequence signature data", + "http://edamontology.org/data_0861": "Sequence alignment (words)", + "http://edamontology.org/data_0862": "Dotplot", + "http://edamontology.org/data_0863": "Sequence alignment", + "http://edamontology.org/data_0864": "Sequence alignment parameter", + "http://edamontology.org/data_0865": "Sequence similarity score", + "http://edamontology.org/data_0866": "Sequence alignment metadata", + "http://edamontology.org/data_0867": "Sequence alignment report", + "http://edamontology.org/data_0868": "Profile-profile alignment", + "http://edamontology.org/data_0869": "Sequence-profile alignment", + "http://edamontology.org/data_0870": "Sequence distance matrix", + "http://edamontology.org/data_0871": "Phylogenetic character data", + "http://edamontology.org/data_0872": "Phylogenetic tree", + "http://edamontology.org/data_0874": "Comparison matrix", + "http://edamontology.org/data_0875": "Protein topology", + "http://edamontology.org/data_0876": "Protein features report (secondary structure)", + "http://edamontology.org/data_0877": "Protein features report (super-secondary)", + "http://edamontology.org/data_0878": "Protein secondary structure alignment", + "http://edamontology.org/data_0879": "Secondary structure alignment metadata (protein)", + "http://edamontology.org/data_0880": "RNA secondary structure", + "http://edamontology.org/data_0881": "RNA secondary structure alignment", + "http://edamontology.org/data_0882": "Secondary structure alignment metadata (RNA)", + "http://edamontology.org/data_0883": "Structure", + "http://edamontology.org/data_0884": "Tertiary structure record", + "http://edamontology.org/data_0885": "Structure database search results", + "http://edamontology.org/data_0886": "Structure alignment", + "http://edamontology.org/data_0887": "Structure alignment report", + "http://edamontology.org/data_0888": "Structure similarity score", + "http://edamontology.org/data_0889": "Structural profile", + "http://edamontology.org/data_0890": "Structural (3D) profile alignment", + "http://edamontology.org/data_0891": "Sequence-3D profile alignment", + "http://edamontology.org/data_0892": "Protein sequence-structure scoring matrix", + "http://edamontology.org/data_0893": "Sequence-structure alignment", + "http://edamontology.org/data_0894": "Amino acid annotation", + "http://edamontology.org/data_0895": "Peptide annotation", + "http://edamontology.org/data_0896": "Protein report", + "http://edamontology.org/data_0897": "Protein property", + "http://edamontology.org/data_0899": "Protein structural motifs and surfaces", + "http://edamontology.org/data_0900": "Protein domain classification", + "http://edamontology.org/data_0901": "Protein features report (domains)", + "http://edamontology.org/data_0902": "Protein architecture report", + "http://edamontology.org/data_0903": "Protein folding report", + "http://edamontology.org/data_0904": "Protein features (mutation)", + "http://edamontology.org/data_0905": "Protein interaction raw data", + "http://edamontology.org/data_0906": "Protein interaction data", + "http://edamontology.org/data_0907": "Protein family report", + "http://edamontology.org/data_0909": "Vmax", + "http://edamontology.org/data_0910": "Km", + "http://edamontology.org/data_0911": "Nucleotide base annotation", + "http://edamontology.org/data_0912": "Nucleic acid property", + "http://edamontology.org/data_0914": "Codon usage data", + "http://edamontology.org/data_0916": "Gene report", + "http://edamontology.org/data_0917": "Gene classification", + "http://edamontology.org/data_0918": "DNA variation", + "http://edamontology.org/data_0919": "Chromosome report", + "http://edamontology.org/data_0920": "Genotype/phenotype report", + "http://edamontology.org/data_0923": "PCR experiment report", + "http://edamontology.org/data_0924": "Sequence trace", + "http://edamontology.org/data_0925": "Sequence assembly", + "http://edamontology.org/data_0926": "RH scores", + "http://edamontology.org/data_0927": "Genetic linkage report", + "http://edamontology.org/data_0928": "Gene expression profile", + "http://edamontology.org/data_0931": "Microarray experiment report", + "http://edamontology.org/data_0932": "Oligonucleotide probe data", + "http://edamontology.org/data_0933": "SAGE experimental data", + "http://edamontology.org/data_0934": "MPSS experimental data", + "http://edamontology.org/data_0935": "SBS experimental data", + "http://edamontology.org/data_0936": "Sequence tag profile (with gene assignment)", + "http://edamontology.org/data_0937": "Electron density map", + "http://edamontology.org/data_0938": "Raw NMR data", + "http://edamontology.org/data_0939": "CD spectra", + "http://edamontology.org/data_0940": "Volume map", + "http://edamontology.org/data_0941": "Electron microscopy model", + "http://edamontology.org/data_0942": "2D PAGE image", + "http://edamontology.org/data_0943": "Mass spectrum", + "http://edamontology.org/data_0944": "Peptide mass fingerprint", + "http://edamontology.org/data_0945": "Peptide identification", + "http://edamontology.org/data_0946": "Pathway or network annotation", + "http://edamontology.org/data_0947": "Biological pathway map", + "http://edamontology.org/data_0948": "Data resource definition", + "http://edamontology.org/data_0949": "Workflow metadata", + "http://edamontology.org/data_0950": "Mathematical model", + "http://edamontology.org/data_0951": "Statistical estimate score", + "http://edamontology.org/data_0952": "EMBOSS database resource definition", + "http://edamontology.org/data_0953": "Version information", + "http://edamontology.org/data_0954": "Database cross-mapping", + "http://edamontology.org/data_0955": "Data index", + "http://edamontology.org/data_0956": "Data index report", + "http://edamontology.org/data_0957": "Database metadata", + "http://edamontology.org/data_0958": "Tool metadata", + "http://edamontology.org/data_0959": "Job metadata", + "http://edamontology.org/data_0960": "User metadata", + "http://edamontology.org/data_0962": "Small molecule report", + "http://edamontology.org/data_0963": "Cell line report", + "http://edamontology.org/data_0964": "Scent annotation", + "http://edamontology.org/data_0966": "Ontology term", + "http://edamontology.org/data_0967": "Ontology concept data", + "http://edamontology.org/data_0968": "Keyword", + "http://edamontology.org/data_0970": "Citation", + "http://edamontology.org/data_0971": "Article", + "http://edamontology.org/data_0972": "Text mining report", + "http://edamontology.org/data_0974": "Entity identifier", + "http://edamontology.org/data_0975": "Data resource identifier", + "http://edamontology.org/data_0976": "Identifier (by type of data)", + "http://edamontology.org/data_0977": "Tool identifier", + "http://edamontology.org/data_0978": "Discrete entity identifier", + "http://edamontology.org/data_0979": "Entity feature identifier", + "http://edamontology.org/data_0980": "Entity collection identifier", + "http://edamontology.org/data_0981": "Phenomenon identifier", + "http://edamontology.org/data_0982": "Molecule identifier", + "http://edamontology.org/data_0983": "Atom ID", + "http://edamontology.org/data_0984": "Molecule name", + "http://edamontology.org/data_0985": "Molecule type", + "http://edamontology.org/data_0986": "Chemical identifier", + "http://edamontology.org/data_0987": "Chromosome name", + "http://edamontology.org/data_0988": "Peptide identifier", + "http://edamontology.org/data_0989": "Protein identifier", + "http://edamontology.org/data_0990": "Compound name", + "http://edamontology.org/data_0991": "Chemical registry number", + "http://edamontology.org/data_0992": "Ligand identifier", + "http://edamontology.org/data_0993": "Drug identifier", + "http://edamontology.org/data_0994": "Amino acid identifier", + "http://edamontology.org/data_0995": "Nucleotide identifier", + "http://edamontology.org/data_0996": "Monosaccharide identifier", + "http://edamontology.org/data_0997": "Chemical name (ChEBI)", + "http://edamontology.org/data_0998": "Chemical name (IUPAC)", + "http://edamontology.org/data_0999": "Chemical name (INN)", + "http://edamontology.org/data_1000": "Chemical name (brand)", + "http://edamontology.org/data_1001": "Chemical name (synonymous)", + "http://edamontology.org/data_1002": "CAS number", + "http://edamontology.org/data_1003": "Chemical registry number (Beilstein)", + "http://edamontology.org/data_1004": "Chemical registry number (Gmelin)", + "http://edamontology.org/data_1005": "HET group name", + "http://edamontology.org/data_1006": "Amino acid name", + "http://edamontology.org/data_1007": "Nucleotide code", + "http://edamontology.org/data_1008": "Polypeptide chain ID", + "http://edamontology.org/data_1009": "Protein name", + "http://edamontology.org/data_1010": "Enzyme identifier", + "http://edamontology.org/data_1011": "EC number", + "http://edamontology.org/data_1012": "Enzyme name", + "http://edamontology.org/data_1013": "Restriction enzyme name", + "http://edamontology.org/data_1014": "Sequence position specification", + "http://edamontology.org/data_1015": "Sequence feature ID", + "http://edamontology.org/data_1016": "Sequence position", + "http://edamontology.org/data_1017": "Sequence range", + "http://edamontology.org/data_1018": "Nucleic acid feature identifier", + "http://edamontology.org/data_1019": "Protein feature identifier", + "http://edamontology.org/data_1020": "Sequence feature key", + "http://edamontology.org/data_1021": "Sequence feature qualifier", + "http://edamontology.org/data_1022": "Sequence feature label", + "http://edamontology.org/data_1023": "EMBOSS Uniform Feature Object", + "http://edamontology.org/data_1024": "Codon name", + "http://edamontology.org/data_1025": "Gene identifier", + "http://edamontology.org/data_1026": "Gene symbol", + "http://edamontology.org/data_1027": "Gene ID (NCBI)", + "http://edamontology.org/data_1028": "Gene identifier (NCBI RefSeq)", + "http://edamontology.org/data_1029": "Gene identifier (NCBI UniGene)", + "http://edamontology.org/data_1030": "Gene identifier (Entrez)", + "http://edamontology.org/data_1031": "Gene ID (CGD)", + "http://edamontology.org/data_1032": "Gene ID (DictyBase)", + "http://edamontology.org/data_1033": "Ensembl gene ID", + "http://edamontology.org/data_1034": "Gene ID (SGD)", + "http://edamontology.org/data_1035": "Gene ID (GeneDB)", + "http://edamontology.org/data_1036": "TIGR identifier", + "http://edamontology.org/data_1037": "TAIR accession (gene)", + "http://edamontology.org/data_1038": "Protein domain ID", + "http://edamontology.org/data_1039": "SCOP domain identifier", + "http://edamontology.org/data_1040": "CATH domain ID", + "http://edamontology.org/data_1041": "SCOP concise classification string (sccs)", + "http://edamontology.org/data_1042": "SCOP sunid", + "http://edamontology.org/data_1043": "CATH node ID", + "http://edamontology.org/data_1044": "Kingdom name", + "http://edamontology.org/data_1045": "Species name", + "http://edamontology.org/data_1046": "Strain name", + "http://edamontology.org/data_1047": "URI", + "http://edamontology.org/data_1048": "Database ID", + "http://edamontology.org/data_1049": "Directory name", + "http://edamontology.org/data_1050": "File name", + "http://edamontology.org/data_1051": "Ontology name", + "http://edamontology.org/data_1052": "URL", + "http://edamontology.org/data_1053": "URN", + "http://edamontology.org/data_1055": "LSID", + "http://edamontology.org/data_1056": "Database name", + "http://edamontology.org/data_1057": "Sequence database name", + "http://edamontology.org/data_1058": "Enumerated file name", + "http://edamontology.org/data_1059": "File name extension", + "http://edamontology.org/data_1060": "File base name", + "http://edamontology.org/data_1061": "QSAR descriptor name", + "http://edamontology.org/data_1062": "Database entry identifier", + "http://edamontology.org/data_1063": "Sequence identifier", + "http://edamontology.org/data_1064": "Sequence set ID", + "http://edamontology.org/data_1065": "Sequence signature identifier", + "http://edamontology.org/data_1066": "Sequence alignment ID", + "http://edamontology.org/data_1067": "Phylogenetic distance matrix identifier", + "http://edamontology.org/data_1068": "Phylogenetic tree ID", + "http://edamontology.org/data_1069": "Comparison matrix identifier", + "http://edamontology.org/data_1070": "Structure ID", + "http://edamontology.org/data_1071": "Structural (3D) profile ID", + "http://edamontology.org/data_1072": "Structure alignment ID", + "http://edamontology.org/data_1073": "Amino acid index ID", + "http://edamontology.org/data_1074": "Protein interaction ID", + "http://edamontology.org/data_1075": "Protein family identifier", + "http://edamontology.org/data_1076": "Codon usage table name", + "http://edamontology.org/data_1077": "Transcription factor identifier", + "http://edamontology.org/data_1078": "Experiment annotation ID", + "http://edamontology.org/data_1079": "Electron microscopy model ID", + "http://edamontology.org/data_1080": "Gene expression report ID", + "http://edamontology.org/data_1081": "Genotype and phenotype annotation ID", + "http://edamontology.org/data_1082": "Pathway or network identifier", + "http://edamontology.org/data_1083": "Workflow ID", + "http://edamontology.org/data_1084": "Data resource definition ID", + "http://edamontology.org/data_1085": "Biological model ID", + "http://edamontology.org/data_1086": "Compound identifier", + "http://edamontology.org/data_1087": "Ontology concept ID", + "http://edamontology.org/data_1088": "Article ID", + "http://edamontology.org/data_1089": "FlyBase ID", + "http://edamontology.org/data_1091": "WormBase name", + "http://edamontology.org/data_1092": "WormBase class", + "http://edamontology.org/data_1093": "Sequence accession", + "http://edamontology.org/data_1094": "Sequence type", + "http://edamontology.org/data_1095": "EMBOSS Uniform Sequence Address", + "http://edamontology.org/data_1096": "Sequence accession (protein)", + "http://edamontology.org/data_1097": "Sequence accession (nucleic acid)", + "http://edamontology.org/data_1098": "RefSeq accession", + "http://edamontology.org/data_1099": "UniProt accession (extended)", + "http://edamontology.org/data_1100": "PIR identifier", + "http://edamontology.org/data_1101": "TREMBL accession", + "http://edamontology.org/data_1102": "Gramene primary identifier", + "http://edamontology.org/data_1103": "EMBL/GenBank/DDBJ ID", + "http://edamontology.org/data_1104": "Sequence cluster ID (UniGene)", + "http://edamontology.org/data_1105": "dbEST accession", + "http://edamontology.org/data_1106": "dbSNP ID", + "http://edamontology.org/data_1110": "EMBOSS sequence type", + "http://edamontology.org/data_1111": "EMBOSS listfile", + "http://edamontology.org/data_1112": "Sequence cluster ID", + "http://edamontology.org/data_1113": "Sequence cluster ID (COG)", + "http://edamontology.org/data_1114": "Sequence motif identifier", + "http://edamontology.org/data_1115": "Sequence profile ID", + "http://edamontology.org/data_1116": "ELM ID", + "http://edamontology.org/data_1117": "Prosite accession number", + "http://edamontology.org/data_1118": "HMMER hidden Markov model ID", + "http://edamontology.org/data_1119": "JASPAR profile ID", + "http://edamontology.org/data_1120": "Sequence alignment type", + "http://edamontology.org/data_1121": "BLAST sequence alignment type", + "http://edamontology.org/data_1122": "Phylogenetic tree type", + "http://edamontology.org/data_1123": "TreeBASE study accession number", + "http://edamontology.org/data_1124": "TreeFam accession number", + "http://edamontology.org/data_1125": "Comparison matrix type", + "http://edamontology.org/data_1126": "Comparison matrix name", + "http://edamontology.org/data_1127": "PDB ID", + "http://edamontology.org/data_1128": "AAindex ID", + "http://edamontology.org/data_1129": "BIND accession number", + "http://edamontology.org/data_1130": "IntAct accession number", + "http://edamontology.org/data_1131": "Protein family name", + "http://edamontology.org/data_1132": "InterPro entry name", + "http://edamontology.org/data_1133": "InterPro accession", + "http://edamontology.org/data_1134": "InterPro secondary accession", + "http://edamontology.org/data_1135": "Gene3D ID", + "http://edamontology.org/data_1136": "PIRSF ID", + "http://edamontology.org/data_1137": "PRINTS code", + "http://edamontology.org/data_1138": "Pfam accession number", + "http://edamontology.org/data_1139": "SMART accession number", + "http://edamontology.org/data_1140": "Superfamily hidden Markov model number", + "http://edamontology.org/data_1141": "TIGRFam ID", + "http://edamontology.org/data_1142": "ProDom accession number", + "http://edamontology.org/data_1143": "TRANSFAC accession number", + "http://edamontology.org/data_1144": "ArrayExpress accession number", + "http://edamontology.org/data_1145": "PRIDE experiment accession number", + "http://edamontology.org/data_1146": "EMDB ID", + "http://edamontology.org/data_1147": "GEO accession number", + "http://edamontology.org/data_1148": "GermOnline ID", + "http://edamontology.org/data_1149": "EMAGE ID", + "http://edamontology.org/data_1150": "Disease ID", + "http://edamontology.org/data_1151": "HGVbase ID", + "http://edamontology.org/data_1152": "HIVDB identifier", + "http://edamontology.org/data_1153": "OMIM ID", + "http://edamontology.org/data_1154": "KEGG object identifier", + "http://edamontology.org/data_1155": "Pathway ID (reactome)", + "http://edamontology.org/data_1156": "Pathway ID (aMAZE)", + "http://edamontology.org/data_1157": "Pathway ID (BioCyc)", + "http://edamontology.org/data_1158": "Pathway ID (INOH)", + "http://edamontology.org/data_1159": "Pathway ID (PATIKA)", + "http://edamontology.org/data_1160": "Pathway ID (CPDB)", + "http://edamontology.org/data_1161": "Pathway ID (Panther)", + "http://edamontology.org/data_1162": "MIRIAM identifier", + "http://edamontology.org/data_1163": "MIRIAM data type name", + "http://edamontology.org/data_1164": "MIRIAM URI", + "http://edamontology.org/data_1165": "MIRIAM data type primary name", + "http://edamontology.org/data_1166": "MIRIAM data type synonymous name", + "http://edamontology.org/data_1167": "Taverna workflow ID", + "http://edamontology.org/data_1170": "Biological model name", + "http://edamontology.org/data_1171": "BioModel ID", + "http://edamontology.org/data_1172": "PubChem CID", + "http://edamontology.org/data_1173": "ChemSpider ID", + "http://edamontology.org/data_1174": "ChEBI ID", + "http://edamontology.org/data_1175": "BioPax concept ID", + "http://edamontology.org/data_1176": "GO concept ID", + "http://edamontology.org/data_1177": "MeSH concept ID", + "http://edamontology.org/data_1178": "HGNC concept ID", + "http://edamontology.org/data_1179": "NCBI taxonomy ID", + "http://edamontology.org/data_1180": "Plant Ontology concept ID", + "http://edamontology.org/data_1181": "UMLS concept ID", + "http://edamontology.org/data_1182": "FMA concept ID", + "http://edamontology.org/data_1183": "EMAP concept ID", + "http://edamontology.org/data_1184": "ChEBI concept ID", + "http://edamontology.org/data_1185": "MGED concept ID", + "http://edamontology.org/data_1186": "myGrid concept ID", + "http://edamontology.org/data_1187": "PubMed ID", + "http://edamontology.org/data_1188": "DOI", + "http://edamontology.org/data_1189": "Medline UI", + "http://edamontology.org/data_1190": "Tool name", + "http://edamontology.org/data_1191": "Tool name (signature)", + "http://edamontology.org/data_1192": "Tool name (BLAST)", + "http://edamontology.org/data_1193": "Tool name (FASTA)", + "http://edamontology.org/data_1194": "Tool name (EMBOSS)", + "http://edamontology.org/data_1195": "Tool name (EMBASSY package)", + "http://edamontology.org/data_1201": "QSAR descriptor (constitutional)", + "http://edamontology.org/data_1202": "QSAR descriptor (electronic)", + "http://edamontology.org/data_1203": "QSAR descriptor (geometrical)", + "http://edamontology.org/data_1204": "QSAR descriptor (topological)", + "http://edamontology.org/data_1205": "QSAR descriptor (molecular)", + "http://edamontology.org/data_1233": "Sequence set (protein)", + "http://edamontology.org/data_1234": "Sequence set (nucleic acid)", + "http://edamontology.org/data_1235": "Sequence cluster", + "http://edamontology.org/data_1236": "Psiblast checkpoint file", + "http://edamontology.org/data_1237": "HMMER synthetic sequences set", + "http://edamontology.org/data_1238": "Proteolytic digest", + "http://edamontology.org/data_1239": "Restriction digest", + "http://edamontology.org/data_1240": "PCR primers", + "http://edamontology.org/data_1241": "vectorstrip cloning vector definition file", + "http://edamontology.org/data_1242": "Primer3 internal oligo mishybridizing library", + "http://edamontology.org/data_1243": "Primer3 mispriming library file", + "http://edamontology.org/data_1244": "primersearch primer pairs sequence record", + "http://edamontology.org/data_1245": "Sequence cluster (protein)", + "http://edamontology.org/data_1246": "Sequence cluster (nucleic acid)", + "http://edamontology.org/data_1249": "Sequence length", + "http://edamontology.org/data_1250": "Word size", + "http://edamontology.org/data_1251": "Window size", + "http://edamontology.org/data_1252": "Sequence length range", + "http://edamontology.org/data_1253": "Sequence information report", + "http://edamontology.org/data_1254": "Sequence property", + "http://edamontology.org/data_1255": "Sequence features", + "http://edamontology.org/data_1256": "Sequence features (comparative)", + "http://edamontology.org/data_1257": "Sequence property (protein)", + "http://edamontology.org/data_1258": "Sequence property (nucleic acid)", + "http://edamontology.org/data_1259": "Sequence complexity report", + "http://edamontology.org/data_1260": "Sequence ambiguity report", + "http://edamontology.org/data_1261": "Sequence composition report", + "http://edamontology.org/data_1262": "Peptide molecular weight hits", + "http://edamontology.org/data_1263": "Base position variability plot", + "http://edamontology.org/data_1264": "Sequence composition table", + "http://edamontology.org/data_1265": "Base frequencies table", + "http://edamontology.org/data_1266": "Base word frequencies table", + "http://edamontology.org/data_1267": "Amino acid frequencies table", + "http://edamontology.org/data_1268": "Amino acid word frequencies table", + "http://edamontology.org/data_1269": "DAS sequence feature annotation", + "http://edamontology.org/data_1270": "Feature table", + "http://edamontology.org/data_1274": "Map", + "http://edamontology.org/data_1276": "Nucleic acid features", + "http://edamontology.org/data_1277": "Protein features", + "http://edamontology.org/data_1278": "Genetic map", + "http://edamontology.org/data_1279": "Sequence map", + "http://edamontology.org/data_1280": "Physical map", + "http://edamontology.org/data_1281": "Sequence signature map", + "http://edamontology.org/data_1283": "Cytogenetic map", + "http://edamontology.org/data_1284": "DNA transduction map", + "http://edamontology.org/data_1285": "Gene map", + "http://edamontology.org/data_1286": "Plasmid map", + "http://edamontology.org/data_1288": "Genome map", + "http://edamontology.org/data_1289": "Restriction map", + "http://edamontology.org/data_1290": "InterPro compact match image", + "http://edamontology.org/data_1291": "InterPro detailed match image", + "http://edamontology.org/data_1292": "InterPro architecture image", + "http://edamontology.org/data_1293": "SMART protein schematic", + "http://edamontology.org/data_1294": "GlobPlot domain image", + "http://edamontology.org/data_1298": "Sequence motif matches", + "http://edamontology.org/data_1299": "Sequence features (repeats)", + "http://edamontology.org/data_1300": "Gene and transcript structure (report)", + "http://edamontology.org/data_1301": "Mobile genetic elements", + "http://edamontology.org/data_1303": "Nucleic acid features (quadruplexes)", + "http://edamontology.org/data_1306": "Nucleosome exclusion sequences", + "http://edamontology.org/data_1309": "Gene features (exonic splicing enhancer)", + "http://edamontology.org/data_1310": "Nucleic acid features (microRNA)", + "http://edamontology.org/data_1313": "Coding region", + "http://edamontology.org/data_1314": "Gene features (SECIS element)", + "http://edamontology.org/data_1315": "Transcription factor binding sites", + "http://edamontology.org/data_1321": "Protein features (sites)", + "http://edamontology.org/data_1322": "Protein features report (signal peptides)", + "http://edamontology.org/data_1323": "Protein features report (cleavage sites)", + "http://edamontology.org/data_1324": "Protein features (post-translation modifications)", + "http://edamontology.org/data_1325": "Protein features report (active sites)", + "http://edamontology.org/data_1326": "Protein features report (binding sites)", + "http://edamontology.org/data_1327": "Protein features (epitopes)", + "http://edamontology.org/data_1328": "Protein features report (nucleic acid binding sites)", + "http://edamontology.org/data_1329": "MHC Class I epitopes report", + "http://edamontology.org/data_1330": "MHC Class II epitopes report", + "http://edamontology.org/data_1331": "Protein features (PEST sites)", + "http://edamontology.org/data_1338": "Sequence database hits scores list", + "http://edamontology.org/data_1339": "Sequence database hits alignments list", + "http://edamontology.org/data_1340": "Sequence database hits evaluation data", + "http://edamontology.org/data_1344": "MEME motif alphabet", + "http://edamontology.org/data_1345": "MEME background frequencies file", + "http://edamontology.org/data_1346": "MEME motifs directive file", + "http://edamontology.org/data_1347": "Dirichlet distribution", + "http://edamontology.org/data_1348": "HMM emission and transition counts", + "http://edamontology.org/data_1352": "Regular expression", + "http://edamontology.org/data_1353": "Sequence motif", + "http://edamontology.org/data_1354": "Sequence profile", + "http://edamontology.org/data_1355": "Protein signature", + "http://edamontology.org/data_1358": "Prosite nucleotide pattern", + "http://edamontology.org/data_1359": "Prosite protein pattern", + "http://edamontology.org/data_1361": "Position frequency matrix", + "http://edamontology.org/data_1362": "Position weight matrix", + "http://edamontology.org/data_1363": "Information content matrix", + "http://edamontology.org/data_1364": "Hidden Markov model", + "http://edamontology.org/data_1365": "Fingerprint", + "http://edamontology.org/data_1368": "Domainatrix signature", + "http://edamontology.org/data_1371": "HMMER NULL hidden Markov model", + "http://edamontology.org/data_1372": "Protein family signature", + "http://edamontology.org/data_1373": "Protein domain signature", + "http://edamontology.org/data_1374": "Protein region signature", + "http://edamontology.org/data_1375": "Protein repeat signature", + "http://edamontology.org/data_1376": "Protein site signature", + "http://edamontology.org/data_1377": "Protein conserved site signature", + "http://edamontology.org/data_1378": "Protein active site signature", + "http://edamontology.org/data_1379": "Protein binding site signature", + "http://edamontology.org/data_1380": "Protein post-translational modification signature", + "http://edamontology.org/data_1381": "Pair sequence alignment", + "http://edamontology.org/data_1382": "Sequence alignment (multiple)", + "http://edamontology.org/data_1383": "Nucleic acid sequence alignment", + "http://edamontology.org/data_1384": "Protein sequence alignment", + "http://edamontology.org/data_1385": "Hybrid sequence alignment", + "http://edamontology.org/data_1386": "Sequence alignment (nucleic acid pair)", + "http://edamontology.org/data_1387": "Sequence alignment (protein pair)", + "http://edamontology.org/data_1388": "Hybrid sequence alignment (pair)", + "http://edamontology.org/data_1389": "Multiple nucleotide sequence alignment", + "http://edamontology.org/data_1390": "Multiple protein sequence alignment", + "http://edamontology.org/data_1394": "Alignment score or penalty", + "http://edamontology.org/data_1395": "Score end gaps control", + "http://edamontology.org/data_1396": "Aligned sequence order", + "http://edamontology.org/data_1397": "Gap opening penalty", + "http://edamontology.org/data_1398": "Gap extension penalty", + "http://edamontology.org/data_1399": "Gap separation penalty", + "http://edamontology.org/data_1400": "Terminal gap penalty", + "http://edamontology.org/data_1401": "Match reward score", + "http://edamontology.org/data_1402": "Mismatch penalty score", + "http://edamontology.org/data_1403": "Drop off score", + "http://edamontology.org/data_1404": "Gap opening penalty (integer)", + "http://edamontology.org/data_1405": "Gap opening penalty (float)", + "http://edamontology.org/data_1406": "Gap extension penalty (integer)", + "http://edamontology.org/data_1407": "Gap extension penalty (float)", + "http://edamontology.org/data_1408": "Gap separation penalty (integer)", + "http://edamontology.org/data_1409": "Gap separation penalty (float)", + "http://edamontology.org/data_1410": "Terminal gap opening penalty", + "http://edamontology.org/data_1411": "Terminal gap extension penalty", + "http://edamontology.org/data_1412": "Sequence identity", + "http://edamontology.org/data_1413": "Sequence similarity", + "http://edamontology.org/data_1414": "Sequence alignment metadata (quality report)", + "http://edamontology.org/data_1415": "Sequence alignment report (site conservation)", + "http://edamontology.org/data_1416": "Sequence alignment report (site correlation)", + "http://edamontology.org/data_1417": "Sequence-profile alignment (Domainatrix signature)", + "http://edamontology.org/data_1418": "Sequence-profile alignment (HMM)", + "http://edamontology.org/data_1420": "Sequence-profile alignment (fingerprint)", + "http://edamontology.org/data_1426": "Phylogenetic continuous quantitative data", + "http://edamontology.org/data_1427": "Phylogenetic discrete data", + "http://edamontology.org/data_1428": "Phylogenetic character cliques", + "http://edamontology.org/data_1429": "Phylogenetic invariants", + "http://edamontology.org/data_1438": "Phylogenetic report", + "http://edamontology.org/data_1439": "DNA substitution model", + "http://edamontology.org/data_1440": "Phylogenetic tree report (tree shape)", + "http://edamontology.org/data_1441": "Phylogenetic tree report (tree evaluation)", + "http://edamontology.org/data_1442": "Phylogenetic tree distances", + "http://edamontology.org/data_1443": "Phylogenetic tree report (tree stratigraphic)", + "http://edamontology.org/data_1444": "Phylogenetic character contrasts", + "http://edamontology.org/data_1446": "Comparison matrix (integers)", + "http://edamontology.org/data_1447": "Comparison matrix (floats)", + "http://edamontology.org/data_1448": "Comparison matrix (nucleotide)", + "http://edamontology.org/data_1449": "Comparison matrix (amino acid)", + "http://edamontology.org/data_1450": "Nucleotide comparison matrix (integers)", + "http://edamontology.org/data_1451": "Nucleotide comparison matrix (floats)", + "http://edamontology.org/data_1452": "Amino acid comparison matrix (integers)", + "http://edamontology.org/data_1453": "Amino acid comparison matrix (floats)", + "http://edamontology.org/data_1459": "Nucleic acid structure", + "http://edamontology.org/data_1460": "Protein structure", + "http://edamontology.org/data_1461": "Protein-ligand complex", + "http://edamontology.org/data_1462": "Carbohydrate structure", + "http://edamontology.org/data_1463": "Small molecule structure", + "http://edamontology.org/data_1464": "DNA structure", + "http://edamontology.org/data_1465": "RNA structure", + "http://edamontology.org/data_1466": "tRNA structure", + "http://edamontology.org/data_1467": "Protein chain", + "http://edamontology.org/data_1468": "Protein domain", + "http://edamontology.org/data_1469": "Protein structure (all atoms)", + "http://edamontology.org/data_1470": "C-alpha trace", + "http://edamontology.org/data_1471": "Protein chain (all atoms)", + "http://edamontology.org/data_1472": "Protein chain (C-alpha atoms)", + "http://edamontology.org/data_1473": "Protein domain (all atoms)", + "http://edamontology.org/data_1474": "Protein domain (C-alpha atoms)", + "http://edamontology.org/data_1479": "Structure alignment (pair)", + "http://edamontology.org/data_1480": "Structure alignment (multiple)", + "http://edamontology.org/data_1481": "Protein structure alignment", + "http://edamontology.org/data_1482": "Nucleic acid structure alignment", + "http://edamontology.org/data_1483": "Structure alignment (protein pair)", + "http://edamontology.org/data_1484": "Multiple protein tertiary structure alignment", + "http://edamontology.org/data_1485": "Structure alignment (protein all atoms)", + "http://edamontology.org/data_1486": "Structure alignment (protein C-alpha atoms)", + "http://edamontology.org/data_1487": "Pairwise protein tertiary structure alignment (all atoms)", + "http://edamontology.org/data_1488": "Pairwise protein tertiary structure alignment (C-alpha atoms)", + "http://edamontology.org/data_1489": "Multiple protein tertiary structure alignment (all atoms)", + "http://edamontology.org/data_1490": "Multiple protein tertiary structure alignment (C-alpha atoms)", + "http://edamontology.org/data_1491": "Structure alignment (nucleic acid pair)", + "http://edamontology.org/data_1492": "Multiple nucleic acid tertiary structure alignment", + "http://edamontology.org/data_1493": "RNA structure alignment", + "http://edamontology.org/data_1494": "Structural transformation matrix", + "http://edamontology.org/data_1495": "DaliLite hit table", + "http://edamontology.org/data_1496": "Molecular similarity score", + "http://edamontology.org/data_1497": "Root-mean-square deviation", + "http://edamontology.org/data_1498": "Tanimoto similarity score", + "http://edamontology.org/data_1499": "3D-1D scoring matrix", + "http://edamontology.org/data_1501": "Amino acid index", + "http://edamontology.org/data_1502": "Amino acid index (chemical classes)", + "http://edamontology.org/data_1503": "Amino acid pair-wise contact potentials", + "http://edamontology.org/data_1505": "Amino acid index (molecular weight)", + "http://edamontology.org/data_1506": "Amino acid index (hydropathy)", + "http://edamontology.org/data_1507": "Amino acid index (White-Wimley data)", + "http://edamontology.org/data_1508": "Amino acid index (van der Waals radii)", + "http://edamontology.org/data_1509": "Enzyme report", + "http://edamontology.org/data_1517": "Restriction enzyme report", + "http://edamontology.org/data_1519": "Peptide molecular weights", + "http://edamontology.org/data_1520": "Peptide hydrophobic moment", + "http://edamontology.org/data_1521": "Protein aliphatic index", + "http://edamontology.org/data_1522": "Protein sequence hydropathy plot", + "http://edamontology.org/data_1523": "Protein charge plot", + "http://edamontology.org/data_1524": "Protein solubility", + "http://edamontology.org/data_1525": "Protein crystallizability", + "http://edamontology.org/data_1526": "Protein globularity", + "http://edamontology.org/data_1527": "Protein titration curve", + "http://edamontology.org/data_1528": "Protein isoelectric point", + "http://edamontology.org/data_1529": "Protein pKa value", + "http://edamontology.org/data_1530": "Protein hydrogen exchange rate", + "http://edamontology.org/data_1531": "Protein extinction coefficient", + "http://edamontology.org/data_1532": "Protein optical density", + "http://edamontology.org/data_1533": "Protein subcellular localisation", + "http://edamontology.org/data_1534": "Peptide immunogenicity data", + "http://edamontology.org/data_1536": "MHC peptide immunogenicity report", + "http://edamontology.org/data_1537": "Protein structure report", + "http://edamontology.org/data_1539": "Protein structural quality report", + "http://edamontology.org/data_1540": "Protein non-covalent interactions report", + "http://edamontology.org/data_1541": "Protein flexibility or motion report", + "http://edamontology.org/data_1542": "Protein solvent accessibility", + "http://edamontology.org/data_1543": "Protein surface report", + "http://edamontology.org/data_1544": "Ramachandran plot", + "http://edamontology.org/data_1545": "Protein dipole moment", + "http://edamontology.org/data_1546": "Protein distance matrix", + "http://edamontology.org/data_1547": "Protein contact map", + "http://edamontology.org/data_1548": "Protein residue 3D cluster", + "http://edamontology.org/data_1549": "Protein hydrogen bonds", + "http://edamontology.org/data_1550": "Protein non-canonical interactions", + "http://edamontology.org/data_1553": "CATH node", + "http://edamontology.org/data_1554": "SCOP node", + "http://edamontology.org/data_1555": "EMBASSY domain classification", + "http://edamontology.org/data_1556": "CATH class", + "http://edamontology.org/data_1557": "CATH architecture", + "http://edamontology.org/data_1558": "CATH topology", + "http://edamontology.org/data_1559": "CATH homologous superfamily", + "http://edamontology.org/data_1560": "CATH structurally similar group", + "http://edamontology.org/data_1561": "CATH functional category", + "http://edamontology.org/data_1564": "Protein fold recognition report", + "http://edamontology.org/data_1565": "Protein-protein interaction report", + "http://edamontology.org/data_1566": "Protein-ligand interaction report", + "http://edamontology.org/data_1567": "Protein-nucleic acid interactions report", + "http://edamontology.org/data_1583": "Nucleic acid melting profile", + "http://edamontology.org/data_1584": "Nucleic acid enthalpy", + "http://edamontology.org/data_1585": "Nucleic acid entropy", + "http://edamontology.org/data_1586": "Nucleic acid melting temperature", + "http://edamontology.org/data_1587": "Nucleic acid stitch profile", + "http://edamontology.org/data_1588": "DNA base pair stacking energies data", + "http://edamontology.org/data_1589": "DNA base pair twist angle data", + "http://edamontology.org/data_1590": "DNA base trimer roll angles data", + "http://edamontology.org/data_1591": "Vienna RNA parameters", + "http://edamontology.org/data_1592": "Vienna RNA structure constraints", + "http://edamontology.org/data_1593": "Vienna RNA concentration data", + "http://edamontology.org/data_1594": "Vienna RNA calculated energy", + "http://edamontology.org/data_1595": "Base pairing probability matrix dotplot", + "http://edamontology.org/data_1596": "Nucleic acid folding report", + "http://edamontology.org/data_1597": "Codon usage table", + "http://edamontology.org/data_1598": "Genetic code", + "http://edamontology.org/data_1599": "Codon adaptation index", + "http://edamontology.org/data_1600": "Codon usage bias plot", + "http://edamontology.org/data_1601": "Nc statistic", + "http://edamontology.org/data_1602": "Codon usage fraction difference", + "http://edamontology.org/data_1621": "Pharmacogenomic test report", + "http://edamontology.org/data_1622": "Disease report", + "http://edamontology.org/data_1634": "Linkage disequilibrium (report)", + "http://edamontology.org/data_1636": "Heat map", + "http://edamontology.org/data_1642": "Affymetrix probe sets library file", + "http://edamontology.org/data_1643": "Affymetrix probe sets information library file", + "http://edamontology.org/data_1646": "Molecular weights standard fingerprint", + "http://edamontology.org/data_1656": "Metabolic pathway report", + "http://edamontology.org/data_1657": "Genetic information processing pathway report", + "http://edamontology.org/data_1658": "Environmental information processing pathway report", + "http://edamontology.org/data_1659": "Signal transduction pathway report", + "http://edamontology.org/data_1660": "Cellular process pathways report", + "http://edamontology.org/data_1661": "Disease pathway or network report", + "http://edamontology.org/data_1662": "Drug structure relationship map", + "http://edamontology.org/data_1663": "Protein interaction networks", + "http://edamontology.org/data_1664": "MIRIAM datatype", + "http://edamontology.org/data_1667": "E-value", + "http://edamontology.org/data_1668": "Z-value", + "http://edamontology.org/data_1669": "P-value", + "http://edamontology.org/data_1670": "Database version information", + "http://edamontology.org/data_1671": "Tool version information", + "http://edamontology.org/data_1672": "CATH version information", + "http://edamontology.org/data_1673": "Swiss-Prot to PDB mapping", + "http://edamontology.org/data_1674": "Sequence database cross-references", + "http://edamontology.org/data_1675": "Job status", + "http://edamontology.org/data_1676": "Job ID", + "http://edamontology.org/data_1677": "Job type", + "http://edamontology.org/data_1678": "Tool log", + "http://edamontology.org/data_1679": "DaliLite log file", + "http://edamontology.org/data_1680": "STRIDE log file", + "http://edamontology.org/data_1681": "NACCESS log file", + "http://edamontology.org/data_1682": "EMBOSS wordfinder log file", + "http://edamontology.org/data_1683": "EMBOSS domainatrix log file", + "http://edamontology.org/data_1684": "EMBOSS sites log file", + "http://edamontology.org/data_1685": "EMBOSS supermatcher error file", + "http://edamontology.org/data_1686": "EMBOSS megamerger log file", + "http://edamontology.org/data_1687": "EMBOSS whichdb log file", + "http://edamontology.org/data_1688": "EMBOSS vectorstrip log file", + "http://edamontology.org/data_1689": "Username", + "http://edamontology.org/data_1690": "Password", + "http://edamontology.org/data_1691": "Email address", + "http://edamontology.org/data_1692": "Person name", + "http://edamontology.org/data_1693": "Number of iterations", + "http://edamontology.org/data_1694": "Number of output entities", + "http://edamontology.org/data_1695": "Hit sort order", + "http://edamontology.org/data_1696": "Drug report", + "http://edamontology.org/data_1707": "Phylogenetic tree image", + "http://edamontology.org/data_1708": "RNA secondary structure image", + "http://edamontology.org/data_1709": "Protein secondary structure image", + "http://edamontology.org/data_1710": "Structure image", + "http://edamontology.org/data_1711": "Sequence alignment image", + "http://edamontology.org/data_1712": "Chemical structure image", + "http://edamontology.org/data_1713": "Fate map", + "http://edamontology.org/data_1714": "Microarray spots image", + "http://edamontology.org/data_1715": "BioPax term", + "http://edamontology.org/data_1716": "GO", + "http://edamontology.org/data_1717": "MeSH", + "http://edamontology.org/data_1718": "HGNC", + "http://edamontology.org/data_1719": "NCBI taxonomy vocabulary", + "http://edamontology.org/data_1720": "Plant ontology term", + "http://edamontology.org/data_1721": "UMLS", + "http://edamontology.org/data_1722": "FMA", + "http://edamontology.org/data_1723": "EMAP", + "http://edamontology.org/data_1724": "ChEBI", + "http://edamontology.org/data_1725": "MGED", + "http://edamontology.org/data_1726": "myGrid", + "http://edamontology.org/data_1727": "GO (biological process)", + "http://edamontology.org/data_1728": "GO (molecular function)", + "http://edamontology.org/data_1729": "GO (cellular component)", + "http://edamontology.org/data_1730": "Ontology relation type", + "http://edamontology.org/data_1731": "Ontology concept definition", + "http://edamontology.org/data_1732": "Ontology concept comment", + "http://edamontology.org/data_1733": "Ontology concept reference", + "http://edamontology.org/data_1738": "doc2loc document information", + "http://edamontology.org/data_1742": "PDB residue number", + "http://edamontology.org/data_1743": "Atomic coordinate", + "http://edamontology.org/data_1744": "Atomic x coordinate", + "http://edamontology.org/data_1745": "Atomic y coordinate", + "http://edamontology.org/data_1746": "Atomic z coordinate", + "http://edamontology.org/data_1748": "PDB atom name", + "http://edamontology.org/data_1755": "Protein atom", + "http://edamontology.org/data_1756": "Protein residue", + "http://edamontology.org/data_1757": "Atom name", + "http://edamontology.org/data_1758": "PDB residue name", + "http://edamontology.org/data_1759": "PDB model number", + "http://edamontology.org/data_1762": "CATH domain report", + "http://edamontology.org/data_1764": "CATH representative domain sequences (ATOM)", + "http://edamontology.org/data_1765": "CATH representative domain sequences (COMBS)", + "http://edamontology.org/data_1766": "CATH domain sequences (ATOM)", + "http://edamontology.org/data_1767": "CATH domain sequences (COMBS)", + "http://edamontology.org/data_1771": "Sequence version", + "http://edamontology.org/data_1772": "Score", + "http://edamontology.org/data_1776": "Protein report (function)", + "http://edamontology.org/data_1783": "Gene name (ASPGD)", + "http://edamontology.org/data_1784": "Gene name (CGD)", + "http://edamontology.org/data_1785": "Gene name (dictyBase)", + "http://edamontology.org/data_1786": "Gene name (EcoGene primary)", + "http://edamontology.org/data_1787": "Gene name (MaizeGDB)", + "http://edamontology.org/data_1788": "Gene name (SGD)", + "http://edamontology.org/data_1789": "Gene name (TGD)", + "http://edamontology.org/data_1790": "Gene name (CGSC)", + "http://edamontology.org/data_1791": "Gene name (HGNC)", + "http://edamontology.org/data_1792": "Gene name (MGD)", + "http://edamontology.org/data_1793": "Gene name (Bacillus subtilis)", + "http://edamontology.org/data_1794": "Gene ID (PlasmoDB)", + "http://edamontology.org/data_1795": "Gene ID (EcoGene)", + "http://edamontology.org/data_1796": "Gene ID (FlyBase)", + "http://edamontology.org/data_1797": "Gene ID (GeneDB Glossina morsitans)", + "http://edamontology.org/data_1798": "Gene ID (GeneDB Leishmania major)", + "http://edamontology.org/data_1799": "Gene ID (GeneDB Plasmodium falciparum)", + "http://edamontology.org/data_1800": "Gene ID (GeneDB Schizosaccharomyces pombe)", + "http://edamontology.org/data_1801": "Gene ID (GeneDB Trypanosoma brucei)", + "http://edamontology.org/data_1802": "Gene ID (Gramene)", + "http://edamontology.org/data_1803": "Gene ID (Virginia microbial)", + "http://edamontology.org/data_1804": "Gene ID (SGN)", + "http://edamontology.org/data_1805": "Gene ID (WormBase)", + "http://edamontology.org/data_1806": "Gene synonym", + "http://edamontology.org/data_1807": "ORF name", + "http://edamontology.org/data_1852": "Sequence assembly component", + "http://edamontology.org/data_1853": "Chromosome annotation (aberration)", + "http://edamontology.org/data_1855": "Clone ID", + "http://edamontology.org/data_1856": "PDB insertion code", + "http://edamontology.org/data_1857": "Atomic occupancy", + "http://edamontology.org/data_1858": "Isotropic B factor", + "http://edamontology.org/data_1859": "Deletion map", + "http://edamontology.org/data_1860": "QTL map", + "http://edamontology.org/data_1863": "Haplotype map", + "http://edamontology.org/data_1864": "Map set data", + "http://edamontology.org/data_1865": "Map feature", + "http://edamontology.org/data_1866": "Map type", + "http://edamontology.org/data_1867": "Protein fold name", + "http://edamontology.org/data_1868": "Taxon", + "http://edamontology.org/data_1869": "Organism identifier", + "http://edamontology.org/data_1870": "Genus name", + "http://edamontology.org/data_1872": "Taxonomic classification", + "http://edamontology.org/data_1873": "iHOP organism ID", + "http://edamontology.org/data_1874": "Genbank common name", + "http://edamontology.org/data_1875": "NCBI taxon", + "http://edamontology.org/data_1877": "Synonym", + "http://edamontology.org/data_1878": "Misspelling", + "http://edamontology.org/data_1879": "Acronym", + "http://edamontology.org/data_1880": "Misnomer", + "http://edamontology.org/data_1881": "Author ID", + "http://edamontology.org/data_1882": "DragonDB author identifier", + "http://edamontology.org/data_1883": "Annotated URI", + "http://edamontology.org/data_1884": "UniProt keywords", + "http://edamontology.org/data_1885": "Gene ID (GeneFarm)", + "http://edamontology.org/data_1886": "Blattner number", + "http://edamontology.org/data_1887": "Gene ID (MIPS Maize)", + "http://edamontology.org/data_1888": "Gene ID (MIPS Medicago)", + "http://edamontology.org/data_1889": "Gene name (DragonDB)", + "http://edamontology.org/data_1890": "Gene name (Arabidopsis)", + "http://edamontology.org/data_1891": "iHOP symbol", + "http://edamontology.org/data_1892": "Gene name (GeneFarm)", + "http://edamontology.org/data_1893": "Locus ID", + "http://edamontology.org/data_1895": "Locus ID (AGI)", + "http://edamontology.org/data_1896": "Locus ID (ASPGD)", + "http://edamontology.org/data_1897": "Locus ID (MGG)", + "http://edamontology.org/data_1898": "Locus ID (CGD)", + "http://edamontology.org/data_1899": "Locus ID (CMR)", + "http://edamontology.org/data_1900": "NCBI locus tag", + "http://edamontology.org/data_1901": "Locus ID (SGD)", + "http://edamontology.org/data_1902": "Locus ID (MMP)", + "http://edamontology.org/data_1903": "Locus ID (DictyBase)", + "http://edamontology.org/data_1904": "Locus ID (EntrezGene)", + "http://edamontology.org/data_1905": "Locus ID (MaizeGDB)", + "http://edamontology.org/data_1906": "Quantitative trait locus", + "http://edamontology.org/data_1907": "Gene ID (KOME)", + "http://edamontology.org/data_1908": "Locus ID (Tropgene)", + "http://edamontology.org/data_1916": "Alignment", + "http://edamontology.org/data_1917": "Atomic property", + "http://edamontology.org/data_2007": "UniProt keyword", + "http://edamontology.org/data_2009": "Ordered locus name", + "http://edamontology.org/data_2012": "Sequence coordinates", + "http://edamontology.org/data_2016": "Amino acid property", + "http://edamontology.org/data_2018": "Annotation", + "http://edamontology.org/data_2019": "Map data", + "http://edamontology.org/data_2022": "Vienna RNA structural data", + "http://edamontology.org/data_2023": "Sequence mask parameter", + "http://edamontology.org/data_2024": "Enzyme kinetics data", + "http://edamontology.org/data_2025": "Michaelis Menten plot", + "http://edamontology.org/data_2026": "Hanes Woolf plot", + "http://edamontology.org/data_2028": "Experimental data", + "http://edamontology.org/data_2041": "Genome version information", + "http://edamontology.org/data_2042": "Evidence", + "http://edamontology.org/data_2043": "Sequence record lite", + "http://edamontology.org/data_2044": "Sequence", + "http://edamontology.org/data_2046": "Nucleic acid sequence record (lite)", + "http://edamontology.org/data_2047": "Protein sequence record (lite)", + "http://edamontology.org/data_2048": "Report", + "http://edamontology.org/data_2050": "Molecular property (general)", + "http://edamontology.org/data_2053": "Structural data", + "http://edamontology.org/data_2070": "Sequence motif (nucleic acid)", + "http://edamontology.org/data_2071": "Sequence motif (protein)", + "http://edamontology.org/data_2079": "Search parameter", + "http://edamontology.org/data_2080": "Database search results", + "http://edamontology.org/data_2081": "Secondary structure", + "http://edamontology.org/data_2082": "Matrix", + "http://edamontology.org/data_2083": "Alignment data", + "http://edamontology.org/data_2084": "Nucleic acid report", + "http://edamontology.org/data_2085": "Structure report", + "http://edamontology.org/data_2086": "Nucleic acid structure data", + "http://edamontology.org/data_2087": "Molecular property", + "http://edamontology.org/data_2088": "DNA base structural data", + "http://edamontology.org/data_2090": "Database entry version information", + "http://edamontology.org/data_2091": "Accession", + "http://edamontology.org/data_2092": "SNP", + "http://edamontology.org/data_2093": "Data reference", + "http://edamontology.org/data_2098": "Job identifier", + "http://edamontology.org/data_2099": "Name", + "http://edamontology.org/data_2100": "Type", + "http://edamontology.org/data_2101": "User ID", + "http://edamontology.org/data_2102": "KEGG organism code", + "http://edamontology.org/data_2103": "Gene name (KEGG GENES)", + "http://edamontology.org/data_2104": "BioCyc ID", + "http://edamontology.org/data_2105": "Compound ID (BioCyc)", + "http://edamontology.org/data_2106": "Reaction ID (BioCyc)", + "http://edamontology.org/data_2107": "Enzyme ID (BioCyc)", + "http://edamontology.org/data_2108": "Reaction ID", + "http://edamontology.org/data_2109": "Identifier (hybrid)", + "http://edamontology.org/data_2110": "Molecular property identifier", + "http://edamontology.org/data_2111": "Codon usage table ID", + "http://edamontology.org/data_2112": "FlyBase primary identifier", + "http://edamontology.org/data_2113": "WormBase identifier", + "http://edamontology.org/data_2114": "WormBase wormpep ID", + "http://edamontology.org/data_2116": "Nucleic acid features (codon)", + "http://edamontology.org/data_2117": "Map identifier", + "http://edamontology.org/data_2118": "Person identifier", + "http://edamontology.org/data_2119": "Nucleic acid identifier", + "http://edamontology.org/data_2126": "Translation frame specification", + "http://edamontology.org/data_2127": "Genetic code identifier", + "http://edamontology.org/data_2128": "Genetic code name", + "http://edamontology.org/data_2129": "File format name", + "http://edamontology.org/data_2130": "Sequence profile type", + "http://edamontology.org/data_2131": "Operating system name", + "http://edamontology.org/data_2132": "Mutation type", + "http://edamontology.org/data_2133": "Logical operator", + "http://edamontology.org/data_2134": "Results sort order", + "http://edamontology.org/data_2135": "Toggle", + "http://edamontology.org/data_2136": "Sequence width", + "http://edamontology.org/data_2137": "Gap penalty", + "http://edamontology.org/data_2139": "Nucleic acid melting temperature", + "http://edamontology.org/data_2140": "Concentration", + "http://edamontology.org/data_2141": "Window step size", + "http://edamontology.org/data_2142": "EMBOSS graph", + "http://edamontology.org/data_2143": "EMBOSS report", + "http://edamontology.org/data_2145": "Sequence offset", + "http://edamontology.org/data_2146": "Threshold", + "http://edamontology.org/data_2147": "Protein report (transcription factor)", + "http://edamontology.org/data_2149": "Database category name", + "http://edamontology.org/data_2150": "Sequence profile name", + "http://edamontology.org/data_2151": "Color", + "http://edamontology.org/data_2152": "Rendering parameter", + "http://edamontology.org/data_2154": "Sequence name", + "http://edamontology.org/data_2156": "Date", + "http://edamontology.org/data_2157": "Word composition", + "http://edamontology.org/data_2160": "Fickett testcode plot", + "http://edamontology.org/data_2161": "Sequence similarity plot", + "http://edamontology.org/data_2162": "Helical wheel", + "http://edamontology.org/data_2163": "Helical net", + "http://edamontology.org/data_2164": "Protein sequence properties plot", + "http://edamontology.org/data_2165": "Protein ionisation curve", + "http://edamontology.org/data_2166": "Sequence composition plot", + "http://edamontology.org/data_2167": "Nucleic acid density plot", + "http://edamontology.org/data_2168": "Sequence trace image", + "http://edamontology.org/data_2169": "Nucleic acid features (siRNA)", + "http://edamontology.org/data_2173": "Sequence set (stream)", + "http://edamontology.org/data_2174": "FlyBase secondary identifier", + "http://edamontology.org/data_2176": "Cardinality", + "http://edamontology.org/data_2177": "Exactly 1", + "http://edamontology.org/data_2178": "1 or more", + "http://edamontology.org/data_2179": "Exactly 2", + "http://edamontology.org/data_2180": "2 or more", + "http://edamontology.org/data_2190": "Sequence checksum", + "http://edamontology.org/data_2191": "Protein features report (chemical modifications)", + "http://edamontology.org/data_2192": "Error", + "http://edamontology.org/data_2193": "Database entry metadata", + "http://edamontology.org/data_2198": "Gene cluster", + "http://edamontology.org/data_2201": "Sequence record full", + "http://edamontology.org/data_2208": "Plasmid identifier", + "http://edamontology.org/data_2209": "Mutation ID", + "http://edamontology.org/data_2212": "Mutation annotation (basic)", + "http://edamontology.org/data_2213": "Mutation annotation (prevalence)", + "http://edamontology.org/data_2214": "Mutation annotation (prognostic)", + "http://edamontology.org/data_2215": "Mutation annotation (functional)", + "http://edamontology.org/data_2216": "Codon number", + "http://edamontology.org/data_2217": "Tumor annotation", + "http://edamontology.org/data_2218": "Server metadata", + "http://edamontology.org/data_2219": "Database field name", + "http://edamontology.org/data_2220": "Sequence cluster ID (SYSTERS)", + "http://edamontology.org/data_2223": "Ontology metadata", + "http://edamontology.org/data_2235": "Raw SCOP domain classification", + "http://edamontology.org/data_2236": "Raw CATH domain classification", + "http://edamontology.org/data_2240": "Heterogen annotation", + "http://edamontology.org/data_2242": "Phylogenetic property values", + "http://edamontology.org/data_2245": "Sequence set (bootstrapped)", + "http://edamontology.org/data_2247": "Phylogenetic consensus tree", + "http://edamontology.org/data_2248": "Schema", + "http://edamontology.org/data_2249": "DTD", + "http://edamontology.org/data_2250": "XML Schema", + "http://edamontology.org/data_2251": "Relax-NG schema", + "http://edamontology.org/data_2252": "XSLT stylesheet", + "http://edamontology.org/data_2253": "Data resource definition name", + "http://edamontology.org/data_2254": "OBO file format name", + "http://edamontology.org/data_2285": "Gene ID (MIPS)", + "http://edamontology.org/data_2288": "Sequence identifier (protein)", + "http://edamontology.org/data_2289": "Sequence identifier (nucleic acid)", + "http://edamontology.org/data_2290": "EMBL accession", + "http://edamontology.org/data_2291": "UniProt ID", + "http://edamontology.org/data_2292": "GenBank accession", + "http://edamontology.org/data_2293": "Gramene secondary identifier", + "http://edamontology.org/data_2294": "Sequence variation ID", + "http://edamontology.org/data_2295": "Gene ID", + "http://edamontology.org/data_2296": "Gene name (AceView)", + "http://edamontology.org/data_2297": "Gene ID (ECK)", + "http://edamontology.org/data_2298": "Gene ID (HGNC)", + "http://edamontology.org/data_2299": "Gene name", + "http://edamontology.org/data_2300": "Gene name (NCBI)", + "http://edamontology.org/data_2301": "SMILES string", + "http://edamontology.org/data_2302": "STRING ID", + "http://edamontology.org/data_2307": "Virus annotation", + "http://edamontology.org/data_2308": "Virus annotation (taxonomy)", + "http://edamontology.org/data_2309": "Reaction ID (SABIO-RK)", + "http://edamontology.org/data_2313": "Carbohydrate report", + "http://edamontology.org/data_2314": "GI number", + "http://edamontology.org/data_2315": "NCBI version", + "http://edamontology.org/data_2316": "Cell line name", + "http://edamontology.org/data_2317": "Cell line name (exact)", + "http://edamontology.org/data_2318": "Cell line name (truncated)", + "http://edamontology.org/data_2319": "Cell line name (no punctuation)", + "http://edamontology.org/data_2320": "Cell line name (assonant)", + "http://edamontology.org/data_2321": "Enzyme ID", + "http://edamontology.org/data_2325": "REBASE enzyme number", + "http://edamontology.org/data_2326": "DrugBank ID", + "http://edamontology.org/data_2327": "GI number (protein)", + "http://edamontology.org/data_2335": "Bit score", + "http://edamontology.org/data_2336": "Translation phase specification", + "http://edamontology.org/data_2337": "Resource metadata", + "http://edamontology.org/data_2338": "Ontology identifier", + "http://edamontology.org/data_2339": "Ontology concept name", + "http://edamontology.org/data_2340": "Genome build identifier", + "http://edamontology.org/data_2342": "Pathway or network name", + "http://edamontology.org/data_2343": "Pathway ID (KEGG)", + "http://edamontology.org/data_2344": "Pathway ID (NCI-Nature)", + "http://edamontology.org/data_2345": "Pathway ID (ConsensusPathDB)", + "http://edamontology.org/data_2346": "Sequence cluster ID (UniRef)", + "http://edamontology.org/data_2347": "Sequence cluster ID (UniRef100)", + "http://edamontology.org/data_2348": "Sequence cluster ID (UniRef90)", + "http://edamontology.org/data_2349": "Sequence cluster ID (UniRef50)", + "http://edamontology.org/data_2353": "Ontology data", + "http://edamontology.org/data_2354": "RNA family report", + "http://edamontology.org/data_2355": "RNA family identifier", + "http://edamontology.org/data_2356": "RFAM accession", + "http://edamontology.org/data_2357": "Protein signature type", + "http://edamontology.org/data_2358": "Domain-nucleic acid interaction report", + "http://edamontology.org/data_2359": "Domain-domain interactions", + "http://edamontology.org/data_2360": "Domain-domain interaction (indirect)", + "http://edamontology.org/data_2362": "Sequence accession (hybrid)", + "http://edamontology.org/data_2363": "2D PAGE data", + "http://edamontology.org/data_2364": "2D PAGE report", + "http://edamontology.org/data_2365": "Pathway or network accession", + "http://edamontology.org/data_2366": "Secondary structure alignment", + "http://edamontology.org/data_2367": "ASTD ID", + "http://edamontology.org/data_2368": "ASTD ID (exon)", + "http://edamontology.org/data_2369": "ASTD ID (intron)", + "http://edamontology.org/data_2370": "ASTD ID (polya)", + "http://edamontology.org/data_2371": "ASTD ID (tss)", + "http://edamontology.org/data_2372": "2D PAGE spot report", + "http://edamontology.org/data_2373": "Spot ID", + "http://edamontology.org/data_2374": "Spot serial number", + "http://edamontology.org/data_2375": "Spot ID (HSC-2DPAGE)", + "http://edamontology.org/data_2378": "Protein-motif interaction", + "http://edamontology.org/data_2379": "Strain identifier", + "http://edamontology.org/data_2380": "CABRI accession", + "http://edamontology.org/data_2381": "Experiment report (genotyping)", + "http://edamontology.org/data_2382": "Genotype experiment ID", + "http://edamontology.org/data_2383": "EGA accession", + "http://edamontology.org/data_2384": "IPI protein ID", + "http://edamontology.org/data_2385": "RefSeq accession (protein)", + "http://edamontology.org/data_2386": "EPD ID", + "http://edamontology.org/data_2387": "TAIR accession", + "http://edamontology.org/data_2388": "TAIR accession (At gene)", + "http://edamontology.org/data_2389": "UniSTS accession", + "http://edamontology.org/data_2390": "UNITE accession", + "http://edamontology.org/data_2391": "UTR accession", + "http://edamontology.org/data_2392": "UniParc accession", + "http://edamontology.org/data_2393": "mFLJ/mKIAA number", + "http://edamontology.org/data_2395": "Fungi annotation", + "http://edamontology.org/data_2396": "Fungi annotation (anamorph)", + "http://edamontology.org/data_2398": "Ensembl protein ID", + "http://edamontology.org/data_2400": "Toxin annotation", + "http://edamontology.org/data_2401": "Protein report (membrane protein)", + "http://edamontology.org/data_2402": "Protein-drug interaction report", + "http://edamontology.org/data_2522": "Map data", + "http://edamontology.org/data_2523": "Phylogenetic data", + "http://edamontology.org/data_2524": "Protein data", + "http://edamontology.org/data_2525": "Nucleic acid data", + "http://edamontology.org/data_2526": "Text data", + "http://edamontology.org/data_2527": "Parameter", + "http://edamontology.org/data_2528": "Molecular data", + "http://edamontology.org/data_2529": "Molecule report", + "http://edamontology.org/data_2530": "Organism report", + "http://edamontology.org/data_2531": "Protocol", + "http://edamontology.org/data_2534": "Sequence attribute", + "http://edamontology.org/data_2535": "Sequence tag profile", + "http://edamontology.org/data_2536": "Mass spectrometry data", + "http://edamontology.org/data_2537": "Protein structure raw data", + "http://edamontology.org/data_2538": "Mutation identifier", + "http://edamontology.org/data_2539": "Alignment data", + "http://edamontology.org/data_2540": "Data index data", + "http://edamontology.org/data_2563": "Amino acid name (single letter)", + "http://edamontology.org/data_2564": "Amino acid name (three letter)", + "http://edamontology.org/data_2565": "Amino acid name (full name)", + "http://edamontology.org/data_2576": "Toxin identifier", + "http://edamontology.org/data_2578": "ArachnoServer ID", + "http://edamontology.org/data_2579": "Expressed gene list", + "http://edamontology.org/data_2580": "BindingDB Monomer ID", + "http://edamontology.org/data_2581": "GO concept name", + "http://edamontology.org/data_2582": "GO concept ID (biological process)", + "http://edamontology.org/data_2583": "GO concept ID (molecular function)", + "http://edamontology.org/data_2584": "GO concept name (cellular component)", + "http://edamontology.org/data_2586": "Northern blot image", + "http://edamontology.org/data_2587": "Blot ID", + "http://edamontology.org/data_2588": "BlotBase blot ID", + "http://edamontology.org/data_2589": "Hierarchy", + "http://edamontology.org/data_2590": "Hierarchy identifier", + "http://edamontology.org/data_2591": "Brite hierarchy ID", + "http://edamontology.org/data_2592": "Cancer type", + "http://edamontology.org/data_2593": "BRENDA organism ID", + "http://edamontology.org/data_2594": "UniGene taxon", + "http://edamontology.org/data_2595": "UTRdb taxon", + "http://edamontology.org/data_2596": "Catalogue ID", + "http://edamontology.org/data_2597": "CABRI catalogue name", + "http://edamontology.org/data_2598": "Secondary structure alignment metadata", + "http://edamontology.org/data_2599": "Molecule interaction report", + "http://edamontology.org/data_2600": "Pathway or network", + "http://edamontology.org/data_2601": "Small molecule data", + "http://edamontology.org/data_2602": "Genotype and phenotype data", + "http://edamontology.org/data_2603": "Expression data", + "http://edamontology.org/data_2605": "Compound ID (KEGG)", + "http://edamontology.org/data_2606": "RFAM name", + "http://edamontology.org/data_2608": "Reaction ID (KEGG)", + "http://edamontology.org/data_2609": "Drug ID (KEGG)", + "http://edamontology.org/data_2610": "Ensembl ID", + "http://edamontology.org/data_2611": "ICD identifier", + "http://edamontology.org/data_2612": "Sequence cluster ID (CluSTr)", + "http://edamontology.org/data_2613": "KEGG Glycan ID", + "http://edamontology.org/data_2614": "TCDB ID", + "http://edamontology.org/data_2615": "MINT ID", + "http://edamontology.org/data_2616": "DIP ID", + "http://edamontology.org/data_2617": "Signaling Gateway protein ID", + "http://edamontology.org/data_2618": "Protein modification ID", + "http://edamontology.org/data_2619": "RESID ID", + "http://edamontology.org/data_2620": "RGD ID", + "http://edamontology.org/data_2621": "TAIR accession (protein)", + "http://edamontology.org/data_2622": "Compound ID (HMDB)", + "http://edamontology.org/data_2625": "LIPID MAPS ID", + "http://edamontology.org/data_2626": "PeptideAtlas ID", + "http://edamontology.org/data_2627": "Molecular interaction ID", + "http://edamontology.org/data_2628": "BioGRID interaction ID", + "http://edamontology.org/data_2629": "Enzyme ID (MEROPS)", + "http://edamontology.org/data_2630": "Mobile genetic element ID", + "http://edamontology.org/data_2631": "ACLAME ID", + "http://edamontology.org/data_2632": "SGD ID", + "http://edamontology.org/data_2633": "Book ID", + "http://edamontology.org/data_2634": "ISBN", + "http://edamontology.org/data_2635": "Compound ID (3DMET)", + "http://edamontology.org/data_2636": "MatrixDB interaction ID", + "http://edamontology.org/data_2637": "cPath ID", + "http://edamontology.org/data_2638": "PubChem bioassay ID", + "http://edamontology.org/data_2639": "PubChem ID", + "http://edamontology.org/data_2641": "Reaction ID (MACie)", + "http://edamontology.org/data_2642": "Gene ID (miRBase)", + "http://edamontology.org/data_2643": "Gene ID (ZFIN)", + "http://edamontology.org/data_2644": "Reaction ID (Rhea)", + "http://edamontology.org/data_2645": "Pathway ID (Unipathway)", + "http://edamontology.org/data_2646": "Compound ID (ChEMBL)", + "http://edamontology.org/data_2647": "LGICdb identifier", + "http://edamontology.org/data_2648": "Reaction kinetics ID (SABIO-RK)", + "http://edamontology.org/data_2649": "PharmGKB ID", + "http://edamontology.org/data_2650": "Pathway ID (PharmGKB)", + "http://edamontology.org/data_2651": "Disease ID (PharmGKB)", + "http://edamontology.org/data_2652": "Drug ID (PharmGKB)", + "http://edamontology.org/data_2653": "Drug ID (TTD)", + "http://edamontology.org/data_2654": "Target ID (TTD)", + "http://edamontology.org/data_2655": "Cell type identifier", + "http://edamontology.org/data_2656": "NeuronDB ID", + "http://edamontology.org/data_2657": "NeuroMorpho ID", + "http://edamontology.org/data_2658": "Compound ID (ChemIDplus)", + "http://edamontology.org/data_2659": "Pathway ID (SMPDB)", + "http://edamontology.org/data_2660": "BioNumbers ID", + "http://edamontology.org/data_2662": "T3DB ID", + "http://edamontology.org/data_2663": "Carbohydrate identifier", + "http://edamontology.org/data_2664": "GlycomeDB ID", + "http://edamontology.org/data_2665": "LipidBank ID", + "http://edamontology.org/data_2666": "CDD ID", + "http://edamontology.org/data_2667": "MMDB ID", + "http://edamontology.org/data_2668": "iRefIndex ID", + "http://edamontology.org/data_2669": "ModelDB ID", + "http://edamontology.org/data_2670": "Pathway ID (DQCS)", + "http://edamontology.org/data_2671": "Ensembl ID (Homo sapiens)", + "http://edamontology.org/data_2672": "Ensembl ID ('Bos taurus')", + "http://edamontology.org/data_2673": "Ensembl ID ('Canis familiaris')", + "http://edamontology.org/data_2674": "Ensembl ID ('Cavia porcellus')", + "http://edamontology.org/data_2675": "Ensembl ID ('Ciona intestinalis')", + "http://edamontology.org/data_2676": "Ensembl ID ('Ciona savignyi')", + "http://edamontology.org/data_2677": "Ensembl ID ('Danio rerio')", + "http://edamontology.org/data_2678": "Ensembl ID ('Dasypus novemcinctus')", + "http://edamontology.org/data_2679": "Ensembl ID ('Echinops telfairi')", + "http://edamontology.org/data_2680": "Ensembl ID ('Erinaceus europaeus')", + "http://edamontology.org/data_2681": "Ensembl ID ('Felis catus')", + "http://edamontology.org/data_2682": "Ensembl ID ('Gallus gallus')", + "http://edamontology.org/data_2683": "Ensembl ID ('Gasterosteus aculeatus')", + "http://edamontology.org/data_2684": "Ensembl ID ('Homo sapiens')", + "http://edamontology.org/data_2685": "Ensembl ID ('Loxodonta africana')", + "http://edamontology.org/data_2686": "Ensembl ID ('Macaca mulatta')", + "http://edamontology.org/data_2687": "Ensembl ID ('Monodelphis domestica')", + "http://edamontology.org/data_2688": "Ensembl ID ('Mus musculus')", + "http://edamontology.org/data_2689": "Ensembl ID ('Myotis lucifugus')", + "http://edamontology.org/data_2690": "Ensembl ID (\"Ornithorhynchus anatinus\")", + "http://edamontology.org/data_2691": "Ensembl ID ('Oryctolagus cuniculus')", + "http://edamontology.org/data_2692": "Ensembl ID ('Oryzias latipes')", + "http://edamontology.org/data_2693": "Ensembl ID ('Otolemur garnettii')", + "http://edamontology.org/data_2694": "Ensembl ID ('Pan troglodytes')", + "http://edamontology.org/data_2695": "Ensembl ID ('Rattus norvegicus')", + "http://edamontology.org/data_2696": "Ensembl ID ('Spermophilus tridecemlineatus')", + "http://edamontology.org/data_2697": "Ensembl ID ('Takifugu rubripes')", + "http://edamontology.org/data_2698": "Ensembl ID ('Tupaia belangeri')", + "http://edamontology.org/data_2699": "Ensembl ID ('Xenopus tropicalis')", + "http://edamontology.org/data_2700": "CATH identifier", + "http://edamontology.org/data_2701": "CATH node ID (family)", + "http://edamontology.org/data_2702": "Enzyme ID (CAZy)", + "http://edamontology.org/data_2704": "Clone ID (IMAGE)", + "http://edamontology.org/data_2705": "GO concept ID (cellular component)", + "http://edamontology.org/data_2706": "Chromosome name (BioCyc)", + "http://edamontology.org/data_2709": "CleanEx entry name", + "http://edamontology.org/data_2710": "CleanEx dataset code", + "http://edamontology.org/data_2711": "Genome report", + "http://edamontology.org/data_2713": "Protein ID (CORUM)", + "http://edamontology.org/data_2714": "CDD PSSM-ID", + "http://edamontology.org/data_2715": "Protein ID (CuticleDB)", + "http://edamontology.org/data_2716": "DBD ID", + "http://edamontology.org/data_2717": "Oligonucleotide probe annotation", + "http://edamontology.org/data_2718": "Oligonucleotide ID", + "http://edamontology.org/data_2719": "dbProbe ID", + "http://edamontology.org/data_2720": "Dinucleotide property", + "http://edamontology.org/data_2721": "DiProDB ID", + "http://edamontology.org/data_2722": "Protein features report (disordered structure)", + "http://edamontology.org/data_2723": "Protein ID (DisProt)", + "http://edamontology.org/data_2724": "Embryo report", + "http://edamontology.org/data_2725": "Ensembl transcript ID", + "http://edamontology.org/data_2726": "Inhibitor annotation", + "http://edamontology.org/data_2727": "Promoter ID", + "http://edamontology.org/data_2728": "EST accession", + "http://edamontology.org/data_2729": "COGEME EST ID", + "http://edamontology.org/data_2730": "COGEME unisequence ID", + "http://edamontology.org/data_2731": "Protein family ID (GeneFarm)", + "http://edamontology.org/data_2732": "Family name", + "http://edamontology.org/data_2733": "Genus name (virus)", + "http://edamontology.org/data_2734": "Family name (virus)", + "http://edamontology.org/data_2735": "Database name (SwissRegulon)", + "http://edamontology.org/data_2736": "Sequence feature ID (SwissRegulon)", + "http://edamontology.org/data_2737": "FIG ID", + "http://edamontology.org/data_2738": "Gene ID (Xenbase)", + "http://edamontology.org/data_2739": "Gene ID (Genolist)", + "http://edamontology.org/data_2740": "Gene name (Genolist)", + "http://edamontology.org/data_2741": "ABS ID", + "http://edamontology.org/data_2742": "AraC-XylS ID", + "http://edamontology.org/data_2743": "Gene name (HUGO)", + "http://edamontology.org/data_2744": "Locus ID (PseudoCAP)", + "http://edamontology.org/data_2745": "Locus ID (UTR)", + "http://edamontology.org/data_2746": "MonosaccharideDB ID", + "http://edamontology.org/data_2747": "Database name (CMD)", + "http://edamontology.org/data_2748": "Database name (Osteogenesis)", + "http://edamontology.org/data_2749": "Genome identifier", + "http://edamontology.org/data_2751": "GenomeReviews ID", + "http://edamontology.org/data_2752": "GlycoMap ID", + "http://edamontology.org/data_2753": "Carbohydrate conformational map", + "http://edamontology.org/data_2755": "Transcription factor name", + "http://edamontology.org/data_2756": "TCID", + "http://edamontology.org/data_2757": "Pfam domain name", + "http://edamontology.org/data_2758": "Pfam clan ID", + "http://edamontology.org/data_2759": "Gene ID (VectorBase)", + "http://edamontology.org/data_2761": "UTRSite ID", + "http://edamontology.org/data_2762": "Sequence signature report", + "http://edamontology.org/data_2763": "Locus annotation", + "http://edamontology.org/data_2764": "Protein name (UniProt)", + "http://edamontology.org/data_2765": "Term ID list", + "http://edamontology.org/data_2766": "HAMAP ID", + "http://edamontology.org/data_2767": "Identifier with metadata", + "http://edamontology.org/data_2768": "Gene symbol annotation", + "http://edamontology.org/data_2769": "Transcript ID", + "http://edamontology.org/data_2770": "HIT ID", + "http://edamontology.org/data_2771": "HIX ID", + "http://edamontology.org/data_2772": "HPA antibody id", + "http://edamontology.org/data_2773": "IMGT/HLA ID", + "http://edamontology.org/data_2774": "Gene ID (JCVI)", + "http://edamontology.org/data_2775": "Kinase name", + "http://edamontology.org/data_2776": "ConsensusPathDB entity ID", + "http://edamontology.org/data_2777": "ConsensusPathDB entity name", + "http://edamontology.org/data_2778": "CCAP strain number", + "http://edamontology.org/data_2779": "Stock number", + "http://edamontology.org/data_2780": "Stock number (TAIR)", + "http://edamontology.org/data_2781": "REDIdb ID", + "http://edamontology.org/data_2782": "SMART domain name", + "http://edamontology.org/data_2783": "Protein family ID (PANTHER)", + "http://edamontology.org/data_2784": "RNAVirusDB ID", + "http://edamontology.org/data_2785": "Virus ID", + "http://edamontology.org/data_2786": "NCBI Genome Project ID", + "http://edamontology.org/data_2787": "NCBI genome accession", + "http://edamontology.org/data_2788": "Sequence profile data", + "http://edamontology.org/data_2789": "Protein ID (TopDB)", + "http://edamontology.org/data_2790": "Gel ID", + "http://edamontology.org/data_2791": "Reference map name (SWISS-2DPAGE)", + "http://edamontology.org/data_2792": "Protein ID (PeroxiBase)", + "http://edamontology.org/data_2793": "SISYPHUS ID", + "http://edamontology.org/data_2794": "ORF ID", + "http://edamontology.org/data_2795": "ORF identifier", + "http://edamontology.org/data_2796": "Linucs ID", + "http://edamontology.org/data_2797": "Protein ID (LGICdb)", + "http://edamontology.org/data_2798": "MaizeDB ID", + "http://edamontology.org/data_2799": "Gene ID (MfunGD)", + "http://edamontology.org/data_2800": "Orpha number", + "http://edamontology.org/data_2802": "Protein ID (EcID)", + "http://edamontology.org/data_2803": "Clone ID (RefSeq)", + "http://edamontology.org/data_2804": "Protein ID (ConoServer)", + "http://edamontology.org/data_2805": "GeneSNP ID", + "http://edamontology.org/data_2812": "Lipid identifier", + "http://edamontology.org/data_2831": "Databank", + "http://edamontology.org/data_2832": "Web portal", + "http://edamontology.org/data_2835": "Gene ID (VBASE2)", + "http://edamontology.org/data_2836": "DPVweb ID", + "http://edamontology.org/data_2837": "Pathway ID (BioSystems)", + "http://edamontology.org/data_2838": "Experimental data (proteomics)", + "http://edamontology.org/data_2849": "Abstract", + "http://edamontology.org/data_2850": "Lipid structure", + "http://edamontology.org/data_2851": "Drug structure", + "http://edamontology.org/data_2852": "Toxin structure", + "http://edamontology.org/data_2854": "Position-specific scoring matrix", + "http://edamontology.org/data_2855": "Distance matrix", + "http://edamontology.org/data_2856": "Structural distance matrix", + "http://edamontology.org/data_2857": "Article metadata", + "http://edamontology.org/data_2858": "Ontology concept", + "http://edamontology.org/data_2865": "Codon usage bias", + "http://edamontology.org/data_2866": "Northern blot report", + "http://edamontology.org/data_2870": "Radiation hybrid map", + "http://edamontology.org/data_2872": "ID list", + "http://edamontology.org/data_2873": "Phylogenetic gene frequencies data", + "http://edamontology.org/data_2874": "Sequence set (polymorphic)", + "http://edamontology.org/data_2875": "DRCAT resource", + "http://edamontology.org/data_2877": "Protein complex", + "http://edamontology.org/data_2878": "Protein structural motif", + "http://edamontology.org/data_2879": "Lipid report", + "http://edamontology.org/data_2880": "Secondary structure image", + "http://edamontology.org/data_2881": "Secondary structure report", + "http://edamontology.org/data_2882": "DNA features", + "http://edamontology.org/data_2883": "RNA features report", + "http://edamontology.org/data_2884": "Plot", + "http://edamontology.org/data_2886": "Protein sequence record", + "http://edamontology.org/data_2887": "Nucleic acid sequence record", + "http://edamontology.org/data_2888": "Protein sequence record (full)", + "http://edamontology.org/data_2889": "Nucleic acid sequence record (full)", + "http://edamontology.org/data_2891": "Biological model accession", + "http://edamontology.org/data_2892": "Cell type name", + "http://edamontology.org/data_2893": "Cell type accession", + "http://edamontology.org/data_2894": "Compound accession", + "http://edamontology.org/data_2895": "Drug accession", + "http://edamontology.org/data_2896": "Toxin name", + "http://edamontology.org/data_2897": "Toxin accession", + "http://edamontology.org/data_2898": "Monosaccharide accession", + "http://edamontology.org/data_2899": "Drug name", + "http://edamontology.org/data_2900": "Carbohydrate accession", + "http://edamontology.org/data_2901": "Molecule accession", + "http://edamontology.org/data_2902": "Data resource definition accession", + "http://edamontology.org/data_2903": "Genome accession", + "http://edamontology.org/data_2904": "Map accession", + "http://edamontology.org/data_2905": "Lipid accession", + "http://edamontology.org/data_2906": "Peptide ID", + "http://edamontology.org/data_2907": "Protein accession", + "http://edamontology.org/data_2908": "Organism accession", + "http://edamontology.org/data_2909": "Organism name", + "http://edamontology.org/data_2910": "Protein family accession", + "http://edamontology.org/data_2911": "Transcription factor accession", + "http://edamontology.org/data_2912": "Strain accession", + "http://edamontology.org/data_2913": "Virus identifier", + "http://edamontology.org/data_2914": "Sequence features metadata", + "http://edamontology.org/data_2915": "Gramene identifier", + "http://edamontology.org/data_2916": "DDBJ accession", + "http://edamontology.org/data_2917": "ConsensusPathDB identifier", + "http://edamontology.org/data_2925": "Sequence data", + "http://edamontology.org/data_2927": "Codon usage", + "http://edamontology.org/data_2954": "Article report", + "http://edamontology.org/data_2955": "Sequence report", + "http://edamontology.org/data_2956": "Protein secondary structure", + "http://edamontology.org/data_2957": "Hopp and Woods plot", + "http://edamontology.org/data_2958": "Nucleic acid melting curve", + "http://edamontology.org/data_2959": "Nucleic acid probability profile", + "http://edamontology.org/data_2960": "Nucleic acid temperature profile", + "http://edamontology.org/data_2961": "Gene regulatory network report", + "http://edamontology.org/data_2965": "2D PAGE gel report", + "http://edamontology.org/data_2966": "Oligonucleotide probe sets annotation", + "http://edamontology.org/data_2967": "Microarray image", + "http://edamontology.org/data_2968": "Image", + "http://edamontology.org/data_2969": "Sequence image", + "http://edamontology.org/data_2970": "Protein hydropathy data", + "http://edamontology.org/data_2971": "Workflow data", + "http://edamontology.org/data_2972": "Workflow", + "http://edamontology.org/data_2973": "Secondary structure data", + "http://edamontology.org/data_2974": "Protein sequence (raw)", + "http://edamontology.org/data_2975": "Nucleic acid sequence (raw)", + "http://edamontology.org/data_2976": "Protein sequence", + "http://edamontology.org/data_2977": "Nucleic acid sequence", + "http://edamontology.org/data_2978": "Reaction data", + "http://edamontology.org/data_2979": "Peptide property", + "http://edamontology.org/data_2980": "Protein classification", + "http://edamontology.org/data_2981": "Sequence motif data", + "http://edamontology.org/data_2982": "Sequence profile data", + "http://edamontology.org/data_2983": "Pathway or network data", + "http://edamontology.org/data_2984": "Pathway or network report", + "http://edamontology.org/data_2985": "Nucleic acid thermodynamic data", + "http://edamontology.org/data_2986": "Nucleic acid classification", + "http://edamontology.org/data_2987": "Classification report", + "http://edamontology.org/data_2989": "Protein features report (key folding sites)", + "http://edamontology.org/data_2991": "Protein geometry data", + "http://edamontology.org/data_2992": "Protein structure image", + "http://edamontology.org/data_2994": "Phylogenetic character weights", + "http://edamontology.org/data_3002": "Annotation track", + "http://edamontology.org/data_3021": "UniProt accession", + "http://edamontology.org/data_3022": "NCBI genetic code ID", + "http://edamontology.org/data_3025": "Ontology concept identifier", + "http://edamontology.org/data_3026": "GO concept name (biological process)", + "http://edamontology.org/data_3027": "GO concept name (molecular function)", + "http://edamontology.org/data_3028": "Taxonomy", + "http://edamontology.org/data_3029": "Protein ID (EMBL/GenBank/DDBJ)", + "http://edamontology.org/data_3031": "Core data", + "http://edamontology.org/data_3034": "Sequence feature identifier", + "http://edamontology.org/data_3035": "Structure identifier", + "http://edamontology.org/data_3036": "Matrix identifier", + "http://edamontology.org/data_3085": "Protein sequence composition", + "http://edamontology.org/data_3086": "Nucleic acid sequence composition (report)", + "http://edamontology.org/data_3101": "Protein domain classification node", + "http://edamontology.org/data_3102": "CAS number", + "http://edamontology.org/data_3103": "ATC code", + "http://edamontology.org/data_3104": "UNII", + "http://edamontology.org/data_3105": "Geotemporal metadata", + "http://edamontology.org/data_3106": "System metadata", + "http://edamontology.org/data_3107": "Sequence feature name", + "http://edamontology.org/data_3108": "Experimental measurement", + "http://edamontology.org/data_3110": "Raw microarray data", + "http://edamontology.org/data_3111": "Processed microarray data", + "http://edamontology.org/data_3112": "Gene expression matrix", + "http://edamontology.org/data_3113": "Sample annotation", + "http://edamontology.org/data_3115": "Microarray metadata", + "http://edamontology.org/data_3116": "Microarray protocol annotation", + "http://edamontology.org/data_3117": "Microarray hybridisation data", + "http://edamontology.org/data_3119": "Sequence features (compositionally-biased regions)", + "http://edamontology.org/data_3122": "Nucleic acid features (difference and change)", + "http://edamontology.org/data_3128": "Nucleic acid structure report", + "http://edamontology.org/data_3129": "Protein features report (repeats)", + "http://edamontology.org/data_3130": "Sequence motif matches (protein)", + "http://edamontology.org/data_3131": "Sequence motif matches (nucleic acid)", + "http://edamontology.org/data_3132": "Nucleic acid features (d-loop)", + "http://edamontology.org/data_3133": "Nucleic acid features (stem loop)", + "http://edamontology.org/data_3134": "Gene transcript report", + "http://edamontology.org/data_3137": "Non-coding RNA", + "http://edamontology.org/data_3138": "Transcriptional features (report)", + "http://edamontology.org/data_3140": "Nucleic acid features (immunoglobulin gene structure)", + "http://edamontology.org/data_3141": "SCOP class", + "http://edamontology.org/data_3142": "SCOP fold", + "http://edamontology.org/data_3143": "SCOP superfamily", + "http://edamontology.org/data_3144": "SCOP family", + "http://edamontology.org/data_3145": "SCOP protein", + "http://edamontology.org/data_3146": "SCOP species", + "http://edamontology.org/data_3147": "Mass spectrometry experiment", + "http://edamontology.org/data_3148": "Gene family report", + "http://edamontology.org/data_3153": "Protein image", + "http://edamontology.org/data_3154": "Protein alignment", + "http://edamontology.org/data_3165": "NGS experiment", + "http://edamontology.org/data_3181": "Sequence assembly report", + "http://edamontology.org/data_3210": "Genome index", + "http://edamontology.org/data_3231": "GWAS report", + "http://edamontology.org/data_3236": "Cytoband position", + "http://edamontology.org/data_3238": "Cell type ontology ID", + "http://edamontology.org/data_3241": "Kinetic model", + "http://edamontology.org/data_3264": "COSMIC ID", + "http://edamontology.org/data_3265": "HGMD ID", + "http://edamontology.org/data_3266": "Sequence assembly ID", + "http://edamontology.org/data_3268": "Sequence feature type", + "http://edamontology.org/data_3269": "Gene homology (report)", + "http://edamontology.org/data_3270": "Ensembl gene tree ID", + "http://edamontology.org/data_3271": "Gene tree", + "http://edamontology.org/data_3272": "Species tree", + "http://edamontology.org/data_3273": "Sample ID", + "http://edamontology.org/data_3274": "MGI accession", + "http://edamontology.org/data_3275": "Phenotype name", + "http://edamontology.org/data_3354": "Transition matrix", + "http://edamontology.org/data_3355": "Emission matrix", + "http://edamontology.org/data_3356": "Hidden Markov model", + "http://edamontology.org/data_3358": "Format identifier", + "http://edamontology.org/data_3424": "Raw image", + "http://edamontology.org/data_3425": "Carbohydrate property", + "http://edamontology.org/data_3426": "Proteomics experiment report", + "http://edamontology.org/data_3427": "RNAi report", + "http://edamontology.org/data_3428": "Simulation experiment report", + "http://edamontology.org/data_3442": "MRI image", + "http://edamontology.org/data_3449": "Cell migration track image", + "http://edamontology.org/data_3451": "Rate of association", + "http://edamontology.org/data_3479": "Gene order", + "http://edamontology.org/data_3483": "Spectrum", + "http://edamontology.org/data_3488": "NMR spectrum", + "http://edamontology.org/data_3490": "Chemical structure sketch", + "http://edamontology.org/data_3492": "Nucleic acid signature", + "http://edamontology.org/data_3494": "DNA sequence", + "http://edamontology.org/data_3495": "RNA sequence", + "http://edamontology.org/data_3496": "RNA sequence (raw)", + "http://edamontology.org/data_3497": "DNA sequence (raw)", + "http://edamontology.org/data_3498": "Sequence variations", + "http://edamontology.org/data_3505": "Bibliography", + "http://edamontology.org/data_3509": "Ontology mapping", + "http://edamontology.org/data_3546": "Image metadata", + "http://edamontology.org/data_3558": "Clinical trial report", + "http://edamontology.org/data_3567": "Reference sample report", + "http://edamontology.org/data_3568": "Gene Expression Atlas Experiment ID", + "http://edamontology.org/data_3667": "Disease identifier", + "http://edamontology.org/data_3668": "Disease name", + "http://edamontology.org/data_3669": "Training material", + "http://edamontology.org/data_3670": "Online course", + "http://edamontology.org/data_3671": "Text", + "http://edamontology.org/data_3707": "Biodiversity data", + "http://edamontology.org/data_3716": "Biosafety report", + "http://edamontology.org/data_3717": "Isolation report", + "http://edamontology.org/data_3718": "Pathogenicity report", + "http://edamontology.org/data_3719": "Biosafety classification", + "http://edamontology.org/data_3720": "Geographic location", + "http://edamontology.org/data_3721": "Isolation source", + "http://edamontology.org/data_3722": "Physiology parameter", + "http://edamontology.org/data_3723": "Morphology parameter", + "http://edamontology.org/data_3724": "Cultivation parameter", + "http://edamontology.org/data_3732": "Sequencing metadata name", + "http://edamontology.org/data_3733": "Flow cell identifier", + "http://edamontology.org/data_3734": "Lane identifier", + "http://edamontology.org/data_3735": "Run number", + "http://edamontology.org/data_3736": "Ecological data", + "http://edamontology.org/data_3737": "Alpha diversity data", + "http://edamontology.org/data_3738": "Beta diversity data", + "http://edamontology.org/data_3739": "Gamma diversity data", + "http://edamontology.org/data_3743": "Ordination plot", + "http://edamontology.org/data_3753": "Over-representation data", + "http://edamontology.org/data_3754": "GO-term enrichment data", + "http://edamontology.org/data_3756": "Localisation score", + "http://edamontology.org/data_3757": "Unimod ID", + "http://edamontology.org/data_3759": "ProteomeXchange ID", + "http://edamontology.org/data_3768": "Clustered expression profiles", + "http://edamontology.org/data_3769": "BRENDA ontology concept ID", + "http://edamontology.org/data_3779": "Annotated text", + "http://edamontology.org/data_3786": "Query script", + "http://edamontology.org/data_3805": "3D EM Map", + "http://edamontology.org/data_3806": "3D EM Mask", + "http://edamontology.org/data_3807": "EM Movie", + "http://edamontology.org/data_3808": "EM Micrograph", + "http://edamontology.org/data_3842": "Molecular simulation data", + "http://edamontology.org/data_3856": "RNA central ID", + "http://edamontology.org/data_3861": "Electronic health record", + "http://edamontology.org/data_3869": "Simulation", + "http://edamontology.org/data_3870": "Trajectory data", + "http://edamontology.org/data_3871": "Forcefield parameters", + "http://edamontology.org/data_3872": "Topology data", + "http://edamontology.org/data_3905": "Histogram", + "http://edamontology.org/data_3914": "Quality control report", + "http://edamontology.org/data_3917": "Count matrix", + "http://edamontology.org/data_3924": "DNA structure alignment", + "http://edamontology.org/data_3932": "Q-value", + "http://edamontology.org/data_3949": "Profile HMM", + "http://edamontology.org/data_3952": "Pathway ID (WikiPathways)", + "http://edamontology.org/data_3953": "Pathway overrepresentation data", + "http://edamontology.org/format_1196": "SMILES", + "http://edamontology.org/format_1197": "InChI", + "http://edamontology.org/format_1198": "mf", + "http://edamontology.org/format_1199": "InChIKey", + "http://edamontology.org/format_1200": "smarts", + "http://edamontology.org/format_1206": "unambiguous pure", + "http://edamontology.org/format_1207": "nucleotide", + "http://edamontology.org/format_1208": "protein", + "http://edamontology.org/format_1209": "consensus", + "http://edamontology.org/format_1210": "pure nucleotide", + "http://edamontology.org/format_1211": "unambiguous pure nucleotide", + "http://edamontology.org/format_1212": "dna", + "http://edamontology.org/format_1213": "rna", + "http://edamontology.org/format_1214": "unambiguous pure dna", + "http://edamontology.org/format_1215": "pure dna", + "http://edamontology.org/format_1216": "unambiguous pure rna sequence", + "http://edamontology.org/format_1217": "pure rna", + "http://edamontology.org/format_1218": "unambiguous pure protein", + "http://edamontology.org/format_1219": "pure protein", + "http://edamontology.org/format_1228": "UniGene entry format", + "http://edamontology.org/format_1247": "COG sequence cluster format", + "http://edamontology.org/format_1248": "EMBL feature location", + "http://edamontology.org/format_1295": "quicktandem", + "http://edamontology.org/format_1296": "Sanger inverted repeats", + "http://edamontology.org/format_1297": "EMBOSS repeat", + "http://edamontology.org/format_1316": "est2genome format", + "http://edamontology.org/format_1318": "restrict format", + "http://edamontology.org/format_1319": "restover format", + "http://edamontology.org/format_1320": "REBASE restriction sites", + "http://edamontology.org/format_1332": "FASTA search results format", + "http://edamontology.org/format_1333": "BLAST results", + "http://edamontology.org/format_1334": "mspcrunch", + "http://edamontology.org/format_1335": "Smith-Waterman format", + "http://edamontology.org/format_1336": "dhf", + "http://edamontology.org/format_1337": "lhf", + "http://edamontology.org/format_1341": "InterPro hits format", + "http://edamontology.org/format_1342": "InterPro protein view report format", + "http://edamontology.org/format_1343": "InterPro match table format", + "http://edamontology.org/format_1349": "HMMER Dirichlet prior", + "http://edamontology.org/format_1350": "MEME Dirichlet prior", + "http://edamontology.org/format_1351": "HMMER emission and transition", + "http://edamontology.org/format_1356": "prosite-pattern", + "http://edamontology.org/format_1357": "EMBOSS sequence pattern", + "http://edamontology.org/format_1360": "meme-motif", + "http://edamontology.org/format_1366": "prosite-profile", + "http://edamontology.org/format_1367": "JASPAR format", + "http://edamontology.org/format_1369": "MEME background Markov model", + "http://edamontology.org/format_1370": "HMMER format", + "http://edamontology.org/format_1391": "HMMER-aln", + "http://edamontology.org/format_1392": "DIALIGN format", + "http://edamontology.org/format_1393": "daf", + "http://edamontology.org/format_1419": "Sequence-MEME profile alignment", + "http://edamontology.org/format_1421": "HMMER profile alignment (sequences versus HMMs)", + "http://edamontology.org/format_1422": "HMMER profile alignment (HMM versus sequences)", + "http://edamontology.org/format_1423": "Phylip distance matrix", + "http://edamontology.org/format_1424": "ClustalW dendrogram", + "http://edamontology.org/format_1425": "Phylip tree raw", + "http://edamontology.org/format_1430": "Phylip continuous quantitative characters", + "http://edamontology.org/format_1431": "Phylogenetic property values format", + "http://edamontology.org/format_1432": "Phylip character frequencies format", + "http://edamontology.org/format_1433": "Phylip discrete states format", + "http://edamontology.org/format_1434": "Phylip cliques format", + "http://edamontology.org/format_1435": "Phylip tree format", + "http://edamontology.org/format_1436": "TreeBASE format", + "http://edamontology.org/format_1437": "TreeFam format", + "http://edamontology.org/format_1445": "Phylip tree distance format", + "http://edamontology.org/format_1454": "dssp", + "http://edamontology.org/format_1455": "hssp", + "http://edamontology.org/format_1457": "Dot-bracket format", + "http://edamontology.org/format_1458": "Vienna local RNA secondary structure format", + "http://edamontology.org/format_1475": "PDB database entry format", + "http://edamontology.org/format_1476": "PDB", + "http://edamontology.org/format_1477": "mmCIF", + "http://edamontology.org/format_1478": "PDBML", + "http://edamontology.org/format_1500": "Domainatrix 3D-1D scoring matrix format", + "http://edamontology.org/format_1504": "aaindex", + "http://edamontology.org/format_1511": "IntEnz enzyme report format", + "http://edamontology.org/format_1512": "BRENDA enzyme report format", + "http://edamontology.org/format_1513": "KEGG REACTION enzyme report format", + "http://edamontology.org/format_1514": "KEGG ENZYME enzyme report format", + "http://edamontology.org/format_1515": "REBASE proto enzyme report format", + "http://edamontology.org/format_1516": "REBASE withrefm enzyme report format", + "http://edamontology.org/format_1551": "Pcons report format", + "http://edamontology.org/format_1552": "ProQ report format", + "http://edamontology.org/format_1563": "SMART domain assignment report format", + "http://edamontology.org/format_1568": "BIND entry format", + "http://edamontology.org/format_1569": "IntAct entry format", + "http://edamontology.org/format_1570": "InterPro entry format", + "http://edamontology.org/format_1571": "InterPro entry abstract format", + "http://edamontology.org/format_1572": "Gene3D entry format", + "http://edamontology.org/format_1573": "PIRSF entry format", + "http://edamontology.org/format_1574": "PRINTS entry format", + "http://edamontology.org/format_1575": "Panther Families and HMMs entry format", + "http://edamontology.org/format_1576": "Pfam entry format", + "http://edamontology.org/format_1577": "SMART entry format", + "http://edamontology.org/format_1578": "Superfamily entry format", + "http://edamontology.org/format_1579": "TIGRFam entry format", + "http://edamontology.org/format_1580": "ProDom entry format", + "http://edamontology.org/format_1581": "FSSP entry format", + "http://edamontology.org/format_1582": "findkm", + "http://edamontology.org/format_1603": "Ensembl gene report format", + "http://edamontology.org/format_1604": "DictyBase gene report format", + "http://edamontology.org/format_1605": "CGD gene report format", + "http://edamontology.org/format_1606": "DragonDB gene report format", + "http://edamontology.org/format_1607": "EcoCyc gene report format", + "http://edamontology.org/format_1608": "FlyBase gene report format", + "http://edamontology.org/format_1609": "Gramene gene report format", + "http://edamontology.org/format_1610": "KEGG GENES gene report format", + "http://edamontology.org/format_1611": "MaizeGDB gene report format", + "http://edamontology.org/format_1612": "MGD gene report format", + "http://edamontology.org/format_1613": "RGD gene report format", + "http://edamontology.org/format_1614": "SGD gene report format", + "http://edamontology.org/format_1615": "GeneDB gene report format", + "http://edamontology.org/format_1616": "TAIR gene report format", + "http://edamontology.org/format_1617": "WormBase gene report format", + "http://edamontology.org/format_1618": "ZFIN gene report format", + "http://edamontology.org/format_1619": "TIGR gene report format", + "http://edamontology.org/format_1620": "dbSNP polymorphism report format", + "http://edamontology.org/format_1623": "OMIM entry format", + "http://edamontology.org/format_1624": "HGVbase entry format", + "http://edamontology.org/format_1625": "HIVDB entry format", + "http://edamontology.org/format_1626": "KEGG DISEASE entry format", + "http://edamontology.org/format_1627": "Primer3 primer", + "http://edamontology.org/format_1628": "ABI", + "http://edamontology.org/format_1629": "mira", + "http://edamontology.org/format_1630": "CAF", + "http://edamontology.org/format_1631": "EXP", + "http://edamontology.org/format_1632": "SCF", + "http://edamontology.org/format_1633": "PHD", + "http://edamontology.org/format_1637": "dat", + "http://edamontology.org/format_1638": "cel", + "http://edamontology.org/format_1639": "affymetrix", + "http://edamontology.org/format_1640": "ArrayExpress entry format", + "http://edamontology.org/format_1641": "affymetrix-exp", + "http://edamontology.org/format_1644": "CHP", + "http://edamontology.org/format_1645": "EMDB entry format", + "http://edamontology.org/format_1647": "KEGG PATHWAY entry format", + "http://edamontology.org/format_1648": "MetaCyc entry format", + "http://edamontology.org/format_1649": "HumanCyc entry format", + "http://edamontology.org/format_1650": "INOH entry format", + "http://edamontology.org/format_1651": "PATIKA entry format", + "http://edamontology.org/format_1652": "Reactome entry format", + "http://edamontology.org/format_1653": "aMAZE entry format", + "http://edamontology.org/format_1654": "CPDB entry format", + "http://edamontology.org/format_1655": "Panther Pathways entry format", + "http://edamontology.org/format_1665": "Taverna workflow format", + "http://edamontology.org/format_1666": "BioModel mathematical model format", + "http://edamontology.org/format_1697": "KEGG LIGAND entry format", + "http://edamontology.org/format_1698": "KEGG COMPOUND entry format", + "http://edamontology.org/format_1699": "KEGG PLANT entry format", + "http://edamontology.org/format_1700": "KEGG GLYCAN entry format", + "http://edamontology.org/format_1701": "PubChem entry format", + "http://edamontology.org/format_1702": "ChemSpider entry format", + "http://edamontology.org/format_1703": "ChEBI entry format", + "http://edamontology.org/format_1704": "MSDchem ligand dictionary entry format", + "http://edamontology.org/format_1705": "HET group dictionary entry format", + "http://edamontology.org/format_1706": "KEGG DRUG entry format", + "http://edamontology.org/format_1734": "PubMed citation", + "http://edamontology.org/format_1735": "Medline Display Format", + "http://edamontology.org/format_1736": "CiteXplore-core", + "http://edamontology.org/format_1737": "CiteXplore-all", + "http://edamontology.org/format_1739": "pmc", + "http://edamontology.org/format_1740": "iHOP format", + "http://edamontology.org/format_1741": "OSCAR format", + "http://edamontology.org/format_1747": "PDB atom record format", + "http://edamontology.org/format_1760": "CATH chain report format", + "http://edamontology.org/format_1761": "CATH PDB report format", + "http://edamontology.org/format_1782": "NCBI gene report format", + "http://edamontology.org/format_1808": "GeneIlluminator gene report format", + "http://edamontology.org/format_1809": "BacMap gene card format", + "http://edamontology.org/format_1810": "ColiCard report format", + "http://edamontology.org/format_1861": "PlasMapper TextMap", + "http://edamontology.org/format_1910": "newick", + "http://edamontology.org/format_1911": "TreeCon format", + "http://edamontology.org/format_1912": "Nexus format", + "http://edamontology.org/format_1915": "Format", + "http://edamontology.org/format_1918": "Atomic data format", + "http://edamontology.org/format_1919": "Sequence record format", + "http://edamontology.org/format_1920": "Sequence feature annotation format", + "http://edamontology.org/format_1921": "Alignment format", + "http://edamontology.org/format_1923": "acedb", + "http://edamontology.org/format_1924": "clustal sequence format", + "http://edamontology.org/format_1925": "codata", + "http://edamontology.org/format_1926": "dbid", + "http://edamontology.org/format_1927": "EMBL format", + "http://edamontology.org/format_1928": "Staden experiment format", + "http://edamontology.org/format_1929": "FASTA", + "http://edamontology.org/format_1930": "FASTQ", + "http://edamontology.org/format_1931": "FASTQ-illumina", + "http://edamontology.org/format_1932": "FASTQ-sanger", + "http://edamontology.org/format_1933": "FASTQ-solexa", + "http://edamontology.org/format_1934": "fitch program", + "http://edamontology.org/format_1935": "GCG", + "http://edamontology.org/format_1936": "GenBank format", + "http://edamontology.org/format_1937": "genpept", + "http://edamontology.org/format_1938": "GFF2-seq", + "http://edamontology.org/format_1939": "GFF3-seq", + "http://edamontology.org/format_1940": "giFASTA format", + "http://edamontology.org/format_1941": "hennig86", + "http://edamontology.org/format_1942": "ig", + "http://edamontology.org/format_1943": "igstrict", + "http://edamontology.org/format_1944": "jackknifer", + "http://edamontology.org/format_1945": "mase format", + "http://edamontology.org/format_1946": "mega-seq", + "http://edamontology.org/format_1947": "GCG MSF", + "http://edamontology.org/format_1948": "nbrf/pir", + "http://edamontology.org/format_1949": "nexus-seq", + "http://edamontology.org/format_1950": "pdbatom", + "http://edamontology.org/format_1951": "pdbatomnuc", + "http://edamontology.org/format_1952": "pdbseqresnuc", + "http://edamontology.org/format_1953": "pdbseqres", + "http://edamontology.org/format_1954": "Pearson format", + "http://edamontology.org/format_1955": "phylip sequence format", + "http://edamontology.org/format_1956": "phylipnon sequence format", + "http://edamontology.org/format_1957": "raw", + "http://edamontology.org/format_1958": "refseqp", + "http://edamontology.org/format_1959": "selex sequence format", + "http://edamontology.org/format_1960": "Staden format", + "http://edamontology.org/format_1961": "Stockholm format", + "http://edamontology.org/format_1962": "strider format", + "http://edamontology.org/format_1963": "UniProtKB format", + "http://edamontology.org/format_1964": "plain text format (unformatted)", + "http://edamontology.org/format_1965": "treecon sequence format", + "http://edamontology.org/format_1966": "ASN.1 sequence format", + "http://edamontology.org/format_1967": "DAS format", + "http://edamontology.org/format_1968": "dasdna", + "http://edamontology.org/format_1969": "debug-seq", + "http://edamontology.org/format_1970": "jackknifernon", + "http://edamontology.org/format_1971": "meganon sequence format", + "http://edamontology.org/format_1972": "NCBI format", + "http://edamontology.org/format_1973": "nexusnon", + "http://edamontology.org/format_1974": "GFF2", + "http://edamontology.org/format_1975": "GFF3", + "http://edamontology.org/format_1976": "pir", + "http://edamontology.org/format_1977": "swiss feature", + "http://edamontology.org/format_1978": "DASGFF", + "http://edamontology.org/format_1979": "debug-feat", + "http://edamontology.org/format_1980": "EMBL feature", + "http://edamontology.org/format_1981": "GenBank feature", + "http://edamontology.org/format_1982": "ClustalW format", + "http://edamontology.org/format_1983": "debug", + "http://edamontology.org/format_1984": "FASTA-aln", + "http://edamontology.org/format_1985": "markx0", + "http://edamontology.org/format_1986": "markx1", + "http://edamontology.org/format_1987": "markx10", + "http://edamontology.org/format_1988": "markx2", + "http://edamontology.org/format_1989": "markx3", + "http://edamontology.org/format_1990": "match", + "http://edamontology.org/format_1991": "mega", + "http://edamontology.org/format_1992": "meganon", + "http://edamontology.org/format_1993": "msf alignment format", + "http://edamontology.org/format_1994": "nexus alignment format", + "http://edamontology.org/format_1995": "nexusnon alignment format", + "http://edamontology.org/format_1996": "pair", + "http://edamontology.org/format_1997": "PHYLIP format", + "http://edamontology.org/format_1998": "PHYLIP sequential", + "http://edamontology.org/format_1999": "scores format", + "http://edamontology.org/format_2000": "selex", + "http://edamontology.org/format_2001": "EMBOSS simple format", + "http://edamontology.org/format_2002": "srs format", + "http://edamontology.org/format_2003": "srspair", + "http://edamontology.org/format_2004": "T-Coffee format", + "http://edamontology.org/format_2005": "TreeCon-seq", + "http://edamontology.org/format_2006": "Phylogenetic tree format", + "http://edamontology.org/format_2013": "Biological pathway or network format", + "http://edamontology.org/format_2014": "Sequence-profile alignment format", + "http://edamontology.org/format_2015": "Sequence-profile alignment (HMM) format", + "http://edamontology.org/format_2017": "Amino acid index format", + "http://edamontology.org/format_2020": "Article format", + "http://edamontology.org/format_2021": "Text mining report format", + "http://edamontology.org/format_2027": "Enzyme kinetics report format", + "http://edamontology.org/format_2030": "Chemical data format", + "http://edamontology.org/format_2031": "Gene annotation format", + "http://edamontology.org/format_2032": "Workflow format", + "http://edamontology.org/format_2033": "Tertiary structure format", + "http://edamontology.org/format_2034": "Biological model format", + "http://edamontology.org/format_2035": "Chemical formula format", + "http://edamontology.org/format_2036": "Phylogenetic character data format", + "http://edamontology.org/format_2037": "Phylogenetic continuous quantitative character format", + "http://edamontology.org/format_2038": "Phylogenetic discrete states format", + "http://edamontology.org/format_2039": "Phylogenetic tree report (cliques) format", + "http://edamontology.org/format_2040": "Phylogenetic tree report (invariants) format", + "http://edamontology.org/format_2045": "Electron microscopy model format", + "http://edamontology.org/format_2049": "Phylogenetic tree report (tree distances) format", + "http://edamontology.org/format_2051": "Polymorphism report format", + "http://edamontology.org/format_2052": "Protein family report format", + "http://edamontology.org/format_2054": "Protein interaction format", + "http://edamontology.org/format_2055": "Sequence assembly format", + "http://edamontology.org/format_2056": "Microarray experiment data format", + "http://edamontology.org/format_2057": "Sequence trace format", + "http://edamontology.org/format_2058": "Gene expression report format", + "http://edamontology.org/format_2059": "Genotype and phenotype annotation format", + "http://edamontology.org/format_2060": "Map format", + "http://edamontology.org/format_2061": "Nucleic acid features (primers) format", + "http://edamontology.org/format_2062": "Protein report format", + "http://edamontology.org/format_2063": "Protein report (enzyme) format", + "http://edamontology.org/format_2064": "3D-1D scoring matrix format", + "http://edamontology.org/format_2065": "Protein structure report (quality evaluation) format", + "http://edamontology.org/format_2066": "Database hits (sequence) format", + "http://edamontology.org/format_2067": "Sequence distance matrix format", + "http://edamontology.org/format_2068": "Sequence motif format", + "http://edamontology.org/format_2069": "Sequence profile format", + "http://edamontology.org/format_2072": "Hidden Markov model format", + "http://edamontology.org/format_2074": "Dirichlet distribution format", + "http://edamontology.org/format_2075": "HMM emission and transition counts format", + "http://edamontology.org/format_2076": "RNA secondary structure format", + "http://edamontology.org/format_2077": "Protein secondary structure format", + "http://edamontology.org/format_2078": "Sequence range format", + "http://edamontology.org/format_2094": "pure", + "http://edamontology.org/format_2095": "unpure", + "http://edamontology.org/format_2096": "unambiguous sequence", + "http://edamontology.org/format_2097": "ambiguous", + "http://edamontology.org/format_2155": "Sequence features (repeats) format", + "http://edamontology.org/format_2158": "Nucleic acid features (restriction sites) format", + "http://edamontology.org/format_2159": "Gene features (coding region) format", + "http://edamontology.org/format_2170": "Sequence cluster format", + "http://edamontology.org/format_2171": "Sequence cluster format (protein)", + "http://edamontology.org/format_2172": "Sequence cluster format (nucleic acid)", + "http://edamontology.org/format_2175": "Gene cluster format", + "http://edamontology.org/format_2181": "EMBL-like (text)", + "http://edamontology.org/format_2182": "FASTQ-like format (text)", + "http://edamontology.org/format_2183": "EMBLXML", + "http://edamontology.org/format_2184": "cdsxml", + "http://edamontology.org/format_2185": "insdxml", + "http://edamontology.org/format_2186": "geneseq", + "http://edamontology.org/format_2187": "UniProt-like (text)", + "http://edamontology.org/format_2188": "UniProt format", + "http://edamontology.org/format_2189": "ipi", + "http://edamontology.org/format_2194": "medline", + "http://edamontology.org/format_2195": "Ontology format", + "http://edamontology.org/format_2196": "OBO format", + "http://edamontology.org/format_2197": "OWL format", + "http://edamontology.org/format_2200": "FASTA-like (text)", + "http://edamontology.org/format_2202": "Sequence record full format", + "http://edamontology.org/format_2203": "Sequence record lite format", + "http://edamontology.org/format_2204": "EMBL format (XML)", + "http://edamontology.org/format_2205": "GenBank-like format (text)", + "http://edamontology.org/format_2206": "Sequence feature table format (text)", + "http://edamontology.org/format_2210": "Strain data format", + "http://edamontology.org/format_2211": "CIP strain data format", + "http://edamontology.org/format_2243": "phylip property values", + "http://edamontology.org/format_2303": "STRING entry format (HTML)", + "http://edamontology.org/format_2304": "STRING entry format (XML)", + "http://edamontology.org/format_2305": "GFF", + "http://edamontology.org/format_2306": "GTF", + "http://edamontology.org/format_2310": "FASTA-HTML", + "http://edamontology.org/format_2311": "EMBL-HTML", + "http://edamontology.org/format_2322": "BioCyc enzyme report format", + "http://edamontology.org/format_2323": "ENZYME enzyme report format", + "http://edamontology.org/format_2328": "PseudoCAP gene report format", + "http://edamontology.org/format_2329": "GeneCards gene report format", + "http://edamontology.org/format_2330": "Textual format", + "http://edamontology.org/format_2331": "HTML", + "http://edamontology.org/format_2332": "XML", + "http://edamontology.org/format_2333": "Binary format", + "http://edamontology.org/format_2334": "URI format", + "http://edamontology.org/format_2341": "NCI-Nature pathway entry format", + "http://edamontology.org/format_2350": "Format (by type of data)", + "http://edamontology.org/format_2352": "BioXSD (XML)", + "http://edamontology.org/format_2376": "RDF format", + "http://edamontology.org/format_2532": "GenBank-HTML", + "http://edamontology.org/format_2542": "Protein features (domains) format", + "http://edamontology.org/format_2543": "EMBL-like format", + "http://edamontology.org/format_2545": "FASTQ-like format", + "http://edamontology.org/format_2546": "FASTA-like", + "http://edamontology.org/format_2547": "uniprotkb-like format", + "http://edamontology.org/format_2548": "Sequence feature table format", + "http://edamontology.org/format_2549": "OBO", + "http://edamontology.org/format_2550": "OBO-XML", + "http://edamontology.org/format_2551": "Sequence record format (text)", + "http://edamontology.org/format_2552": "Sequence record format (XML)", + "http://edamontology.org/format_2553": "Sequence feature table format (XML)", + "http://edamontology.org/format_2554": "Alignment format (text)", + "http://edamontology.org/format_2555": "Alignment format (XML)", + "http://edamontology.org/format_2556": "Phylogenetic tree format (text)", + "http://edamontology.org/format_2557": "Phylogenetic tree format (XML)", + "http://edamontology.org/format_2558": "EMBL-like (XML)", + "http://edamontology.org/format_2559": "GenBank-like format", + "http://edamontology.org/format_2560": "STRING entry format", + "http://edamontology.org/format_2561": "Sequence assembly format (text)", + "http://edamontology.org/format_2562": "Amino acid identifier format", + "http://edamontology.org/format_2566": "completely unambiguous", + "http://edamontology.org/format_2567": "completely unambiguous pure", + "http://edamontology.org/format_2568": "completely unambiguous pure nucleotide", + "http://edamontology.org/format_2569": "completely unambiguous pure dna", + "http://edamontology.org/format_2570": "completely unambiguous pure rna sequence", + "http://edamontology.org/format_2571": "Raw sequence format", + "http://edamontology.org/format_2572": "BAM", + "http://edamontology.org/format_2573": "SAM", + "http://edamontology.org/format_2585": "SBML", + "http://edamontology.org/format_2607": "completely unambiguous pure protein", + "http://edamontology.org/format_2848": "Bibliographic reference format", + "http://edamontology.org/format_2919": "Sequence annotation track format", + "http://edamontology.org/format_2920": "Alignment format (pair only)", + "http://edamontology.org/format_2921": "Sequence variation annotation format", + "http://edamontology.org/format_2922": "markx0 variant", + "http://edamontology.org/format_2923": "mega variant", + "http://edamontology.org/format_2924": "Phylip format variant", + "http://edamontology.org/format_3000": "AB1", + "http://edamontology.org/format_3001": "ACE", + "http://edamontology.org/format_3003": "BED", + "http://edamontology.org/format_3004": "bigBed", + "http://edamontology.org/format_3005": "WIG", + "http://edamontology.org/format_3006": "bigWig", + "http://edamontology.org/format_3007": "PSL", + "http://edamontology.org/format_3008": "MAF", + "http://edamontology.org/format_3009": "2bit", + "http://edamontology.org/format_3010": ".nib", + "http://edamontology.org/format_3011": "genePred", + "http://edamontology.org/format_3012": "pgSnp", + "http://edamontology.org/format_3013": "axt", + "http://edamontology.org/format_3014": "LAV", + "http://edamontology.org/format_3015": "Pileup", + "http://edamontology.org/format_3016": "VCF", + "http://edamontology.org/format_3017": "SRF", + "http://edamontology.org/format_3018": "ZTR", + "http://edamontology.org/format_3019": "GVF", + "http://edamontology.org/format_3020": "BCF", + "http://edamontology.org/format_3033": "Matrix format", + "http://edamontology.org/format_3097": "Protein domain classification format", + "http://edamontology.org/format_3098": "Raw SCOP domain classification format", + "http://edamontology.org/format_3099": "Raw CATH domain classification format", + "http://edamontology.org/format_3100": "CATH domain report format", + "http://edamontology.org/format_3155": "SBRML", + "http://edamontology.org/format_3156": "BioPAX", + "http://edamontology.org/format_3157": "EBI Application Result XML", + "http://edamontology.org/format_3158": "PSI MI XML (MIF)", + "http://edamontology.org/format_3159": "phyloXML", + "http://edamontology.org/format_3160": "NeXML", + "http://edamontology.org/format_3161": "MAGE-ML", + "http://edamontology.org/format_3162": "MAGE-TAB", + "http://edamontology.org/format_3163": "GCDML", + "http://edamontology.org/format_3164": "GTrack", + "http://edamontology.org/format_3166": "Biological pathway or network report format", + "http://edamontology.org/format_3167": "Experiment annotation format", + "http://edamontology.org/format_3235": "Cytoband format", + "http://edamontology.org/format_3239": "CopasiML", + "http://edamontology.org/format_3240": "CellML", + "http://edamontology.org/format_3242": "PSI MI TAB (MITAB)", + "http://edamontology.org/format_3243": "PSI-PAR", + "http://edamontology.org/format_3244": "mzML", + "http://edamontology.org/format_3245": "Mass spectrometry data format", + "http://edamontology.org/format_3246": "TraML", + "http://edamontology.org/format_3247": "mzIdentML", + "http://edamontology.org/format_3248": "mzQuantML", + "http://edamontology.org/format_3249": "GelML", + "http://edamontology.org/format_3250": "spML", + "http://edamontology.org/format_3252": "OWL Functional Syntax", + "http://edamontology.org/format_3253": "Manchester OWL Syntax", + "http://edamontology.org/format_3254": "KRSS2 Syntax", + "http://edamontology.org/format_3255": "Turtle", + "http://edamontology.org/format_3256": "N-Triples", + "http://edamontology.org/format_3257": "Notation3", + "http://edamontology.org/format_3261": "RDF/XML", + "http://edamontology.org/format_3262": "OWL/XML", + "http://edamontology.org/format_3281": "A2M", + "http://edamontology.org/format_3284": "SFF", + "http://edamontology.org/format_3285": "MAP", + "http://edamontology.org/format_3286": "PED", + "http://edamontology.org/format_3287": "Individual genetic data format", + "http://edamontology.org/format_3288": "PED/MAP", + "http://edamontology.org/format_3309": "CT", + "http://edamontology.org/format_3310": "SS", + "http://edamontology.org/format_3311": "RNAML", + "http://edamontology.org/format_3312": "GDE", + "http://edamontology.org/format_3313": "BLC", + "http://edamontology.org/format_3326": "Data index format", + "http://edamontology.org/format_3327": "BAI", + "http://edamontology.org/format_3328": "HMMER2", + "http://edamontology.org/format_3329": "HMMER3", + "http://edamontology.org/format_3330": "PO", + "http://edamontology.org/format_3331": "BLAST XML results format", + "http://edamontology.org/format_3462": "CRAM", + "http://edamontology.org/format_3464": "JSON", + "http://edamontology.org/format_3466": "EPS", + "http://edamontology.org/format_3467": "GIF", + "http://edamontology.org/format_3468": "xls", + "http://edamontology.org/format_3475": "TSV", + "http://edamontology.org/format_3476": "Gene expression data format", + "http://edamontology.org/format_3477": "Cytoscape input file format", + "http://edamontology.org/format_3484": "ebwt", + "http://edamontology.org/format_3485": "RSF", + "http://edamontology.org/format_3486": "GCG format variant", + "http://edamontology.org/format_3487": "BSML", + "http://edamontology.org/format_3491": "ebwtl", + "http://edamontology.org/format_3499": "Ensembl variation file format", + "http://edamontology.org/format_3506": "docx", + "http://edamontology.org/format_3507": "Document format", + "http://edamontology.org/format_3508": "PDF", + "http://edamontology.org/format_3547": "Image format", + "http://edamontology.org/format_3548": "DICOM format", + "http://edamontology.org/format_3549": "nii", + "http://edamontology.org/format_3550": "mhd", + "http://edamontology.org/format_3551": "nrrd", + "http://edamontology.org/format_3554": "R file format", + "http://edamontology.org/format_3555": "SPSS", + "http://edamontology.org/format_3556": "MHTML", + "http://edamontology.org/format_3578": "IDAT", + "http://edamontology.org/format_3579": "JPG", + "http://edamontology.org/format_3580": "rcc", + "http://edamontology.org/format_3581": "arff", + "http://edamontology.org/format_3582": "afg", + "http://edamontology.org/format_3583": "bedgraph", + "http://edamontology.org/format_3584": "bedstrict", + "http://edamontology.org/format_3585": "bed6", + "http://edamontology.org/format_3586": "bed12", + "http://edamontology.org/format_3587": "chrominfo", + "http://edamontology.org/format_3588": "customtrack", + "http://edamontology.org/format_3589": "csfasta", + "http://edamontology.org/format_3590": "HDF5", + "http://edamontology.org/format_3591": "TIFF", + "http://edamontology.org/format_3592": "BMP", + "http://edamontology.org/format_3593": "im", + "http://edamontology.org/format_3594": "pcd", + "http://edamontology.org/format_3595": "pcx", + "http://edamontology.org/format_3596": "ppm", + "http://edamontology.org/format_3597": "psd", + "http://edamontology.org/format_3598": "xbm", + "http://edamontology.org/format_3599": "xpm", + "http://edamontology.org/format_3600": "rgb", + "http://edamontology.org/format_3601": "pbm", + "http://edamontology.org/format_3602": "pgm", + "http://edamontology.org/format_3603": "PNG", + "http://edamontology.org/format_3604": "SVG", + "http://edamontology.org/format_3605": "rast", + "http://edamontology.org/format_3606": "Sequence quality report format (text)", + "http://edamontology.org/format_3607": "qual", + "http://edamontology.org/format_3608": "qualsolexa", + "http://edamontology.org/format_3609": "qualillumina", + "http://edamontology.org/format_3610": "qualsolid", + "http://edamontology.org/format_3611": "qual454", + "http://edamontology.org/format_3612": "ENCODE peak format", + "http://edamontology.org/format_3613": "ENCODE narrow peak format", + "http://edamontology.org/format_3614": "ENCODE broad peak format", + "http://edamontology.org/format_3615": "bgzip", + "http://edamontology.org/format_3616": "tabix", + "http://edamontology.org/format_3617": "Graph format", + "http://edamontology.org/format_3618": "xgmml", + "http://edamontology.org/format_3619": "sif", + "http://edamontology.org/format_3620": "xlsx", + "http://edamontology.org/format_3621": "SQLite format", + "http://edamontology.org/format_3622": "Gemini SQLite format", + "http://edamontology.org/format_3623": "Index format", + "http://edamontology.org/format_3624": "snpeffdb", + "http://edamontology.org/format_3626": "MAT", + "http://edamontology.org/format_3650": "netCDF", + "http://edamontology.org/format_3651": "MGF", + "http://edamontology.org/format_3652": "dta", + "http://edamontology.org/format_3653": "pkl", + "http://edamontology.org/format_3654": "mzXML", + "http://edamontology.org/format_3655": "pepXML", + "http://edamontology.org/format_3657": "GPML", + "http://edamontology.org/format_3665": "K-mer countgraph", + "http://edamontology.org/format_3681": "mzTab", + "http://edamontology.org/format_3682": "imzML metadata file", + "http://edamontology.org/format_3683": "qcML", + "http://edamontology.org/format_3684": "PRIDE XML", + "http://edamontology.org/format_3685": "SED-ML", + "http://edamontology.org/format_3686": "COMBINE OMEX", + "http://edamontology.org/format_3687": "ISA-TAB", + "http://edamontology.org/format_3688": "SBtab", + "http://edamontology.org/format_3689": "BCML", + "http://edamontology.org/format_3690": "BDML", + "http://edamontology.org/format_3691": "BEL", + "http://edamontology.org/format_3692": "SBGN-ML", + "http://edamontology.org/format_3693": "AGP", + "http://edamontology.org/format_3696": "PS", + "http://edamontology.org/format_3698": "SRA format", + "http://edamontology.org/format_3699": "VDB", + "http://edamontology.org/format_3700": "Tabix index file format", + "http://edamontology.org/format_3701": "Sequin format", + "http://edamontology.org/format_3702": "MSF", + "http://edamontology.org/format_3706": "Biodiversity data format", + "http://edamontology.org/format_3708": "ABCD format", + "http://edamontology.org/format_3709": "GCT/Res format", + "http://edamontology.org/format_3710": "WIFF format", + "http://edamontology.org/format_3711": "X!Tandem XML", + "http://edamontology.org/format_3712": "Thermo RAW", + "http://edamontology.org/format_3713": "Mascot .dat file", + "http://edamontology.org/format_3714": "MaxQuant APL peaklist format", + "http://edamontology.org/format_3725": "SBOL", + "http://edamontology.org/format_3726": "PMML", + "http://edamontology.org/format_3727": "OME-TIFF", + "http://edamontology.org/format_3728": "LocARNA PP", + "http://edamontology.org/format_3729": "dbGaP format", + "http://edamontology.org/format_3746": "BIOM format", + "http://edamontology.org/format_3747": "protXML", + "http://edamontology.org/format_3748": "Linked data format", + "http://edamontology.org/format_3749": "JSON-LD", + "http://edamontology.org/format_3750": "YAML", + "http://edamontology.org/format_3751": "DSV", + "http://edamontology.org/format_3752": "CSV", + "http://edamontology.org/format_3758": "SEQUEST .out file", + "http://edamontology.org/format_3764": "idXML", + "http://edamontology.org/format_3765": "KNIME datatable format", + "http://edamontology.org/format_3770": "UniProtKB XML", + "http://edamontology.org/format_3771": "UniProtKB RDF", + "http://edamontology.org/format_3772": "BioJSON (BioXSD)", + "http://edamontology.org/format_3773": "BioYAML", + "http://edamontology.org/format_3774": "BioJSON (Jalview)", + "http://edamontology.org/format_3775": "GSuite", + "http://edamontology.org/format_3776": "BTrack", + "http://edamontology.org/format_3777": "MCPD", + "http://edamontology.org/format_3780": "Annotated text format", + "http://edamontology.org/format_3781": "PubAnnotation format", + "http://edamontology.org/format_3782": "BioC", + "http://edamontology.org/format_3783": "PubTator format", + "http://edamontology.org/format_3784": "Open Annotation format", + "http://edamontology.org/format_3785": "BioNLP Shared Task format", + "http://edamontology.org/format_3787": "Query language", + "http://edamontology.org/format_3788": "SQL", + "http://edamontology.org/format_3789": "XQuery", + "http://edamontology.org/format_3790": "SPARQL", + "http://edamontology.org/format_3804": "xsd", + "http://edamontology.org/format_3811": "XMFA", + "http://edamontology.org/format_3812": "GEN", + "http://edamontology.org/format_3813": "SAMPLE file format", + "http://edamontology.org/format_3814": "SDF", + "http://edamontology.org/format_3815": "Molfile", + "http://edamontology.org/format_3816": "Mol2", + "http://edamontology.org/format_3817": "latex", + "http://edamontology.org/format_3818": "ELAND format", + "http://edamontology.org/format_3819": "Relaxed PHYLIP Interleaved", + "http://edamontology.org/format_3820": "Relaxed PHYLIP Sequential", + "http://edamontology.org/format_3821": "VisML", + "http://edamontology.org/format_3822": "GML", + "http://edamontology.org/format_3823": "FASTG", + "http://edamontology.org/format_3824": "NMR data format", + "http://edamontology.org/format_3825": "nmrML", + "http://edamontology.org/format_3826": "proBAM", + "http://edamontology.org/format_3827": "proBED", + "http://edamontology.org/format_3828": "Raw microarray data format", + "http://edamontology.org/format_3829": "GPR", + "http://edamontology.org/format_3830": "ARB", + "http://edamontology.org/format_3832": "consensusXML", + "http://edamontology.org/format_3833": "featureXML", + "http://edamontology.org/format_3834": "mzData", + "http://edamontology.org/format_3835": "TIDE TXT", + "http://edamontology.org/format_3836": "BLAST XML v2 results format", + "http://edamontology.org/format_3838": "pptx", + "http://edamontology.org/format_3839": "ibd", + "http://edamontology.org/format_3841": "NLP format", + "http://edamontology.org/format_3843": "BEAST", + "http://edamontology.org/format_3844": "Chado-XML", + "http://edamontology.org/format_3845": "HSAML", + "http://edamontology.org/format_3846": "InterProScan XML", + "http://edamontology.org/format_3847": "KGML", + "http://edamontology.org/format_3848": "PubMed XML", + "http://edamontology.org/format_3849": "MSAML", + "http://edamontology.org/format_3850": "OrthoXML", + "http://edamontology.org/format_3851": "PSDML", + "http://edamontology.org/format_3852": "SeqXML", + "http://edamontology.org/format_3853": "UniParc XML", + "http://edamontology.org/format_3854": "UniRef XML", + "http://edamontology.org/format_3857": "CWL", + "http://edamontology.org/format_3858": "Waters RAW", + "http://edamontology.org/format_3859": "JCAMP-DX", + "http://edamontology.org/format_3862": "NLP annotation format", + "http://edamontology.org/format_3863": "NLP corpus format", + "http://edamontology.org/format_3864": "mirGFF3", + "http://edamontology.org/format_3865": "RNA annotation format", + "http://edamontology.org/format_3866": "Trajectory format", + "http://edamontology.org/format_3867": "Trajectory format (binary)", + "http://edamontology.org/format_3868": "Trajectory format (text)", + "http://edamontology.org/format_3873": "HDF", + "http://edamontology.org/format_3874": "PCAzip", + "http://edamontology.org/format_3875": "XTC", + "http://edamontology.org/format_3876": "TNG", + "http://edamontology.org/format_3877": "XYZ", + "http://edamontology.org/format_3878": "mdcrd", + "http://edamontology.org/format_3879": "Topology format", + "http://edamontology.org/format_3880": "GROMACS top", + "http://edamontology.org/format_3881": "AMBER top", + "http://edamontology.org/format_3882": "PSF", + "http://edamontology.org/format_3883": "GROMACS itp", + "http://edamontology.org/format_3884": "FF parameter format", + "http://edamontology.org/format_3885": "BinPos", + "http://edamontology.org/format_3886": "RST", + "http://edamontology.org/format_3887": "CHARMM rtf", + "http://edamontology.org/format_3888": "AMBER frcmod", + "http://edamontology.org/format_3889": "AMBER off", + "http://edamontology.org/format_3906": "NMReDATA", + "http://edamontology.org/format_3909": "BpForms", + "http://edamontology.org/format_3910": "trr", + "http://edamontology.org/format_3911": "msh", + "http://edamontology.org/format_3913": "Loom", + "http://edamontology.org/format_3915": "Zarr", + "http://edamontology.org/format_3916": "MTX", + "http://edamontology.org/format_3951": "BcForms", + "http://edamontology.org/format_3956": "N-Quads", + "http://edamontology.org/format_3969": "Vega", + "http://edamontology.org/format_3970": "Vega-lite", + "http://edamontology.org/format_3971": "NeuroML", + "http://edamontology.org/format_3972": "BNGL", + "http://edamontology.org/format_3973": "Docker image format", + "http://edamontology.org/format_3975": "GFA 1", + "http://edamontology.org/format_3976": "GFA 2", + "http://edamontology.org/format_3977": "ObjTables", + "http://edamontology.org/format_3978": "CONTIG", + "http://edamontology.org/format_3979": "WEGO", + "http://edamontology.org/format_3980": "RPKM", + "http://edamontology.org/format_3981": "TAR format", + "http://edamontology.org/format_3982": "CHAIN", + "http://edamontology.org/format_3983": "NET", + "http://edamontology.org/format_3984": "QMAP", + "http://edamontology.org/format_3985": "gxformat2", + "http://edamontology.org/format_3986": "WMV", + "http://edamontology.org/format_3987": "ZIP format", + "http://edamontology.org/format_3988": "LSM", + "http://edamontology.org/format_3989": "GZIP format", + "http://edamontology.org/format_3990": "AVI", + "http://edamontology.org/format_3991": "TrackDB", + "http://edamontology.org/format_3992": "CIGAR format", + "http://edamontology.org/format_3993": "Stereolithography format", + "http://edamontology.org/format_3994": "U3D", + "http://edamontology.org/format_3995": "Texture file format", + "http://edamontology.org/format_3996": "Python script", + "http://edamontology.org/format_3997": "MPEG-4", + "http://edamontology.org/format_3998": "Perl script", + "http://edamontology.org/format_3999": "R script", + "http://edamontology.org/format_4000": "R markdown", + "http://edamontology.org/format_4001": "NIFTI format", + "http://edamontology.org/format_4002": "pickle", + "http://edamontology.org/format_4003": "NumPy format", + "http://edamontology.org/format_4004": "SimTools repertoire file format", + "http://edamontology.org/format_4005": "Configuration file format", + "http://edamontology.org/format_4006": "Zstandard format", + "http://edamontology.org/format_4007": "MATLAB script", + "http://edamontology.org/operation_0004": "Operation", + "http://edamontology.org/operation_0224": "Query and retrieval", + "http://edamontology.org/operation_0225": "Data retrieval (database cross-reference)", + "http://edamontology.org/operation_0226": "Annotation", + "http://edamontology.org/operation_0227": "Indexing", + "http://edamontology.org/operation_0228": "Data index analysis", + "http://edamontology.org/operation_0229": "Annotation retrieval (sequence)", + "http://edamontology.org/operation_0230": "Sequence generation", + "http://edamontology.org/operation_0231": "Sequence editing", + "http://edamontology.org/operation_0232": "Sequence merging", + "http://edamontology.org/operation_0233": "Sequence conversion", + "http://edamontology.org/operation_0234": "Sequence complexity calculation", + "http://edamontology.org/operation_0235": "Sequence ambiguity calculation", + "http://edamontology.org/operation_0236": "Sequence composition calculation", + "http://edamontology.org/operation_0237": "Repeat sequence analysis", + "http://edamontology.org/operation_0238": "Sequence motif discovery", + "http://edamontology.org/operation_0239": "Sequence motif recognition", + "http://edamontology.org/operation_0240": "Sequence motif comparison", + "http://edamontology.org/operation_0241": "Transcription regulatory sequence analysis", + "http://edamontology.org/operation_0242": "Conserved transcription regulatory sequence identification", + "http://edamontology.org/operation_0243": "Protein property calculation (from structure)", + "http://edamontology.org/operation_0244": "Simulation analysis", + "http://edamontology.org/operation_0245": "Structural motif discovery", + "http://edamontology.org/operation_0246": "Protein domain recognition", + "http://edamontology.org/operation_0247": "Protein architecture analysis", + "http://edamontology.org/operation_0248": "Residue interaction calculation", + "http://edamontology.org/operation_0249": "Protein geometry calculation", + "http://edamontology.org/operation_0250": "Protein property calculation", + "http://edamontology.org/operation_0252": "Peptide immunogenicity prediction", + "http://edamontology.org/operation_0253": "Sequence feature detection", + "http://edamontology.org/operation_0254": "Data retrieval (feature table)", + "http://edamontology.org/operation_0255": "Feature table query", + "http://edamontology.org/operation_0256": "Sequence feature comparison", + "http://edamontology.org/operation_0257": "Data retrieval (sequence alignment)", + "http://edamontology.org/operation_0258": "Sequence alignment analysis", + "http://edamontology.org/operation_0259": "Sequence alignment comparison", + "http://edamontology.org/operation_0260": "Sequence alignment conversion", + "http://edamontology.org/operation_0261": "Nucleic acid property processing", + "http://edamontology.org/operation_0262": "Nucleic acid property calculation", + "http://edamontology.org/operation_0264": "Alternative splicing prediction", + "http://edamontology.org/operation_0265": "Frameshift detection", + "http://edamontology.org/operation_0266": "Vector sequence detection", + "http://edamontology.org/operation_0267": "Protein secondary structure prediction", + "http://edamontology.org/operation_0268": "Protein super-secondary structure prediction", + "http://edamontology.org/operation_0269": "Transmembrane protein prediction", + "http://edamontology.org/operation_0270": "Transmembrane protein analysis", + "http://edamontology.org/operation_0271": "Structure prediction", + "http://edamontology.org/operation_0272": "Residue contact prediction", + "http://edamontology.org/operation_0273": "Protein interaction raw data analysis", + "http://edamontology.org/operation_0274": "Protein-protein interaction prediction (from protein sequence)", + "http://edamontology.org/operation_0275": "Protein-protein interaction prediction (from protein structure)", + "http://edamontology.org/operation_0276": "Protein interaction network analysis", + "http://edamontology.org/operation_0277": "Pathway or network comparison", + "http://edamontology.org/operation_0278": "RNA secondary structure prediction", + "http://edamontology.org/operation_0279": "Nucleic acid folding analysis", + "http://edamontology.org/operation_0280": "Data retrieval (restriction enzyme annotation)", + "http://edamontology.org/operation_0281": "Genetic marker identification", + "http://edamontology.org/operation_0282": "Genetic mapping", + "http://edamontology.org/operation_0283": "Linkage analysis", + "http://edamontology.org/operation_0284": "Codon usage table generation", + "http://edamontology.org/operation_0285": "Codon usage table comparison", + "http://edamontology.org/operation_0286": "Codon usage analysis", + "http://edamontology.org/operation_0287": "Base position variability plotting", + "http://edamontology.org/operation_0288": "Sequence word comparison", + "http://edamontology.org/operation_0289": "Sequence distance matrix generation", + "http://edamontology.org/operation_0290": "Sequence redundancy removal", + "http://edamontology.org/operation_0291": "Sequence clustering", + "http://edamontology.org/operation_0292": "Sequence alignment", + "http://edamontology.org/operation_0293": "Hybrid sequence alignment construction", + "http://edamontology.org/operation_0294": "Structure-based sequence alignment", + "http://edamontology.org/operation_0295": "Structure alignment", + "http://edamontology.org/operation_0296": "Sequence profile generation", + "http://edamontology.org/operation_0297": "3D profile generation", + "http://edamontology.org/operation_0298": "Profile-profile alignment", + "http://edamontology.org/operation_0299": "3D profile-to-3D profile alignment", + "http://edamontology.org/operation_0300": "Sequence profile alignment", + "http://edamontology.org/operation_0301": "Sequence-to-3D-profile alignment", + "http://edamontology.org/operation_0302": "Protein threading", + "http://edamontology.org/operation_0303": "Fold recognition", + "http://edamontology.org/operation_0304": "Metadata retrieval", + "http://edamontology.org/operation_0305": "Literature search", + "http://edamontology.org/operation_0306": "Text mining", + "http://edamontology.org/operation_0307": "Virtual PCR", + "http://edamontology.org/operation_0308": "PCR primer design", + "http://edamontology.org/operation_0309": "Microarray probe design", + "http://edamontology.org/operation_0310": "Sequence assembly", + "http://edamontology.org/operation_0311": "Microarray data standardisation and normalisation", + "http://edamontology.org/operation_0312": "Sequencing-based expression profile data processing", + "http://edamontology.org/operation_0313": "Expression profile clustering", + "http://edamontology.org/operation_0314": "Gene expression profiling", + "http://edamontology.org/operation_0315": "Expression profile comparison", + "http://edamontology.org/operation_0316": "Functional profiling", + "http://edamontology.org/operation_0317": "EST and cDNA sequence analysis", + "http://edamontology.org/operation_0318": "Structural genomics target selection", + "http://edamontology.org/operation_0319": "Protein secondary structure assignment", + "http://edamontology.org/operation_0320": "Protein structure assignment", + "http://edamontology.org/operation_0321": "Protein structure validation", + "http://edamontology.org/operation_0322": "Molecular model refinement", + "http://edamontology.org/operation_0323": "Phylogenetic inference", + "http://edamontology.org/operation_0324": "Phylogenetic analysis", + "http://edamontology.org/operation_0325": "Phylogenetic tree comparison", + "http://edamontology.org/operation_0326": "Phylogenetic tree editing", + "http://edamontology.org/operation_0327": "Phylogenetic footprinting", + "http://edamontology.org/operation_0328": "Protein folding simulation", + "http://edamontology.org/operation_0329": "Protein folding pathway prediction", + "http://edamontology.org/operation_0330": "Protein SNP mapping", + "http://edamontology.org/operation_0331": "Variant effect prediction", + "http://edamontology.org/operation_0332": "Immunogen design", + "http://edamontology.org/operation_0333": "Zinc finger prediction", + "http://edamontology.org/operation_0334": "Enzyme kinetics calculation", + "http://edamontology.org/operation_0335": "Formatting", + "http://edamontology.org/operation_0336": "Format validation", + "http://edamontology.org/operation_0337": "Visualisation", + "http://edamontology.org/operation_0338": "Sequence database search", + "http://edamontology.org/operation_0339": "Structure database search", + "http://edamontology.org/operation_0340": "Protein secondary database search", + "http://edamontology.org/operation_0341": "Motif database search", + "http://edamontology.org/operation_0342": "Sequence profile database search", + "http://edamontology.org/operation_0343": "Transmembrane protein database search", + "http://edamontology.org/operation_0344": "Sequence retrieval (by code)", + "http://edamontology.org/operation_0345": "Sequence retrieval (by keyword)", + "http://edamontology.org/operation_0346": "Sequence similarity search", + "http://edamontology.org/operation_0347": "Sequence database search (by motif or pattern)", + "http://edamontology.org/operation_0348": "Sequence database search (by amino acid composition)", + "http://edamontology.org/operation_0349": "Sequence database search (by property)", + "http://edamontology.org/operation_0350": "Sequence database search (by sequence using word-based methods)", + "http://edamontology.org/operation_0351": "Sequence database search (by sequence using profile-based methods)", + "http://edamontology.org/operation_0352": "Sequence database search (by sequence using local alignment-based methods)", + "http://edamontology.org/operation_0353": "Sequence database search (by sequence using global alignment-based methods)", + "http://edamontology.org/operation_0354": "Sequence database search (by sequence for primer sequences)", + "http://edamontology.org/operation_0355": "Sequence database search (by molecular weight)", + "http://edamontology.org/operation_0356": "Sequence database search (by isoelectric point)", + "http://edamontology.org/operation_0357": "Structure retrieval (by code)", + "http://edamontology.org/operation_0358": "Structure retrieval (by keyword)", + "http://edamontology.org/operation_0359": "Structure database search (by sequence)", + "http://edamontology.org/operation_0360": "Structural similarity search", + "http://edamontology.org/operation_0361": "Sequence annotation", + "http://edamontology.org/operation_0362": "Genome annotation", + "http://edamontology.org/operation_0363": "Reverse complement", + "http://edamontology.org/operation_0364": "Random sequence generation", + "http://edamontology.org/operation_0365": "Restriction digest", + "http://edamontology.org/operation_0366": "Protein sequence cleavage", + "http://edamontology.org/operation_0367": "Sequence mutation and randomisation", + "http://edamontology.org/operation_0368": "Sequence masking", + "http://edamontology.org/operation_0369": "Sequence cutting", + "http://edamontology.org/operation_0370": "Restriction site creation", + "http://edamontology.org/operation_0371": "DNA translation", + "http://edamontology.org/operation_0372": "DNA transcription", + "http://edamontology.org/operation_0377": "Sequence composition calculation (nucleic acid)", + "http://edamontology.org/operation_0378": "Sequence composition calculation (protein)", + "http://edamontology.org/operation_0379": "Repeat sequence detection", + "http://edamontology.org/operation_0380": "Repeat sequence organisation analysis", + "http://edamontology.org/operation_0383": "Protein hydropathy calculation (from structure)", + "http://edamontology.org/operation_0384": "Accessible surface calculation", + "http://edamontology.org/operation_0385": "Protein hydropathy cluster calculation", + "http://edamontology.org/operation_0386": "Protein dipole moment calculation", + "http://edamontology.org/operation_0387": "Molecular surface calculation", + "http://edamontology.org/operation_0388": "Protein binding site prediction (from structure)", + "http://edamontology.org/operation_0389": "Protein-nucleic acid interaction analysis", + "http://edamontology.org/operation_0390": "Protein peeling", + "http://edamontology.org/operation_0391": "Protein distance matrix calculation", + "http://edamontology.org/operation_0392": "Contact map calculation", + "http://edamontology.org/operation_0393": "Residue cluster calculation", + "http://edamontology.org/operation_0394": "Hydrogen bond calculation", + "http://edamontology.org/operation_0395": "Residue non-canonical interaction detection", + "http://edamontology.org/operation_0396": "Ramachandran plot calculation", + "http://edamontology.org/operation_0397": "Ramachandran plot validation", + "http://edamontology.org/operation_0398": "Protein molecular weight calculation", + "http://edamontology.org/operation_0399": "Protein extinction coefficient calculation", + "http://edamontology.org/operation_0400": "Protein pKa calculation", + "http://edamontology.org/operation_0401": "Protein hydropathy calculation (from sequence)", + "http://edamontology.org/operation_0402": "Protein titration curve plotting", + "http://edamontology.org/operation_0403": "Protein isoelectric point calculation", + "http://edamontology.org/operation_0404": "Protein hydrogen exchange rate calculation", + "http://edamontology.org/operation_0405": "Protein hydrophobic region calculation", + "http://edamontology.org/operation_0406": "Protein aliphatic index calculation", + "http://edamontology.org/operation_0407": "Protein hydrophobic moment plotting", + "http://edamontology.org/operation_0408": "Protein globularity prediction", + "http://edamontology.org/operation_0409": "Protein solubility prediction", + "http://edamontology.org/operation_0410": "Protein crystallizability prediction", + "http://edamontology.org/operation_0411": "Protein signal peptide detection (eukaryotes)", + "http://edamontology.org/operation_0412": "Protein signal peptide detection (bacteria)", + "http://edamontology.org/operation_0413": "MHC peptide immunogenicity prediction", + "http://edamontology.org/operation_0414": "Protein feature prediction (from sequence)", + "http://edamontology.org/operation_0415": "Nucleic acid feature detection", + "http://edamontology.org/operation_0416": "Epitope mapping", + "http://edamontology.org/operation_0417": "PTM site prediction", + "http://edamontology.org/operation_0418": "Protein signal peptide detection", + "http://edamontology.org/operation_0419": "Protein binding site prediction (from sequence)", + "http://edamontology.org/operation_0420": "Nucleic acids-binding site prediction", + "http://edamontology.org/operation_0421": "Protein folding site prediction", + "http://edamontology.org/operation_0422": "Protein cleavage site prediction", + "http://edamontology.org/operation_0423": "Epitope mapping (MHC Class I)", + "http://edamontology.org/operation_0424": "Epitope mapping (MHC Class II)", + "http://edamontology.org/operation_0425": "Whole gene prediction", + "http://edamontology.org/operation_0426": "Gene component prediction", + "http://edamontology.org/operation_0427": "Transposon prediction", + "http://edamontology.org/operation_0428": "PolyA signal detection", + "http://edamontology.org/operation_0429": "Quadruplex formation site detection", + "http://edamontology.org/operation_0430": "CpG island and isochore detection", + "http://edamontology.org/operation_0431": "Restriction site recognition", + "http://edamontology.org/operation_0432": "Nucleosome position prediction", + "http://edamontology.org/operation_0433": "Splice site prediction", + "http://edamontology.org/operation_0434": "Integrated gene prediction", + "http://edamontology.org/operation_0435": "Operon prediction", + "http://edamontology.org/operation_0436": "Coding region prediction", + "http://edamontology.org/operation_0437": "SECIS element prediction", + "http://edamontology.org/operation_0438": "Transcriptional regulatory element prediction", + "http://edamontology.org/operation_0439": "Translation initiation site prediction", + "http://edamontology.org/operation_0440": "Promoter prediction", + "http://edamontology.org/operation_0441": "cis-regulatory element prediction", + "http://edamontology.org/operation_0442": "Transcriptional regulatory element prediction (RNA-cis)", + "http://edamontology.org/operation_0443": "trans-regulatory element prediction", + "http://edamontology.org/operation_0444": "S/MAR prediction", + "http://edamontology.org/operation_0445": "Transcription factor binding site prediction", + "http://edamontology.org/operation_0446": "Exonic splicing enhancer prediction", + "http://edamontology.org/operation_0447": "Sequence alignment validation", + "http://edamontology.org/operation_0448": "Sequence alignment analysis (conservation)", + "http://edamontology.org/operation_0449": "Sequence alignment analysis (site correlation)", + "http://edamontology.org/operation_0450": "Chimera detection", + "http://edamontology.org/operation_0451": "Recombination detection", + "http://edamontology.org/operation_0452": "Indel detection", + "http://edamontology.org/operation_0453": "Nucleosome formation potential prediction", + "http://edamontology.org/operation_0455": "Nucleic acid thermodynamic property calculation", + "http://edamontology.org/operation_0456": "Nucleic acid melting profile plotting", + "http://edamontology.org/operation_0457": "Nucleic acid stitch profile plotting", + "http://edamontology.org/operation_0458": "Nucleic acid melting curve plotting", + "http://edamontology.org/operation_0459": "Nucleic acid probability profile plotting", + "http://edamontology.org/operation_0460": "Nucleic acid temperature profile plotting", + "http://edamontology.org/operation_0461": "Nucleic acid curvature calculation", + "http://edamontology.org/operation_0463": "miRNA target prediction", + "http://edamontology.org/operation_0464": "tRNA gene prediction", + "http://edamontology.org/operation_0465": "siRNA binding specificity prediction", + "http://edamontology.org/operation_0467": "Protein secondary structure prediction (integrated)", + "http://edamontology.org/operation_0468": "Protein secondary structure prediction (helices)", + "http://edamontology.org/operation_0469": "Protein secondary structure prediction (turns)", + "http://edamontology.org/operation_0470": "Protein secondary structure prediction (coils)", + "http://edamontology.org/operation_0471": "Disulfide bond prediction", + "http://edamontology.org/operation_0472": "GPCR prediction", + "http://edamontology.org/operation_0473": "GPCR analysis", + "http://edamontology.org/operation_0474": "Protein structure prediction", + "http://edamontology.org/operation_0475": "Nucleic acid structure prediction", + "http://edamontology.org/operation_0476": "Ab initio structure prediction", + "http://edamontology.org/operation_0477": "Protein modelling", + "http://edamontology.org/operation_0478": "Molecular docking", + "http://edamontology.org/operation_0479": "Backbone modelling", + "http://edamontology.org/operation_0480": "Side chain modelling", + "http://edamontology.org/operation_0481": "Loop modelling", + "http://edamontology.org/operation_0482": "Protein-ligand docking", + "http://edamontology.org/operation_0483": "RNA inverse folding", + "http://edamontology.org/operation_0484": "SNP detection", + "http://edamontology.org/operation_0485": "Radiation Hybrid Mapping", + "http://edamontology.org/operation_0486": "Functional mapping", + "http://edamontology.org/operation_0487": "Haplotype mapping", + "http://edamontology.org/operation_0488": "Linkage disequilibrium calculation", + "http://edamontology.org/operation_0489": "Genetic code prediction", + "http://edamontology.org/operation_0490": "Dot plot plotting", + "http://edamontology.org/operation_0491": "Pairwise sequence alignment", + "http://edamontology.org/operation_0492": "Multiple sequence alignment", + "http://edamontology.org/operation_0493": "Pairwise sequence alignment generation (local)", + "http://edamontology.org/operation_0494": "Pairwise sequence alignment generation (global)", + "http://edamontology.org/operation_0495": "Local alignment", + "http://edamontology.org/operation_0496": "Global alignment", + "http://edamontology.org/operation_0497": "Constrained sequence alignment", + "http://edamontology.org/operation_0498": "Consensus-based sequence alignment", + "http://edamontology.org/operation_0499": "Tree-based sequence alignment", + "http://edamontology.org/operation_0500": "Secondary structure alignment generation", + "http://edamontology.org/operation_0501": "Protein secondary structure alignment generation", + "http://edamontology.org/operation_0502": "RNA secondary structure alignment", + "http://edamontology.org/operation_0503": "Pairwise structure alignment", + "http://edamontology.org/operation_0504": "Multiple structure alignment", + "http://edamontology.org/operation_0505": "Structure alignment (protein)", + "http://edamontology.org/operation_0506": "Structure alignment (RNA)", + "http://edamontology.org/operation_0507": "Pairwise structure alignment generation (local)", + "http://edamontology.org/operation_0508": "Pairwise structure alignment generation (global)", + "http://edamontology.org/operation_0509": "Local structure alignment", + "http://edamontology.org/operation_0510": "Global structure alignment", + "http://edamontology.org/operation_0511": "Profile-profile alignment (pairwise)", + "http://edamontology.org/operation_0512": "Sequence alignment generation (multiple profile)", + "http://edamontology.org/operation_0513": "3D profile-to-3D profile alignment (pairwise)", + "http://edamontology.org/operation_0514": "Structural profile alignment generation (multiple)", + "http://edamontology.org/operation_0515": "Data retrieval (tool metadata)", + "http://edamontology.org/operation_0516": "Data retrieval (database metadata)", + "http://edamontology.org/operation_0517": "PCR primer design (for large scale sequencing)", + "http://edamontology.org/operation_0518": "PCR primer design (for genotyping polymorphisms)", + "http://edamontology.org/operation_0519": "PCR primer design (for gene transcription profiling)", + "http://edamontology.org/operation_0520": "PCR primer design (for conserved primers)", + "http://edamontology.org/operation_0521": "PCR primer design (based on gene structure)", + "http://edamontology.org/operation_0522": "PCR primer design (for methylation PCRs)", + "http://edamontology.org/operation_0523": "Mapping assembly", + "http://edamontology.org/operation_0524": "De-novo assembly", + "http://edamontology.org/operation_0525": "Genome assembly", + "http://edamontology.org/operation_0526": "EST assembly", + "http://edamontology.org/operation_0527": "Sequence tag mapping", + "http://edamontology.org/operation_0528": "SAGE data processing", + "http://edamontology.org/operation_0529": "MPSS data processing", + "http://edamontology.org/operation_0530": "SBS data processing", + "http://edamontology.org/operation_0531": "Heat map generation", + "http://edamontology.org/operation_0532": "Gene expression profile analysis", + "http://edamontology.org/operation_0533": "Expression profile pathway mapping", + "http://edamontology.org/operation_0534": "Protein secondary structure assignment (from coordinate data)", + "http://edamontology.org/operation_0535": "Protein secondary structure assignment (from CD data)", + "http://edamontology.org/operation_0536": "Protein structure assignment (from X-ray crystallographic data)", + "http://edamontology.org/operation_0537": "Protein structure assignment (from NMR data)", + "http://edamontology.org/operation_0538": "Phylogenetic inference (data centric)", + "http://edamontology.org/operation_0539": "Phylogenetic inference (method centric)", + "http://edamontology.org/operation_0540": "Phylogenetic inference (from molecular sequences)", + "http://edamontology.org/operation_0541": "Phylogenetic inference (from continuous quantitative characters)", + "http://edamontology.org/operation_0542": "Phylogenetic inference (from gene frequencies)", + "http://edamontology.org/operation_0543": "Phylogenetic inference (from polymorphism data)", + "http://edamontology.org/operation_0544": "Species tree construction", + "http://edamontology.org/operation_0545": "Phylogenetic inference (parsimony methods)", + "http://edamontology.org/operation_0546": "Phylogenetic inference (minimum distance methods)", + "http://edamontology.org/operation_0547": "Phylogenetic inference (maximum likelihood and Bayesian methods)", + "http://edamontology.org/operation_0548": "Phylogenetic inference (quartet methods)", + "http://edamontology.org/operation_0549": "Phylogenetic inference (AI methods)", + "http://edamontology.org/operation_0550": "DNA substitution modelling", + "http://edamontology.org/operation_0551": "Phylogenetic tree topology analysis", + "http://edamontology.org/operation_0552": "Phylogenetic tree bootstrapping", + "http://edamontology.org/operation_0553": "Gene tree construction", + "http://edamontology.org/operation_0554": "Allele frequency distribution analysis", + "http://edamontology.org/operation_0555": "Consensus tree construction", + "http://edamontology.org/operation_0556": "Phylogenetic sub/super tree construction", + "http://edamontology.org/operation_0557": "Phylogenetic tree distances calculation", + "http://edamontology.org/operation_0558": "Phylogenetic tree annotation", + "http://edamontology.org/operation_0559": "Immunogenicity prediction", + "http://edamontology.org/operation_0560": "DNA vaccine design", + "http://edamontology.org/operation_0561": "Sequence formatting", + "http://edamontology.org/operation_0562": "Sequence alignment formatting", + "http://edamontology.org/operation_0563": "Codon usage table formatting", + "http://edamontology.org/operation_0564": "Sequence visualisation", + "http://edamontology.org/operation_0565": "Sequence alignment visualisation", + "http://edamontology.org/operation_0566": "Sequence cluster visualisation", + "http://edamontology.org/operation_0567": "Phylogenetic tree visualisation", + "http://edamontology.org/operation_0568": "RNA secondary structure visualisation", + "http://edamontology.org/operation_0569": "Protein secondary structure visualisation", + "http://edamontology.org/operation_0570": "Structure visualisation", + "http://edamontology.org/operation_0571": "Expression data visualisation", + "http://edamontology.org/operation_0572": "Protein interaction network visualisation", + "http://edamontology.org/operation_0573": "Map drawing", + "http://edamontology.org/operation_0574": "Sequence motif rendering", + "http://edamontology.org/operation_0575": "Restriction map drawing", + "http://edamontology.org/operation_0577": "DNA linear map rendering", + "http://edamontology.org/operation_0578": "Plasmid map drawing", + "http://edamontology.org/operation_0579": "Operon drawing", + "http://edamontology.org/operation_1768": "Nucleic acid folding family identification", + "http://edamontology.org/operation_1769": "Nucleic acid folding energy calculation", + "http://edamontology.org/operation_1774": "Annotation retrieval", + "http://edamontology.org/operation_1777": "Protein function prediction", + "http://edamontology.org/operation_1778": "Protein function comparison", + "http://edamontology.org/operation_1780": "Sequence submission", + "http://edamontology.org/operation_1781": "Gene regulatory network analysis", + "http://edamontology.org/operation_1812": "Parsing", + "http://edamontology.org/operation_1813": "Sequence retrieval", + "http://edamontology.org/operation_1814": "Structure retrieval", + "http://edamontology.org/operation_1816": "Surface rendering", + "http://edamontology.org/operation_1817": "Protein atom surface calculation (accessible)", + "http://edamontology.org/operation_1818": "Protein atom surface calculation (accessible molecular)", + "http://edamontology.org/operation_1819": "Protein residue surface calculation (accessible)", + "http://edamontology.org/operation_1820": "Protein residue surface calculation (vacuum accessible)", + "http://edamontology.org/operation_1821": "Protein residue surface calculation (accessible molecular)", + "http://edamontology.org/operation_1822": "Protein residue surface calculation (vacuum molecular)", + "http://edamontology.org/operation_1823": "Protein surface calculation (accessible molecular)", + "http://edamontology.org/operation_1824": "Protein surface calculation (accessible)", + "http://edamontology.org/operation_1825": "Backbone torsion angle calculation", + "http://edamontology.org/operation_1826": "Full torsion angle calculation", + "http://edamontology.org/operation_1827": "Cysteine torsion angle calculation", + "http://edamontology.org/operation_1828": "Tau angle calculation", + "http://edamontology.org/operation_1829": "Cysteine bridge detection", + "http://edamontology.org/operation_1830": "Free cysteine detection", + "http://edamontology.org/operation_1831": "Metal-bound cysteine detection", + "http://edamontology.org/operation_1832": "Residue contact calculation (residue-nucleic acid)", + "http://edamontology.org/operation_1834": "Protein-metal contact calculation", + "http://edamontology.org/operation_1835": "Residue contact calculation (residue-negative ion)", + "http://edamontology.org/operation_1836": "Residue bump detection", + "http://edamontology.org/operation_1837": "Residue symmetry contact calculation", + "http://edamontology.org/operation_1838": "Residue contact calculation (residue-ligand)", + "http://edamontology.org/operation_1839": "Salt bridge calculation", + "http://edamontology.org/operation_1841": "Rotamer likelihood prediction", + "http://edamontology.org/operation_1842": "Proline mutation value calculation", + "http://edamontology.org/operation_1843": "Residue packing validation", + "http://edamontology.org/operation_1844": "Protein geometry validation", + "http://edamontology.org/operation_1845": "PDB file sequence retrieval", + "http://edamontology.org/operation_1846": "HET group detection", + "http://edamontology.org/operation_1847": "DSSP secondary structure assignment", + "http://edamontology.org/operation_1848": "Structure formatting", + "http://edamontology.org/operation_1850": "Protein cysteine and disulfide bond assignment", + "http://edamontology.org/operation_1913": "Residue validation", + "http://edamontology.org/operation_1914": "Structure retrieval (water)", + "http://edamontology.org/operation_2008": "siRNA duplex prediction", + "http://edamontology.org/operation_2089": "Sequence alignment refinement", + "http://edamontology.org/operation_2120": "Listfile processing", + "http://edamontology.org/operation_2121": "Sequence file editing", + "http://edamontology.org/operation_2122": "Sequence alignment file processing", + "http://edamontology.org/operation_2123": "Small molecule data processing", + "http://edamontology.org/operation_2222": "Data retrieval (ontology annotation)", + "http://edamontology.org/operation_2224": "Data retrieval (ontology concept)", + "http://edamontology.org/operation_2233": "Representative sequence identification", + "http://edamontology.org/operation_2234": "Structure file processing", + "http://edamontology.org/operation_2237": "Data retrieval (sequence profile)", + "http://edamontology.org/operation_2238": "Statistical calculation", + "http://edamontology.org/operation_2239": "3D-1D scoring matrix generation", + "http://edamontology.org/operation_2241": "Transmembrane protein visualisation", + "http://edamontology.org/operation_2246": "Demonstration", + "http://edamontology.org/operation_2264": "Data retrieval (pathway or network)", + "http://edamontology.org/operation_2265": "Data retrieval (identifier)", + "http://edamontology.org/operation_2284": "Nucleic acid density plotting", + "http://edamontology.org/operation_2403": "Sequence analysis", + "http://edamontology.org/operation_2404": "Sequence motif analysis", + "http://edamontology.org/operation_2405": "Protein interaction data processing", + "http://edamontology.org/operation_2406": "Protein structure analysis", + "http://edamontology.org/operation_2407": "Annotation processing", + "http://edamontology.org/operation_2408": "Sequence feature analysis", + "http://edamontology.org/operation_2409": "Data handling", + "http://edamontology.org/operation_2410": "Gene expression analysis", + "http://edamontology.org/operation_2411": "Structural profile processing", + "http://edamontology.org/operation_2412": "Data index processing", + "http://edamontology.org/operation_2413": "Sequence profile processing", + "http://edamontology.org/operation_2414": "Protein function analysis", + "http://edamontology.org/operation_2415": "Protein folding analysis", + "http://edamontology.org/operation_2416": "Protein secondary structure analysis", + "http://edamontology.org/operation_2417": "Physicochemical property data processing", + "http://edamontology.org/operation_2419": "Primer and probe design", + "http://edamontology.org/operation_2420": "Operation (typed)", + "http://edamontology.org/operation_2421": "Database search", + "http://edamontology.org/operation_2422": "Data retrieval", + "http://edamontology.org/operation_2423": "Prediction and recognition", + "http://edamontology.org/operation_2424": "Comparison", + "http://edamontology.org/operation_2425": "Optimisation and refinement", + "http://edamontology.org/operation_2426": "Modelling and simulation", + "http://edamontology.org/operation_2427": "Data handling", + "http://edamontology.org/operation_2428": "Validation", + "http://edamontology.org/operation_2429": "Mapping", + "http://edamontology.org/operation_2430": "Design", + "http://edamontology.org/operation_2432": "Microarray data processing", + "http://edamontology.org/operation_2433": "Codon usage table processing", + "http://edamontology.org/operation_2434": "Data retrieval (codon usage table)", + "http://edamontology.org/operation_2435": "Gene expression profile processing", + "http://edamontology.org/operation_2436": "Gene-set enrichment analysis", + "http://edamontology.org/operation_2437": "Gene regulatory network prediction", + "http://edamontology.org/operation_2438": "Pathway or network processing", + "http://edamontology.org/operation_2439": "RNA secondary structure analysis", + "http://edamontology.org/operation_2440": "Structure processing (RNA)", + "http://edamontology.org/operation_2441": "RNA structure prediction", + "http://edamontology.org/operation_2442": "DNA structure prediction", + "http://edamontology.org/operation_2443": "Phylogenetic tree processing", + "http://edamontology.org/operation_2444": "Protein secondary structure processing", + "http://edamontology.org/operation_2445": "Protein interaction network processing", + "http://edamontology.org/operation_2446": "Sequence processing", + "http://edamontology.org/operation_2447": "Sequence processing (protein)", + "http://edamontology.org/operation_2448": "Sequence processing (nucleic acid)", + "http://edamontology.org/operation_2451": "Sequence comparison", + "http://edamontology.org/operation_2452": "Sequence cluster processing", + "http://edamontology.org/operation_2453": "Feature table processing", + "http://edamontology.org/operation_2454": "Gene prediction", + "http://edamontology.org/operation_2456": "GPCR classification", + "http://edamontology.org/operation_2457": "GPCR coupling selectivity prediction", + "http://edamontology.org/operation_2459": "Structure processing (protein)", + "http://edamontology.org/operation_2460": "Protein atom surface calculation", + "http://edamontology.org/operation_2461": "Protein residue surface calculation", + "http://edamontology.org/operation_2462": "Protein surface calculation", + "http://edamontology.org/operation_2463": "Sequence alignment processing", + "http://edamontology.org/operation_2464": "Protein-protein binding site prediction", + "http://edamontology.org/operation_2465": "Structure processing", + "http://edamontology.org/operation_2466": "Map annotation", + "http://edamontology.org/operation_2467": "Data retrieval (protein annotation)", + "http://edamontology.org/operation_2468": "Data retrieval (phylogenetic tree)", + "http://edamontology.org/operation_2469": "Data retrieval (protein interaction annotation)", + "http://edamontology.org/operation_2470": "Data retrieval (protein family annotation)", + "http://edamontology.org/operation_2471": "Data retrieval (RNA family annotation)", + "http://edamontology.org/operation_2472": "Data retrieval (gene annotation)", + "http://edamontology.org/operation_2473": "Data retrieval (genotype and phenotype annotation)", + "http://edamontology.org/operation_2474": "Protein architecture comparison", + "http://edamontology.org/operation_2475": "Protein architecture recognition", + "http://edamontology.org/operation_2476": "Molecular dynamics", + "http://edamontology.org/operation_2478": "Nucleic acid sequence analysis", + "http://edamontology.org/operation_2479": "Protein sequence analysis", + "http://edamontology.org/operation_2480": "Structure analysis", + "http://edamontology.org/operation_2481": "Nucleic acid structure analysis", + "http://edamontology.org/operation_2482": "Secondary structure processing", + "http://edamontology.org/operation_2483": "Structure comparison", + "http://edamontology.org/operation_2485": "Helical wheel drawing", + "http://edamontology.org/operation_2486": "Topology diagram drawing", + "http://edamontology.org/operation_2487": "Protein structure comparison", + "http://edamontology.org/operation_2488": "Protein secondary structure comparison", + "http://edamontology.org/operation_2489": "Subcellular localisation prediction", + "http://edamontology.org/operation_2490": "Residue contact calculation (residue-residue)", + "http://edamontology.org/operation_2491": "Hydrogen bond calculation (inter-residue)", + "http://edamontology.org/operation_2492": "Protein interaction prediction", + "http://edamontology.org/operation_2493": "Codon usage data processing", + "http://edamontology.org/operation_2495": "Expression analysis", + "http://edamontology.org/operation_2496": "Gene regulatory network processing", + "http://edamontology.org/operation_2497": "Pathway or network analysis", + "http://edamontology.org/operation_2498": "Sequencing-based expression profile data analysis", + "http://edamontology.org/operation_2499": "Splicing analysis", + "http://edamontology.org/operation_2500": "Microarray raw data analysis", + "http://edamontology.org/operation_2501": "Nucleic acid analysis", + "http://edamontology.org/operation_2502": "Protein analysis", + "http://edamontology.org/operation_2503": "Sequence data processing", + "http://edamontology.org/operation_2504": "Structural data processing", + "http://edamontology.org/operation_2505": "Text processing", + "http://edamontology.org/operation_2506": "Protein sequence alignment analysis", + "http://edamontology.org/operation_2507": "Nucleic acid sequence alignment analysis", + "http://edamontology.org/operation_2508": "Nucleic acid sequence comparison", + "http://edamontology.org/operation_2509": "Protein sequence comparison", + "http://edamontology.org/operation_2510": "DNA back-translation", + "http://edamontology.org/operation_2511": "Sequence editing (nucleic acid)", + "http://edamontology.org/operation_2512": "Sequence editing (protein)", + "http://edamontology.org/operation_2513": "Sequence generation (nucleic acid)", + "http://edamontology.org/operation_2514": "Sequence generation (protein)", + "http://edamontology.org/operation_2515": "Nucleic acid sequence visualisation", + "http://edamontology.org/operation_2516": "Protein sequence visualisation", + "http://edamontology.org/operation_2518": "Nucleic acid structure comparison", + "http://edamontology.org/operation_2519": "Structure processing (nucleic acid)", + "http://edamontology.org/operation_2520": "DNA mapping", + "http://edamontology.org/operation_2521": "Map data processing", + "http://edamontology.org/operation_2574": "Protein hydropathy calculation", + "http://edamontology.org/operation_2575": "Binding site prediction", + "http://edamontology.org/operation_2844": "Structure clustering", + "http://edamontology.org/operation_2871": "Sequence tagged site (STS) mapping", + "http://edamontology.org/operation_2928": "Alignment", + "http://edamontology.org/operation_2929": "Protein fragment weight comparison", + "http://edamontology.org/operation_2930": "Protein property comparison", + "http://edamontology.org/operation_2931": "Secondary structure comparison", + "http://edamontology.org/operation_2932": "Hopp and Woods plotting", + "http://edamontology.org/operation_2934": "Cluster textual view generation", + "http://edamontology.org/operation_2935": "Clustering profile plotting", + "http://edamontology.org/operation_2936": "Dendrograph plotting", + "http://edamontology.org/operation_2937": "Proximity map plotting", + "http://edamontology.org/operation_2938": "Dendrogram visualisation", + "http://edamontology.org/operation_2939": "Principal component visualisation", + "http://edamontology.org/operation_2940": "Scatter plot plotting", + "http://edamontology.org/operation_2941": "Whole microarray graph plotting", + "http://edamontology.org/operation_2942": "Treemap visualisation", + "http://edamontology.org/operation_2943": "Box-Whisker plot plotting", + "http://edamontology.org/operation_2944": "Physical mapping", + "http://edamontology.org/operation_2945": "Analysis", + "http://edamontology.org/operation_2946": "Alignment analysis", + "http://edamontology.org/operation_2947": "Article analysis", + "http://edamontology.org/operation_2948": "Molecular interaction analysis", + "http://edamontology.org/operation_2949": "Protein-protein interaction analysis", + "http://edamontology.org/operation_2950": "Residue distance calculation", + "http://edamontology.org/operation_2951": "Alignment processing", + "http://edamontology.org/operation_2952": "Structure alignment processing", + "http://edamontology.org/operation_2962": "Codon usage bias calculation", + "http://edamontology.org/operation_2963": "Codon usage bias plotting", + "http://edamontology.org/operation_2964": "Codon usage fraction calculation", + "http://edamontology.org/operation_2990": "Classification", + "http://edamontology.org/operation_2993": "Molecular interaction data processing", + "http://edamontology.org/operation_2995": "Sequence classification", + "http://edamontology.org/operation_2996": "Structure classification", + "http://edamontology.org/operation_2997": "Protein comparison", + "http://edamontology.org/operation_2998": "Nucleic acid comparison", + "http://edamontology.org/operation_3023": "Prediction and recognition (protein)", + "http://edamontology.org/operation_3024": "Prediction and recognition (nucleic acid)", + "http://edamontology.org/operation_3080": "Structure editing", + "http://edamontology.org/operation_3081": "Sequence alignment editing", + "http://edamontology.org/operation_3083": "Pathway or network visualisation", + "http://edamontology.org/operation_3084": "Protein function prediction (from sequence)", + "http://edamontology.org/operation_3087": "Protein sequence feature detection", + "http://edamontology.org/operation_3088": "Protein property calculation (from sequence)", + "http://edamontology.org/operation_3090": "Protein feature prediction (from structure)", + "http://edamontology.org/operation_3092": "Protein feature detection", + "http://edamontology.org/operation_3093": "Database search (by sequence)", + "http://edamontology.org/operation_3094": "Protein interaction network prediction", + "http://edamontology.org/operation_3095": "Nucleic acid design", + "http://edamontology.org/operation_3096": "Editing", + "http://edamontology.org/operation_3180": "Sequence assembly validation", + "http://edamontology.org/operation_3182": "Genome alignment", + "http://edamontology.org/operation_3183": "Localised reassembly", + "http://edamontology.org/operation_3184": "Sequence assembly visualisation", + "http://edamontology.org/operation_3185": "Base-calling", + "http://edamontology.org/operation_3186": "Bisulfite mapping", + "http://edamontology.org/operation_3187": "Sequence contamination filtering", + "http://edamontology.org/operation_3189": "Trim ends", + "http://edamontology.org/operation_3190": "Trim vector", + "http://edamontology.org/operation_3191": "Trim to reference", + "http://edamontology.org/operation_3192": "Sequence trimming", + "http://edamontology.org/operation_3194": "Genome feature comparison", + "http://edamontology.org/operation_3195": "Sequencing error detection", + "http://edamontology.org/operation_3196": "Genotyping", + "http://edamontology.org/operation_3197": "Genetic variation analysis", + "http://edamontology.org/operation_3198": "Read mapping", + "http://edamontology.org/operation_3199": "Split read mapping", + "http://edamontology.org/operation_3200": "DNA barcoding", + "http://edamontology.org/operation_3201": "SNP calling", + "http://edamontology.org/operation_3202": "Polymorphism detection", + "http://edamontology.org/operation_3203": "Chromatogram visualisation", + "http://edamontology.org/operation_3204": "Methylation analysis", + "http://edamontology.org/operation_3205": "Methylation calling", + "http://edamontology.org/operation_3206": "Whole genome methylation analysis", + "http://edamontology.org/operation_3207": "Gene methylation analysis", + "http://edamontology.org/operation_3208": "Genome visualisation", + "http://edamontology.org/operation_3209": "Genome comparison", + "http://edamontology.org/operation_3211": "Genome indexing", + "http://edamontology.org/operation_3212": "Genome indexing (Burrows-Wheeler)", + "http://edamontology.org/operation_3213": "Genome indexing (suffix arrays)", + "http://edamontology.org/operation_3214": "Spectral analysis", + "http://edamontology.org/operation_3215": "Peak detection", + "http://edamontology.org/operation_3216": "Scaffolding", + "http://edamontology.org/operation_3217": "Scaffold gap completion", + "http://edamontology.org/operation_3218": "Sequencing quality control", + "http://edamontology.org/operation_3219": "Read pre-processing", + "http://edamontology.org/operation_3221": "Species frequency estimation", + "http://edamontology.org/operation_3222": "Peak calling", + "http://edamontology.org/operation_3223": "Differential gene expression profiling", + "http://edamontology.org/operation_3224": "Gene set testing", + "http://edamontology.org/operation_3225": "Variant classification", + "http://edamontology.org/operation_3226": "Variant prioritisation", + "http://edamontology.org/operation_3227": "Variant calling", + "http://edamontology.org/operation_3228": "Structural variation detection", + "http://edamontology.org/operation_3229": "Exome assembly", + "http://edamontology.org/operation_3230": "Read depth analysis", + "http://edamontology.org/operation_3232": "Gene expression QTL analysis", + "http://edamontology.org/operation_3233": "Copy number estimation", + "http://edamontology.org/operation_3237": "Primer removal", + "http://edamontology.org/operation_3258": "Transcriptome assembly", + "http://edamontology.org/operation_3259": "Transcriptome assembly (de novo)", + "http://edamontology.org/operation_3260": "Transcriptome assembly (mapping)", + "http://edamontology.org/operation_3267": "Sequence coordinate conversion", + "http://edamontology.org/operation_3278": "Document similarity calculation", + "http://edamontology.org/operation_3279": "Document clustering", + "http://edamontology.org/operation_3280": "Named-entity and concept recognition", + "http://edamontology.org/operation_3282": "ID mapping", + "http://edamontology.org/operation_3283": "Anonymisation", + "http://edamontology.org/operation_3289": "ID retrieval", + "http://edamontology.org/operation_3348": "Sequence checksum generation", + "http://edamontology.org/operation_3349": "Bibliography generation", + "http://edamontology.org/operation_3350": "Protein quaternary structure prediction", + "http://edamontology.org/operation_3351": "Molecular surface analysis", + "http://edamontology.org/operation_3352": "Ontology comparison", + "http://edamontology.org/operation_3353": "Ontology comparison", + "http://edamontology.org/operation_3357": "Format detection", + "http://edamontology.org/operation_3359": "Splitting", + "http://edamontology.org/operation_3429": "Generation", + "http://edamontology.org/operation_3430": "Nucleic acid sequence feature detection", + "http://edamontology.org/operation_3431": "Deposition", + "http://edamontology.org/operation_3432": "Clustering", + "http://edamontology.org/operation_3433": "Assembly", + "http://edamontology.org/operation_3434": "Conversion", + "http://edamontology.org/operation_3435": "Standardisation and normalisation", + "http://edamontology.org/operation_3436": "Aggregation", + "http://edamontology.org/operation_3437": "Article comparison", + "http://edamontology.org/operation_3438": "Calculation", + "http://edamontology.org/operation_3439": "Pathway or network prediction", + "http://edamontology.org/operation_3440": "Genome assembly", + "http://edamontology.org/operation_3441": "Plotting", + "http://edamontology.org/operation_3443": "Image analysis", + "http://edamontology.org/operation_3445": "Diffraction data analysis", + "http://edamontology.org/operation_3446": "Cell migration analysis", + "http://edamontology.org/operation_3447": "Diffraction data reduction", + "http://edamontology.org/operation_3450": "Neurite measurement", + "http://edamontology.org/operation_3453": "Diffraction data integration", + "http://edamontology.org/operation_3454": "Phasing", + "http://edamontology.org/operation_3455": "Molecular replacement", + "http://edamontology.org/operation_3456": "Rigid body refinement", + "http://edamontology.org/operation_3457": "Single particle analysis", + "http://edamontology.org/operation_3458": "Single particle alignment and classification", + "http://edamontology.org/operation_3459": "Functional clustering", + "http://edamontology.org/operation_3460": "Taxonomic classification", + "http://edamontology.org/operation_3461": "Virulence prediction", + "http://edamontology.org/operation_3463": "Expression correlation analysis", + "http://edamontology.org/operation_3465": "Correlation", + "http://edamontology.org/operation_3469": "RNA structure covariance model generation", + "http://edamontology.org/operation_3470": "RNA secondary structure prediction (shape-based)", + "http://edamontology.org/operation_3471": "Nucleic acid folding prediction (alignment-based)", + "http://edamontology.org/operation_3472": "k-mer counting", + "http://edamontology.org/operation_3478": "Phylogenetic reconstruction", + "http://edamontology.org/operation_3480": "Probabilistic data generation", + "http://edamontology.org/operation_3481": "Probabilistic sequence generation", + "http://edamontology.org/operation_3482": "Antimicrobial resistance prediction", + "http://edamontology.org/operation_3501": "Enrichment analysis", + "http://edamontology.org/operation_3502": "Chemical similarity enrichment", + "http://edamontology.org/operation_3503": "Incident curve plotting", + "http://edamontology.org/operation_3504": "Variant pattern analysis", + "http://edamontology.org/operation_3545": "Mathematical modelling", + "http://edamontology.org/operation_3552": "Microscope image visualisation", + "http://edamontology.org/operation_3553": "Image annotation", + "http://edamontology.org/operation_3557": "Imputation", + "http://edamontology.org/operation_3559": "Ontology visualisation", + "http://edamontology.org/operation_3560": "Maximum occurence analysis", + "http://edamontology.org/operation_3561": "Database comparison", + "http://edamontology.org/operation_3562": "Network simulation", + "http://edamontology.org/operation_3563": "RNA-seq read count analysis", + "http://edamontology.org/operation_3564": "Chemical redundancy removal", + "http://edamontology.org/operation_3565": "RNA-seq time series data analysis", + "http://edamontology.org/operation_3566": "Simulated gene expression data generation", + "http://edamontology.org/operation_3625": "Relation extraction", + "http://edamontology.org/operation_3627": "Mass spectra calibration", + "http://edamontology.org/operation_3628": "Chromatographic alignment", + "http://edamontology.org/operation_3629": "Deisotoping", + "http://edamontology.org/operation_3630": "Protein quantification", + "http://edamontology.org/operation_3631": "Peptide identification", + "http://edamontology.org/operation_3632": "Isotopic distributions calculation", + "http://edamontology.org/operation_3633": "Retention time prediction", + "http://edamontology.org/operation_3634": "Label-free quantification", + "http://edamontology.org/operation_3635": "Labeled quantification", + "http://edamontology.org/operation_3636": "MRM/SRM", + "http://edamontology.org/operation_3637": "Spectral counting", + "http://edamontology.org/operation_3638": "SILAC", + "http://edamontology.org/operation_3639": "iTRAQ", + "http://edamontology.org/operation_3640": "18O labeling", + "http://edamontology.org/operation_3641": "TMT-tag", + "http://edamontology.org/operation_3642": "Dimethyl", + "http://edamontology.org/operation_3643": "Tag-based peptide identification", + "http://edamontology.org/operation_3644": "de Novo sequencing", + "http://edamontology.org/operation_3645": "PTM identification", + "http://edamontology.org/operation_3646": "Peptide database search", + "http://edamontology.org/operation_3647": "Blind peptide database search", + "http://edamontology.org/operation_3648": "Validation of peptide-spectrum matches", + "http://edamontology.org/operation_3649": "Target-Decoy", + "http://edamontology.org/operation_3658": "Statistical inference", + "http://edamontology.org/operation_3659": "Regression analysis", + "http://edamontology.org/operation_3660": "Metabolic network modelling", + "http://edamontology.org/operation_3661": "SNP annotation", + "http://edamontology.org/operation_3662": "Ab-initio gene prediction", + "http://edamontology.org/operation_3663": "Homology-based gene prediction", + "http://edamontology.org/operation_3664": "Statistical modelling", + "http://edamontology.org/operation_3666": "Molecular surface comparison", + "http://edamontology.org/operation_3672": "Gene functional annotation", + "http://edamontology.org/operation_3675": "Variant filtering", + "http://edamontology.org/operation_3677": "Differential binding analysis", + "http://edamontology.org/operation_3680": "RNA-Seq analysis", + "http://edamontology.org/operation_3694": "Mass spectrum visualisation", + "http://edamontology.org/operation_3695": "Filtering", + "http://edamontology.org/operation_3703": "Reference identification", + "http://edamontology.org/operation_3704": "Ion counting", + "http://edamontology.org/operation_3705": "Isotope-coded protein label", + "http://edamontology.org/operation_3715": "Metabolic labeling", + "http://edamontology.org/operation_3730": "Cross-assembly", + "http://edamontology.org/operation_3731": "Sample comparison", + "http://edamontology.org/operation_3741": "Differential protein expression profiling", + "http://edamontology.org/operation_3742": "Differential gene expression analysis", + "http://edamontology.org/operation_3744": "Multiple sample visualisation", + "http://edamontology.org/operation_3745": "Ancestral reconstruction", + "http://edamontology.org/operation_3755": "PTM localisation", + "http://edamontology.org/operation_3760": "Service management", + "http://edamontology.org/operation_3761": "Service discovery", + "http://edamontology.org/operation_3762": "Service composition", + "http://edamontology.org/operation_3763": "Service invocation", + "http://edamontology.org/operation_3766": "Weighted correlation network analysis", + "http://edamontology.org/operation_3767": "Protein identification", + "http://edamontology.org/operation_3778": "Text annotation", + "http://edamontology.org/operation_3791": "Collapsing methods", + "http://edamontology.org/operation_3792": "miRNA expression analysis", + "http://edamontology.org/operation_3793": "Read summarisation", + "http://edamontology.org/operation_3795": "In vitro selection", + "http://edamontology.org/operation_3797": "Rarefaction", + "http://edamontology.org/operation_3798": "Read binning", + "http://edamontology.org/operation_3799": "Quantification", + "http://edamontology.org/operation_3800": "RNA-Seq quantification", + "http://edamontology.org/operation_3801": "Spectral library search", + "http://edamontology.org/operation_3802": "Sorting", + "http://edamontology.org/operation_3803": "Natural product identification", + "http://edamontology.org/operation_3809": "DMR identification", + "http://edamontology.org/operation_3840": "Multilocus sequence typing", + "http://edamontology.org/operation_3860": "Spectrum calculation", + "http://edamontology.org/operation_3890": "Trajectory visualization", + "http://edamontology.org/operation_3891": "Essential dynamics", + "http://edamontology.org/operation_3893": "Forcefield parameterisation", + "http://edamontology.org/operation_3894": "DNA profiling", + "http://edamontology.org/operation_3896": "Active site prediction", + "http://edamontology.org/operation_3897": "Ligand-binding site prediction", + "http://edamontology.org/operation_3898": "Metal-binding site prediction", + "http://edamontology.org/operation_3899": "Protein-protein docking", + "http://edamontology.org/operation_3900": "DNA-binding protein prediction", + "http://edamontology.org/operation_3901": "RNA-binding protein prediction", + "http://edamontology.org/operation_3902": "RNA binding site prediction", + "http://edamontology.org/operation_3903": "DNA binding site prediction", + "http://edamontology.org/operation_3904": "Protein disorder prediction", + "http://edamontology.org/operation_3907": "Information extraction", + "http://edamontology.org/operation_3908": "Information retrieval", + "http://edamontology.org/operation_3918": "Genome analysis", + "http://edamontology.org/operation_3919": "Methylation calling", + "http://edamontology.org/operation_3920": "DNA testing", + "http://edamontology.org/operation_3921": "Sequence read processing", + "http://edamontology.org/operation_3923": "Genome resequencing", + "http://edamontology.org/operation_3925": "Network visualisation", + "http://edamontology.org/operation_3926": "Pathway visualisation", + "http://edamontology.org/operation_3927": "Network analysis", + "http://edamontology.org/operation_3928": "Pathway analysis", + "http://edamontology.org/operation_3929": "Metabolic pathway prediction", + "http://edamontology.org/operation_3931": "Chemometrics", + "http://edamontology.org/operation_3933": "Demultiplexing", + "http://edamontology.org/operation_3935": "Dimensionality reduction", + "http://edamontology.org/operation_3936": "Feature selection", + "http://edamontology.org/operation_3937": "Feature extraction", + "http://edamontology.org/operation_3938": "Virtual screening", + "http://edamontology.org/operation_3939": "Metabolic engineering", + "http://edamontology.org/operation_3942": "Tree dating", + "http://edamontology.org/operation_3946": "Ecological modelling", + "http://edamontology.org/operation_3947": "Phylogenetic tree reconciliation", + "http://edamontology.org/operation_3950": "Selection detection", + "http://edamontology.org/operation_3960": "Principal component analysis", + "http://edamontology.org/operation_3961": "Copy number variation detection", + "http://edamontology.org/operation_3962": "Deletion detection", + "http://edamontology.org/operation_3963": "Duplication detection", + "http://edamontology.org/operation_3964": "Complex CNV detection", + "http://edamontology.org/operation_3965": "Amplification detection", + "http://edamontology.org/operation_3968": "Adhesin prediction", + "http://edamontology.org/operation_4008": "Protein design", + "http://edamontology.org/operation_4009": "Small molecule design", + "http://edamontology.org/topic_0003": "Topic", + "http://edamontology.org/topic_0077": "Nucleic acids", + "http://edamontology.org/topic_0078": "Proteins", + "http://edamontology.org/topic_0079": "Metabolites", + "http://edamontology.org/topic_0080": "Sequence analysis", + "http://edamontology.org/topic_0081": "Structure analysis", + "http://edamontology.org/topic_0082": "Structure prediction", + "http://edamontology.org/topic_0083": "Alignment", + "http://edamontology.org/topic_0084": "Phylogeny", + "http://edamontology.org/topic_0085": "Functional genomics", + "http://edamontology.org/topic_0089": "Ontology and terminology", + "http://edamontology.org/topic_0090": "Information retrieval", + "http://edamontology.org/topic_0091": "Bioinformatics", + "http://edamontology.org/topic_0092": "Data visualisation", + "http://edamontology.org/topic_0094": "Nucleic acid thermodynamics", + "http://edamontology.org/topic_0097": "Nucleic acid structure analysis", + "http://edamontology.org/topic_0099": "RNA", + "http://edamontology.org/topic_0100": "Nucleic acid restriction", + "http://edamontology.org/topic_0102": "Mapping", + "http://edamontology.org/topic_0107": "Genetic codes and codon usage", + "http://edamontology.org/topic_0108": "Protein expression", + "http://edamontology.org/topic_0109": "Gene finding", + "http://edamontology.org/topic_0110": "Transcription", + "http://edamontology.org/topic_0111": "Promoters", + "http://edamontology.org/topic_0112": "Nucleic acid folding", + "http://edamontology.org/topic_0114": "Gene structure", + "http://edamontology.org/topic_0121": "Proteomics", + "http://edamontology.org/topic_0122": "Structural genomics", + "http://edamontology.org/topic_0123": "Protein properties", + "http://edamontology.org/topic_0128": "Protein interactions", + "http://edamontology.org/topic_0130": "Protein folding, stability and design", + "http://edamontology.org/topic_0133": "Two-dimensional gel electrophoresis", + "http://edamontology.org/topic_0134": "Mass spectrometry", + "http://edamontology.org/topic_0135": "Protein microarrays", + "http://edamontology.org/topic_0137": "Protein hydropathy", + "http://edamontology.org/topic_0140": "Protein targeting and localisation", + "http://edamontology.org/topic_0141": "Protein cleavage sites and proteolysis", + "http://edamontology.org/topic_0143": "Protein structure comparison", + "http://edamontology.org/topic_0144": "Protein residue interactions", + "http://edamontology.org/topic_0147": "Protein-protein interactions", + "http://edamontology.org/topic_0148": "Protein-ligand interactions", + "http://edamontology.org/topic_0149": "Protein-nucleic acid interactions", + "http://edamontology.org/topic_0150": "Protein design", + "http://edamontology.org/topic_0151": "G protein-coupled receptors (GPCR)", + "http://edamontology.org/topic_0152": "Carbohydrates", + "http://edamontology.org/topic_0153": "Lipids", + "http://edamontology.org/topic_0154": "Small molecules", + "http://edamontology.org/topic_0156": "Sequence editing", + "http://edamontology.org/topic_0157": "Sequence composition, complexity and repeats", + "http://edamontology.org/topic_0158": "Sequence motifs", + "http://edamontology.org/topic_0159": "Sequence comparison", + "http://edamontology.org/topic_0160": "Sequence sites, features and motifs", + "http://edamontology.org/topic_0163": "Sequence database search", + "http://edamontology.org/topic_0164": "Sequence clustering", + "http://edamontology.org/topic_0166": "Protein structural motifs and surfaces", + "http://edamontology.org/topic_0167": "Structural (3D) profiles", + "http://edamontology.org/topic_0172": "Protein structure prediction", + "http://edamontology.org/topic_0173": "Nucleic acid structure prediction", + "http://edamontology.org/topic_0174": "Ab initio structure prediction", + "http://edamontology.org/topic_0175": "Homology modelling", + "http://edamontology.org/topic_0176": "Molecular dynamics", + "http://edamontology.org/topic_0177": "Molecular docking", + "http://edamontology.org/topic_0178": "Protein secondary structure prediction", + "http://edamontology.org/topic_0179": "Protein tertiary structure prediction", + "http://edamontology.org/topic_0180": "Protein fold recognition", + "http://edamontology.org/topic_0182": "Sequence alignment", + "http://edamontology.org/topic_0183": "Structure alignment", + "http://edamontology.org/topic_0184": "Threading", + "http://edamontology.org/topic_0188": "Sequence profiles and HMMs", + "http://edamontology.org/topic_0191": "Phylogeny reconstruction", + "http://edamontology.org/topic_0194": "Phylogenomics", + "http://edamontology.org/topic_0195": "Virtual PCR", + "http://edamontology.org/topic_0196": "Sequence assembly", + "http://edamontology.org/topic_0199": "Genetic variation", + "http://edamontology.org/topic_0200": "Microarrays", + "http://edamontology.org/topic_0202": "Pharmacology", + "http://edamontology.org/topic_0203": "Gene expression", + "http://edamontology.org/topic_0204": "Gene regulation", + "http://edamontology.org/topic_0208": "Pharmacogenomics", + "http://edamontology.org/topic_0209": "Medicinal chemistry", + "http://edamontology.org/topic_0210": "Fish", + "http://edamontology.org/topic_0211": "Flies", + "http://edamontology.org/topic_0213": "Mice or rats", + "http://edamontology.org/topic_0215": "Worms", + "http://edamontology.org/topic_0217": "Literature analysis", + "http://edamontology.org/topic_0218": "Natural language processing", + "http://edamontology.org/topic_0219": "Data submission, annotation and curation", + "http://edamontology.org/topic_0220": "Document, record and content management", + "http://edamontology.org/topic_0221": "Sequence annotation", + "http://edamontology.org/topic_0222": "Genome annotation", + "http://edamontology.org/topic_0593": "NMR", + "http://edamontology.org/topic_0594": "Sequence classification", + "http://edamontology.org/topic_0595": "Protein classification", + "http://edamontology.org/topic_0598": "Sequence motif or profile", + "http://edamontology.org/topic_0601": "Protein modifications", + "http://edamontology.org/topic_0602": "Molecular interactions, pathways and networks", + "http://edamontology.org/topic_0605": "Informatics", + "http://edamontology.org/topic_0606": "Literature data resources", + "http://edamontology.org/topic_0607": "Laboratory information management", + "http://edamontology.org/topic_0608": "Cell and tissue culture", + "http://edamontology.org/topic_0610": "Ecology", + "http://edamontology.org/topic_0611": "Electron microscopy", + "http://edamontology.org/topic_0612": "Cell cycle", + "http://edamontology.org/topic_0613": "Peptides and amino acids", + "http://edamontology.org/topic_0616": "Organelles", + "http://edamontology.org/topic_0617": "Ribosomes", + "http://edamontology.org/topic_0618": "Scents", + "http://edamontology.org/topic_0620": "Drugs and target structures", + "http://edamontology.org/topic_0621": "Model organisms", + "http://edamontology.org/topic_0622": "Genomics", + "http://edamontology.org/topic_0623": "Gene and protein families", + "http://edamontology.org/topic_0624": "Chromosomes", + "http://edamontology.org/topic_0625": "Genotype and phenotype", + "http://edamontology.org/topic_0629": "Gene expression and microarray", + "http://edamontology.org/topic_0632": "Probes and primers", + "http://edamontology.org/topic_0634": "Pathology", + "http://edamontology.org/topic_0635": "Specific protein resources", + "http://edamontology.org/topic_0637": "Taxonomy", + "http://edamontology.org/topic_0639": "Protein sequence analysis", + "http://edamontology.org/topic_0640": "Nucleic acid sequence analysis", + "http://edamontology.org/topic_0641": "Repeat sequences", + "http://edamontology.org/topic_0642": "Low complexity sequences", + "http://edamontology.org/topic_0644": "Proteome", + "http://edamontology.org/topic_0654": "DNA", + "http://edamontology.org/topic_0655": "Coding RNA", + "http://edamontology.org/topic_0659": "Functional, regulatory and non-coding RNA", + "http://edamontology.org/topic_0660": "rRNA", + "http://edamontology.org/topic_0663": "tRNA", + "http://edamontology.org/topic_0694": "Protein secondary structure", + "http://edamontology.org/topic_0697": "RNA structure", + "http://edamontology.org/topic_0698": "Protein tertiary structure", + "http://edamontology.org/topic_0722": "Nucleic acid classification", + "http://edamontology.org/topic_0724": "Protein families", + "http://edamontology.org/topic_0736": "Protein folds and structural domains", + "http://edamontology.org/topic_0740": "Nucleic acid sequence alignment", + "http://edamontology.org/topic_0741": "Protein sequence alignment", + "http://edamontology.org/topic_0747": "Nucleic acid sites and features", + "http://edamontology.org/topic_0748": "Protein sites and features", + "http://edamontology.org/topic_0749": "Transcription factors and regulatory sites", + "http://edamontology.org/topic_0751": "Phosphorylation sites", + "http://edamontology.org/topic_0753": "Metabolic pathways", + "http://edamontology.org/topic_0754": "Signaling pathways", + "http://edamontology.org/topic_0767": "Protein and peptide identification", + "http://edamontology.org/topic_0769": "Workflows", + "http://edamontology.org/topic_0770": "Data types and objects", + "http://edamontology.org/topic_0771": "Theoretical biology", + "http://edamontology.org/topic_0779": "Mitochondria", + "http://edamontology.org/topic_0780": "Plant biology", + "http://edamontology.org/topic_0781": "Virology", + "http://edamontology.org/topic_0782": "Fungi", + "http://edamontology.org/topic_0783": "Pathogens", + "http://edamontology.org/topic_0786": "Arabidopsis", + "http://edamontology.org/topic_0787": "Rice", + "http://edamontology.org/topic_0796": "Genetic mapping and linkage", + "http://edamontology.org/topic_0797": "Comparative genomics", + "http://edamontology.org/topic_0798": "Mobile genetic elements", + "http://edamontology.org/topic_0803": "Human disease", + "http://edamontology.org/topic_0804": "Immunology", + "http://edamontology.org/topic_0820": "Membrane and lipoproteins", + "http://edamontology.org/topic_0821": "Enzymes", + "http://edamontology.org/topic_0922": "Primers", + "http://edamontology.org/topic_1302": "PolyA signal or sites", + "http://edamontology.org/topic_1304": "CpG island and isochores", + "http://edamontology.org/topic_1305": "Restriction sites", + "http://edamontology.org/topic_1307": "Splice sites", + "http://edamontology.org/topic_1308": "Matrix/scaffold attachment sites", + "http://edamontology.org/topic_1311": "Operon", + "http://edamontology.org/topic_1312": "Promoters", + "http://edamontology.org/topic_1317": "Structural biology", + "http://edamontology.org/topic_1456": "Protein membrane regions", + "http://edamontology.org/topic_1770": "Structure comparison", + "http://edamontology.org/topic_1775": "Function analysis", + "http://edamontology.org/topic_1811": "Prokaryotes and Archaea", + "http://edamontology.org/topic_2225": "Protein databases", + "http://edamontology.org/topic_2226": "Structure determination", + "http://edamontology.org/topic_2229": "Cell biology", + "http://edamontology.org/topic_2230": "Classification", + "http://edamontology.org/topic_2232": "Lipoproteins", + "http://edamontology.org/topic_2257": "Phylogeny visualisation", + "http://edamontology.org/topic_2258": "Cheminformatics", + "http://edamontology.org/topic_2259": "Systems biology", + "http://edamontology.org/topic_2269": "Statistics and probability", + "http://edamontology.org/topic_2271": "Structure database search", + "http://edamontology.org/topic_2275": "Molecular modelling", + "http://edamontology.org/topic_2276": "Protein function prediction", + "http://edamontology.org/topic_2277": "SNP", + "http://edamontology.org/topic_2278": "Transmembrane protein prediction", + "http://edamontology.org/topic_2280": "Nucleic acid structure comparison", + "http://edamontology.org/topic_2397": "Exons", + "http://edamontology.org/topic_2399": "Gene transcription", + "http://edamontology.org/topic_2533": "DNA mutation", + "http://edamontology.org/topic_2640": "Oncology", + "http://edamontology.org/topic_2661": "Toxins and targets", + "http://edamontology.org/topic_2754": "Introns", + "http://edamontology.org/topic_2807": "Tool topic", + "http://edamontology.org/topic_2809": "Study topic", + "http://edamontology.org/topic_2811": "Nomenclature", + "http://edamontology.org/topic_2813": "Disease genes and proteins", + "http://edamontology.org/topic_2814": "Protein structure analysis", + "http://edamontology.org/topic_2815": "Human biology", + "http://edamontology.org/topic_2816": "Gene resources", + "http://edamontology.org/topic_2817": "Yeast", + "http://edamontology.org/topic_2818": "Eukaryotes", + "http://edamontology.org/topic_2819": "Invertebrates", + "http://edamontology.org/topic_2820": "Vertebrates", + "http://edamontology.org/topic_2821": "Unicellular eukaryotes", + "http://edamontology.org/topic_2826": "Protein structure alignment", + "http://edamontology.org/topic_2828": "X-ray diffraction", + "http://edamontology.org/topic_2829": "Ontologies, nomenclature and classification", + "http://edamontology.org/topic_2830": "Immunoproteins and antigens", + "http://edamontology.org/topic_2839": "Molecules", + "http://edamontology.org/topic_2840": "Toxicology", + "http://edamontology.org/topic_2842": "High-throughput sequencing", + "http://edamontology.org/topic_2846": "Gene regulatory networks", + "http://edamontology.org/topic_2847": "Disease (specific)", + "http://edamontology.org/topic_2867": "VNTR", + "http://edamontology.org/topic_2868": "Microsatellites", + "http://edamontology.org/topic_2869": "RFLP", + "http://edamontology.org/topic_2885": "DNA polymorphism", + "http://edamontology.org/topic_2953": "Nucleic acid design", + "http://edamontology.org/topic_3032": "Primer or probe design", + "http://edamontology.org/topic_3038": "Structure databases", + "http://edamontology.org/topic_3039": "Nucleic acid structure", + "http://edamontology.org/topic_3041": "Sequence databases", + "http://edamontology.org/topic_3042": "Nucleic acid sequences", + "http://edamontology.org/topic_3043": "Protein sequences", + "http://edamontology.org/topic_3044": "Protein interaction networks", + "http://edamontology.org/topic_3047": "Molecular biology", + "http://edamontology.org/topic_3048": "Mammals", + "http://edamontology.org/topic_3050": "Biodiversity", + "http://edamontology.org/topic_3052": "Sequence clusters and classification", + "http://edamontology.org/topic_3053": "Genetics", + "http://edamontology.org/topic_3055": "Quantitative genetics", + "http://edamontology.org/topic_3056": "Population genetics", + "http://edamontology.org/topic_3060": "Regulatory RNA", + "http://edamontology.org/topic_3061": "Documentation and help", + "http://edamontology.org/topic_3062": "Genetic organisation", + "http://edamontology.org/topic_3063": "Medical informatics", + "http://edamontology.org/topic_3064": "Developmental biology", + "http://edamontology.org/topic_3065": "Embryology", + "http://edamontology.org/topic_3067": "Anatomy", + "http://edamontology.org/topic_3068": "Literature and language", + "http://edamontology.org/topic_3070": "Biology", + "http://edamontology.org/topic_3071": "Biological databases", + "http://edamontology.org/topic_3072": "Sequence feature detection", + "http://edamontology.org/topic_3073": "Nucleic acid feature detection", + "http://edamontology.org/topic_3074": "Protein feature detection", + "http://edamontology.org/topic_3075": "Biological system modelling", + "http://edamontology.org/topic_3077": "Data acquisition", + "http://edamontology.org/topic_3078": "Genes and proteins resources", + "http://edamontology.org/topic_3118": "Protein topological domains", + "http://edamontology.org/topic_3120": "Protein variants", + "http://edamontology.org/topic_3123": "Expression signals", + "http://edamontology.org/topic_3125": "DNA binding sites", + "http://edamontology.org/topic_3126": "Nucleic acid repeats", + "http://edamontology.org/topic_3127": "DNA replication and recombination", + "http://edamontology.org/topic_3135": "Signal or transit peptide", + "http://edamontology.org/topic_3139": "Sequence tagged sites", + "http://edamontology.org/topic_3168": "Sequencing", + "http://edamontology.org/topic_3169": "ChIP-seq", + "http://edamontology.org/topic_3170": "RNA-Seq", + "http://edamontology.org/topic_3171": "DNA methylation", + "http://edamontology.org/topic_3172": "Metabolomics", + "http://edamontology.org/topic_3173": "Epigenomics", + "http://edamontology.org/topic_3174": "Metagenomics", + "http://edamontology.org/topic_3175": "Structural variation", + "http://edamontology.org/topic_3176": "DNA packaging", + "http://edamontology.org/topic_3177": "DNA-Seq", + "http://edamontology.org/topic_3178": "RNA-Seq alignment", + "http://edamontology.org/topic_3179": "ChIP-on-chip", + "http://edamontology.org/topic_3263": "Data security", + "http://edamontology.org/topic_3277": "Sample collections", + "http://edamontology.org/topic_3292": "Biochemistry", + "http://edamontology.org/topic_3293": "Phylogenetics", + "http://edamontology.org/topic_3295": "Epigenetics", + "http://edamontology.org/topic_3297": "Biotechnology", + "http://edamontology.org/topic_3298": "Phenomics", + "http://edamontology.org/topic_3299": "Evolutionary biology", + "http://edamontology.org/topic_3300": "Physiology", + "http://edamontology.org/topic_3301": "Microbiology", + "http://edamontology.org/topic_3302": "Parasitology", + "http://edamontology.org/topic_3303": "Medicine", + "http://edamontology.org/topic_3304": "Neurobiology", + "http://edamontology.org/topic_3305": "Public health and epidemiology", + "http://edamontology.org/topic_3306": "Biophysics", + "http://edamontology.org/topic_3307": "Computational biology", + "http://edamontology.org/topic_3308": "Transcriptomics", + "http://edamontology.org/topic_3314": "Chemistry", + "http://edamontology.org/topic_3315": "Mathematics", + "http://edamontology.org/topic_3316": "Computer science", + "http://edamontology.org/topic_3318": "Physics", + "http://edamontology.org/topic_3320": "RNA splicing", + "http://edamontology.org/topic_3321": "Molecular genetics", + "http://edamontology.org/topic_3322": "Respiratory medicine", + "http://edamontology.org/topic_3323": "Metabolic disease", + "http://edamontology.org/topic_3324": "Infectious disease", + "http://edamontology.org/topic_3325": "Rare diseases", + "http://edamontology.org/topic_3332": "Computational chemistry", + "http://edamontology.org/topic_3334": "Neurology", + "http://edamontology.org/topic_3335": "Cardiology", + "http://edamontology.org/topic_3336": "Drug discovery", + "http://edamontology.org/topic_3337": "Biobank", + "http://edamontology.org/topic_3338": "Mouse clinic", + "http://edamontology.org/topic_3339": "Microbial collection", + "http://edamontology.org/topic_3340": "Cell culture collection", + "http://edamontology.org/topic_3341": "Clone library", + "http://edamontology.org/topic_3342": "Translational medicine", + "http://edamontology.org/topic_3343": "Compound libraries and screening", + "http://edamontology.org/topic_3344": "Biomedical science", + "http://edamontology.org/topic_3345": "Data identity and mapping", + "http://edamontology.org/topic_3346": "Sequence search", + "http://edamontology.org/topic_3360": "Biomarkers", + "http://edamontology.org/topic_3361": "Laboratory techniques", + "http://edamontology.org/topic_3365": "Data architecture, analysis and design", + "http://edamontology.org/topic_3366": "Data integration and warehousing", + "http://edamontology.org/topic_3368": "Biomaterials", + "http://edamontology.org/topic_3369": "Chemical biology", + "http://edamontology.org/topic_3370": "Analytical chemistry", + "http://edamontology.org/topic_3371": "Synthetic chemistry", + "http://edamontology.org/topic_3372": "Software engineering", + "http://edamontology.org/topic_3373": "Drug development", + "http://edamontology.org/topic_3374": "Biotherapeutics", + "http://edamontology.org/topic_3375": "Drug metabolism", + "http://edamontology.org/topic_3376": "Medicines research and development", + "http://edamontology.org/topic_3377": "Safety sciences", + "http://edamontology.org/topic_3378": "Pharmacovigilance", + "http://edamontology.org/topic_3379": "Preclinical and clinical studies", + "http://edamontology.org/topic_3382": "Imaging", + "http://edamontology.org/topic_3383": "Bioimaging", + "http://edamontology.org/topic_3384": "Medical imaging", + "http://edamontology.org/topic_3385": "Light microscopy", + "http://edamontology.org/topic_3386": "Laboratory animal science", + "http://edamontology.org/topic_3387": "Marine biology", + "http://edamontology.org/topic_3388": "Molecular medicine", + "http://edamontology.org/topic_3390": "Nutritional science", + "http://edamontology.org/topic_3391": "Omics", + "http://edamontology.org/topic_3393": "Quality affairs", + "http://edamontology.org/topic_3394": "Regulatory affairs", + "http://edamontology.org/topic_3395": "Regenerative medicine", + "http://edamontology.org/topic_3396": "Systems medicine", + "http://edamontology.org/topic_3397": "Veterinary medicine", + "http://edamontology.org/topic_3398": "Bioengineering", + "http://edamontology.org/topic_3399": "Geriatric medicine", + "http://edamontology.org/topic_3400": "Allergy, clinical immunology and immunotherapeutics", + "http://edamontology.org/topic_3401": "Pain medicine", + "http://edamontology.org/topic_3402": "Anaesthesiology", + "http://edamontology.org/topic_3403": "Critical care medicine", + "http://edamontology.org/topic_3404": "Dermatology", + "http://edamontology.org/topic_3405": "Dentistry", + "http://edamontology.org/topic_3406": "Ear, nose and throat medicine", + "http://edamontology.org/topic_3407": "Endocrinology and metabolism", + "http://edamontology.org/topic_3408": "Haematology", + "http://edamontology.org/topic_3409": "Gastroenterology", + "http://edamontology.org/topic_3410": "Gender medicine", + "http://edamontology.org/topic_3411": "Gynaecology and obstetrics", + "http://edamontology.org/topic_3412": "Hepatic and biliary medicine", + "http://edamontology.org/topic_3413": "Infectious tropical disease", + "http://edamontology.org/topic_3414": "Trauma medicine", + "http://edamontology.org/topic_3415": "Medical toxicology", + "http://edamontology.org/topic_3416": "Musculoskeletal medicine", + "http://edamontology.org/topic_3417": "Opthalmology", + "http://edamontology.org/topic_3418": "Paediatrics", + "http://edamontology.org/topic_3419": "Psychiatry", + "http://edamontology.org/topic_3420": "Reproductive health", + "http://edamontology.org/topic_3421": "Surgery", + "http://edamontology.org/topic_3422": "Urology and nephrology", + "http://edamontology.org/topic_3423": "Complementary medicine", + "http://edamontology.org/topic_3444": "MRI", + "http://edamontology.org/topic_3448": "Neutron diffraction", + "http://edamontology.org/topic_3452": "Tomography", + "http://edamontology.org/topic_3473": "Data mining", + "http://edamontology.org/topic_3474": "Machine learning", + "http://edamontology.org/topic_3489": "Database management", + "http://edamontology.org/topic_3500": "Zoology", + "http://edamontology.org/topic_3510": "Protein sites, features and motifs", + "http://edamontology.org/topic_3511": "Nucleic acid sites, features and motifs", + "http://edamontology.org/topic_3512": "Gene transcripts", + "http://edamontology.org/topic_3514": "Protein-ligand interactions", + "http://edamontology.org/topic_3515": "Protein-drug interactions", + "http://edamontology.org/topic_3516": "Genotyping experiment", + "http://edamontology.org/topic_3517": "GWAS study", + "http://edamontology.org/topic_3518": "Microarray experiment", + "http://edamontology.org/topic_3519": "PCR experiment", + "http://edamontology.org/topic_3520": "Proteomics experiment", + "http://edamontology.org/topic_3521": "2D PAGE experiment", + "http://edamontology.org/topic_3522": "Northern blot experiment", + "http://edamontology.org/topic_3523": "RNAi experiment", + "http://edamontology.org/topic_3524": "Simulation experiment", + "http://edamontology.org/topic_3525": "Protein-nucleic acid interactions", + "http://edamontology.org/topic_3526": "Protein-protein interactions", + "http://edamontology.org/topic_3527": "Cellular process pathways", + "http://edamontology.org/topic_3528": "Disease pathways", + "http://edamontology.org/topic_3529": "Environmental information processing pathways", + "http://edamontology.org/topic_3530": "Genetic information processing pathways", + "http://edamontology.org/topic_3531": "Protein super-secondary structure", + "http://edamontology.org/topic_3533": "Protein active sites", + "http://edamontology.org/topic_3534": "Protein binding sites", + "http://edamontology.org/topic_3535": "Protein-nucleic acid binding sites", + "http://edamontology.org/topic_3536": "Protein cleavage sites", + "http://edamontology.org/topic_3537": "Protein chemical modifications", + "http://edamontology.org/topic_3538": "Protein disordered structure", + "http://edamontology.org/topic_3539": "Protein domains", + "http://edamontology.org/topic_3540": "Protein key folding sites", + "http://edamontology.org/topic_3541": "Protein post-translational modifications", + "http://edamontology.org/topic_3542": "Protein secondary structure", + "http://edamontology.org/topic_3543": "Protein sequence repeats", + "http://edamontology.org/topic_3544": "Protein signal peptides", + "http://edamontology.org/topic_3569": "Applied mathematics", + "http://edamontology.org/topic_3570": "Pure mathematics", + "http://edamontology.org/topic_3571": "Data governance", + "http://edamontology.org/topic_3572": "Data quality management", + "http://edamontology.org/topic_3573": "Freshwater biology", + "http://edamontology.org/topic_3574": "Human genetics", + "http://edamontology.org/topic_3575": "Tropical medicine", + "http://edamontology.org/topic_3576": "Medical biotechnology", + "http://edamontology.org/topic_3577": "Personalised medicine", + "http://edamontology.org/topic_3656": "Immunoprecipitation experiment", + "http://edamontology.org/topic_3673": "Whole genome sequencing", + "http://edamontology.org/topic_3674": "Methylated DNA immunoprecipitation", + "http://edamontology.org/topic_3676": "Exome sequencing", + "http://edamontology.org/topic_3678": "Experimental design and studies", + "http://edamontology.org/topic_3679": "Animal study", + "http://edamontology.org/topic_3697": "Microbial ecology", + "http://edamontology.org/topic_3794": "RNA immunoprecipitation", + "http://edamontology.org/topic_3796": "Population genomics", + "http://edamontology.org/topic_3810": "Agricultural science", + "http://edamontology.org/topic_3837": "Metagenomic sequencing", + "http://edamontology.org/topic_3855": "Environmental science", + "http://edamontology.org/topic_3892": "Biomolecular simulation", + "http://edamontology.org/topic_3895": "Synthetic biology", + "http://edamontology.org/topic_3912": "Genetic engineering", + "http://edamontology.org/topic_3922": "Proteogenomics", + "http://edamontology.org/topic_3930": "Immunogenetics", + "http://edamontology.org/topic_3934": "Cytometry", + "http://edamontology.org/topic_3940": "Chromosome conformation capture", + "http://edamontology.org/topic_3941": "Metatranscriptomics", + "http://edamontology.org/topic_3943": "Paleogenomics", + "http://edamontology.org/topic_3944": "Cladistics", + "http://edamontology.org/topic_3945": "Molecular evolution", + "http://edamontology.org/topic_3948": "Immunoinformatics", + "http://edamontology.org/topic_3954": "Echography", + "http://edamontology.org/topic_3955": "Fluxomics", + "http://edamontology.org/topic_3957": "Protein interaction experiment", + "http://edamontology.org/topic_3958": "Copy number variation", + "http://edamontology.org/topic_3959": "Cytogenetics", + "http://edamontology.org/topic_3966": "Vaccinology", + "http://edamontology.org/topic_3967": "Immunomics", + "http://edamontology.org/topic_3974": "Epistasis", + "http://www.geneontology.org/formats/oboInOwl#ObsoleteClass": "Obsolete concept (EDAM)" +} \ No newline at end of file diff --git a/src/test/java/nl/esciencecenter/controller/AlternativesControllerTest.java b/src/test/java/nl/esciencecenter/controller/AlternativesControllerTest.java new file mode 100644 index 0000000..14e2f13 --- /dev/null +++ b/src/test/java/nl/esciencecenter/controller/AlternativesControllerTest.java @@ -0,0 +1,136 @@ +package nl.esciencecenter.controller; + +import static org.hamcrest.Matchers.*; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; +import static org.junit.jupiter.api.Assertions.*; + +import java.nio.charset.StandardCharsets; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; + +/** + * Integrationstest für {@link AlternativesController}. + * + * Testet den vollständigen HTTP-Layer des {@code POST /alternatives/parse} + * Endpunkts: Routing, Multipart-Handling, JSON-Serialisierung und + * Fehlerbehandlung. Ergänzt die Unit-Tests in {@link nl.esciencecenter.restape.CwlParserTest}, + * die den Parser isoliert prüfen. + */ +@SpringBootTest +@AutoConfigureMockMvc +class AlternativesControllerTest { + + @Autowired + private MockMvc mvc; + + // ── Hilfsmethoden ──────────────────────────────────────────────────────── + + /** Lädt die Test-Fixture aus dem Classpath. */ + private MockMultipartFile fixtureFile(String resourceName) throws Exception { + byte[] bytes = getClass().getClassLoader() + .getResourceAsStream(resourceName).readAllBytes(); + return new MockMultipartFile("cwl_file", resourceName, + MediaType.TEXT_PLAIN_VALUE, bytes); + } + + /** Erstellt eine In-Memory-CWL-Datei mit dem angegebenen Inhalt. */ + private MockMultipartFile inlineCwl(String content) { + return new MockMultipartFile("cwl_file", "workflow.cwl", + MediaType.TEXT_PLAIN_VALUE, + content.getBytes(StandardCharsets.UTF_8)); + } + + // ── Happy Path ─────────────────────────────────────────────────────────── + + @Test + void testParseCwlPass() throws Exception { + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(fixtureFile("test_workflow.cwl")) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(content().contentType(MediaType.APPLICATION_JSON)) + .andExpect(jsonPath("$.nodes", hasSize(5))) + .andExpect(jsonPath("$.edges", hasSize(4))) + .andExpect(jsonPath("$.inputs", hasSize(1))) + .andExpect(jsonPath("$.outputs", hasSize(1))); + } + + @Test + void testParseCwlToolLabelsNoSuffix() throws Exception { + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(fixtureFile("test_workflow.cwl")) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(jsonPath("$.nodes[?(@.type=='tool')].label", + everyItem(not(matchesRegex(".*_\\d+$"))))); + } + + @Test + void testParseCwlInputEdamUri() throws Exception { + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(fixtureFile("test_workflow.cwl")) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(jsonPath("$.inputs[0].id", + is("http://edamontology.org/format_3728"))); + } + + // ── Fehlerbehandlung (HTTP 400) ─────────────────────────────────────────── + + @Test + void testParseCwlWrongClassFail() throws Exception { + String cwl = "class: CommandLineTool\ncwlVersion: v1.2\n"; + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(inlineCwl(cwl)) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isBadRequest()); + } + + @Test + void testParseCwlWrongVersionFail() throws Exception { + String cwl = "class: Workflow\ncwlVersion: v1.0\nsteps:\n ToolA: {}\n"; + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(inlineCwl(cwl)) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isBadRequest()); + } + + @Test + void testParseCwlEmptyFileFail() throws Exception { + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(inlineCwl("")) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isBadRequest()); + } + + @Test + void testParseCwlInvalidYamlFail() throws Exception { + mvc.perform(MockMvcRequestBuilders.multipart("/alternatives/parse") + .file(inlineCwl("{ not: valid: yaml: [}")) + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isBadRequest()); + } + + // ── Falsche HTTP-Methode ────────────────────────────────────────────────── + + @Test + void testParseCwlGetFail() throws Exception { + mvc.perform(MockMvcRequestBuilders.get("/alternatives/parse") + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isMethodNotAllowed()); + } + + @Test + void testParseCwlNoContentTypeFail() throws Exception { + mvc.perform(MockMvcRequestBuilders.post("/alternatives/parse") + .accept(MediaType.APPLICATION_JSON)) + .andExpect(status().isUnsupportedMediaType()); + } +} diff --git a/src/test/java/nl/esciencecenter/restape/CwlParserTest.java b/src/test/java/nl/esciencecenter/restape/CwlParserTest.java new file mode 100644 index 0000000..e1e72d6 --- /dev/null +++ b/src/test/java/nl/esciencecenter/restape/CwlParserTest.java @@ -0,0 +1,133 @@ +package nl.esciencecenter.restape; + +import nl.esciencecenter.controller.dto.GraphNode; +import nl.esciencecenter.controller.dto.ParseResponse; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.function.UnaryOperator; + +import static org.junit.jupiter.api.Assertions.*; + +@SpringBootTest +class CwlParserTest { + + private static final UnaryOperator IDENTITY = uri -> uri; + + private InputStream fixture(String name) { + return getClass().getClassLoader().getResourceAsStream(name); + } + + private InputStream cwl(String content) { + return new ByteArrayInputStream(content.getBytes(StandardCharsets.UTF_8)); + } + + // ── Parsing ────────────────────────────────────────────────────────────── + + @Test + void testParseCorrectNodeCount() throws Exception { + ParseResponse result = CwlParser.parse(fixture("test_workflow.cwl"), IDENTITY); + // 1 input node + 3 tool nodes + 1 output node + assertEquals(5, result.getNodes().size()); + } + + @Test + void testParseToolLabelsNoSuffix() throws Exception { + ParseResponse result = CwlParser.parse(fixture("test_workflow.cwl"), IDENTITY); + long toolCount = result.getNodes().stream() + .filter(n -> n.getType() == GraphNode.NodeType.tool) + .count(); + assertEquals(3, toolCount); + result.getNodes().stream() + .filter(n -> n.getType() == GraphNode.NodeType.tool) + .forEach(n -> assertFalse(n.getLabel().matches(".*_\\d+$"), + "Tool label should not contain APE suffix: " + n.getLabel())); + } + + @Test + void testParseCorrectEdgeCount() throws Exception { + ParseResponse result = CwlParser.parse(fixture("test_workflow.cwl"), IDENTITY); + // input→A, A→B, B→C, C→output = 4 edges + assertEquals(4, result.getEdges().size()); + } + + @Test + void testParseDataflowOrder() throws Exception { + ParseResponse result = CwlParser.parse(fixture("test_workflow.cwl"), IDENTITY); + assertTrue(result.getEdges().stream() + .anyMatch(e -> "ToolA_01".equals(e.getSource()) && "ToolB_01".equals(e.getTarget()))); + assertTrue(result.getEdges().stream() + .anyMatch(e -> "ToolB_01".equals(e.getSource()) && "ToolC_01".equals(e.getTarget()))); + } + + @Test + void testParseInputOutputTuples() throws Exception { + ParseResponse result = CwlParser.parse(fixture("test_workflow.cwl"), IDENTITY); + assertEquals(1, result.getInputs().size()); + assertEquals(1, result.getOutputs().size()); + assertEquals("http://edamontology.org/format_3728", result.getInputs().get(0).id); + assertEquals("http://edamontology.org/format_3244", result.getOutputs().get(0).id); + } + + // ── Robustheit ─────────────────────────────────────────────────────────── + + @Test + void testParseWrongClassFail() { + String doc = "class: CommandLineTool\ncwlVersion: v1.2\n"; + assertThrows(IllegalArgumentException.class, + () -> CwlParser.parse(cwl(doc), IDENTITY)); + } + + @Test + void testParseWrongVersionFail() { + String doc = "class: Workflow\ncwlVersion: v1.0\nsteps:\n ToolA: {}\n"; + assertThrows(IllegalArgumentException.class, + () -> CwlParser.parse(cwl(doc), IDENTITY)); + } + + @Test + void testParseEmptyStepsFail() { + String doc = "class: Workflow\ncwlVersion: v1.2\nsteps: {}\n"; + assertThrows(IllegalArgumentException.class, + () -> CwlParser.parse(cwl(doc), IDENTITY)); + } + + @Test + void testParseMissingEdamAnnotations() throws Exception { + String doc = """ + class: Workflow + cwlVersion: v1.2 + inputs: + input_1: + type: File + outputs: + output_1: + type: File + outputSource: ToolA_01/output_1 + steps: + ToolA_01: + run: ToolA.cwl + in: + input_1: input_1 + out: [output_1] + """; + ParseResponse result = CwlParser.parse(cwl(doc), IDENTITY); + assertEquals(1, result.getNodes().stream().filter(n -> n.getType() == GraphNode.NodeType.tool).count()); + assertTrue(result.getInputs().isEmpty(), "No EDAM tuples without format annotations"); + } + + @Test + void testParseEmptyFileFail() { + assertThrows(IllegalArgumentException.class, + () -> CwlParser.parse(cwl(""), IDENTITY)); + } + + @Test + void testParseInvalidYamlFail() { + assertThrows(IllegalArgumentException.class, + () -> CwlParser.parse(cwl("{ not: valid: yaml: [}"), IDENTITY)); + } +} diff --git a/src/test/java/nl/esciencecenter/restape/EdamLabelsTest.java b/src/test/java/nl/esciencecenter/restape/EdamLabelsTest.java new file mode 100644 index 0000000..6178d57 --- /dev/null +++ b/src/test/java/nl/esciencecenter/restape/EdamLabelsTest.java @@ -0,0 +1,94 @@ +package nl.esciencecenter.restape; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.Field; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.*; + +/** + * Verifikation der O(1)-URI-Auflösung nach Initialisierung. + * + * Das Laden von edam_labels.json wird per Reflection umgangen, um die Tests + * von Classpath-Ressourcen unabhängig zu halten. Getestet wird die + * Map-Lookup-Logik und der shortForm-Fallback. + */ +@SpringBootTest +class EdamLabelsTest { + + private EdamLabels edamLabels; + + @BeforeEach + void setUp() throws Exception { + edamLabels = new EdamLabels(); + injectLabels(Map.of( + "http://edamontology.org/format_3728", "LocARNA PP", + "http://edamontology.org/format_3244", "mzXML" + )); + } + + /** Injects a pre-built map to bypass JSON file loading. */ + private void injectLabels(Map map) throws Exception { + Field field = EdamLabels.class.getDeclaredField("labels"); + field.setAccessible(true); + field.set(edamLabels, map); + } + + @Test + void testResolveKnownUri() { + assertEquals("LocARNA PP", edamLabels.resolve("http://edamontology.org/format_3728")); + } + + @Test + void testResolveSecondKnownUri() { + assertEquals("mzXML", edamLabels.resolve("http://edamontology.org/format_3244")); + } + + @Test + void testResolveUnknownUriFallback() { + assertEquals("format_9999", edamLabels.resolve("http://edamontology.org/format_9999")); + } + + @Test + void testResolveNullReturnsEmpty() { + assertEquals("", edamLabels.resolve(null)); + } + + @Test + void testResolveBlankReturnsEmpty() { + assertEquals("", edamLabels.resolve(" ")); + } + + @Test + void testResolveLookupIsO1() { + // After initialization the backing structure is a HashMap — verify by + // measuring that 1 000 consecutive lookups complete well under 50 ms. + long start = System.nanoTime(); + for (int i = 0; i < 1_000; i++) { + edamLabels.resolve("http://edamontology.org/format_3728"); + } + long elapsedMs = (System.nanoTime() - start) / 1_000_000; + assertTrue(elapsedMs < 50, + "1 000 lookups should complete in <50 ms for O(1) map, took: " + elapsedMs + " ms"); + } + + @Test + void testShortFormHashFragment() { + assertEquals("label", EdamLabels.shortForm("http://example.org#label")); + } + + @Test + void testShortFormSlashPath() { + assertEquals("format_3728", EdamLabels.shortForm("http://edamontology.org/format_3728")); + } + + @Test + void testResolveBeforeLoadFallback() throws Exception { + EdamLabels uninitialised = new EdamLabels(); + // labels field is null → should return short form, not throw + assertEquals("format_3728", uninitialised.resolve("http://edamontology.org/format_3728")); + } +} diff --git a/src/test/resources/test_workflow.cwl b/src/test/resources/test_workflow.cwl new file mode 100644 index 0000000..a8547da --- /dev/null +++ b/src/test/resources/test_workflow.cwl @@ -0,0 +1,27 @@ +class: Workflow +cwlVersion: v1.2 +inputs: + input_1: + type: File + format: http://edamontology.org/format_3728 +outputs: + output_1: + type: File + format: http://edamontology.org/format_3244 + outputSource: ToolC_01/output_1 +steps: + ToolA_01: + run: ToolA.cwl + in: + input_1: input_1 + out: [output_1] + ToolB_01: + run: ToolB.cwl + in: + input_1: ToolA_01/output_1 + out: [output_1] + ToolC_01: + run: ToolC.cwl + in: + input_1: ToolB_01/output_1 + out: [output_1]