agentsclimarketplace

Identifier format parsing and validation

Skill HolobiomicsLab/asb-skill-collections/packs/metabolomics/lc-ms/skills/identifier-format-parsing-and-validation

Curated, evidence-grounded skill and software-tool collections for scientific AI agents, generated by the AgenticScienceBuilder

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill identifier-format-parsing-and-validation

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 14 stars14 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when you receive mass spectrometry data through heterogeneous identifier formats—specifically when the input could be a GNPS Task ID, a Universal Spectrum Identifier (USI), or a Feature-Based Molecular Networking (FBMN) identifier—and you need to programmatically determine which format was.

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.3 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

identifier-format-parsing-and-validation

Summary

Parse and validate mass spectrometry data input identifiers (Task ID, USI, or FBMN format) to determine their type and route them to the appropriate data loader. This skill enables a web application to accept multiple input pathways for molecular networking data ingestion.

When to use

Apply this skill when you receive mass spectrometry data through heterogeneous identifier formats—specifically when the input could be a GNPS Task ID, a Universal Spectrum Identifier (USI), or a Feature-Based Molecular Networking (FBMN) identifier—and you need to programmatically determine which format was provided and dispatch it to the correct loader without manual intervention.

When NOT to use

  • Input is already pre-classified with its format type and requires no re-validation
  • Input data are already deserialized into a standardized dataset object (parsing is redundant)
  • Input follows a proprietary or non-standard identifier format not covered by Task ID, USI, or FBMN specifications

Inputs

  • mass spectrometry data input identifier string (raw user input)
  • identifier format specification or schema (Task ID pattern, USI pattern, FBMN pattern)

Outputs

  • classified identifier type (one of: 'Task ID', 'USI', 'FBMN')
  • validated identifier object with format-specific metadata
  • loader routing instruction (e.g., invoke Task ID loader, USI loader, or FBMN loader)

How to apply

Implement a classification workflow that examines the structure and format of the input identifier string. First, attempt to match against known patterns: Task IDs typically follow alphanumeric task naming; USI identifiers follow the format mzspec:GNPS2:TASK-<task-id>-nf_output/clustering/specs_ms.mgf:scan:<scan-number>; FBMN identifiers are FBMN Task IDs with component numbers. Once format is identified, validate structural correctness (character counts, special characters, required fields). Then route the validated identifier to its respective loader: Task ID loader retrieves and processes molecular networking results; USI loader fetches individual spectra from the USI registry; FBMN loader processes feature-based networking clusters. Return the identifier type classification and validated identifier object for downstream processing.

Related tools

  • GNPS (Global Natural Products Social Molecular Networking) (source registry and workflow engine providing Task ID and FBMN identifiers for molecular networking results)
  • USI (Universal Spectrum Identifier) Registry (standardized identifier format and lookup service for individual mass spectra across distributed repositories)
  • usi.py (USI processing utilities) (Python module for parsing, validating, and resolving USI format identifiers to retrieve spectrum data) — github.com/Wang-Bioinformatics-Lab/NetworkFamily_MultipleAlignment_Website
  • Flask (web framework for receiving and routing parsed identifier formats to appropriate backend loaders)

Evaluation signals

  • Identifier classification matches expected format (e.g., USI string contains 'mzspec:GNPS2:TASK-' prefix and 'scan:' field)
  • Parsed identifier passes structural validation (required fields present, character types match pattern, no truncation or corruption)
  • Identifier is successfully routed to correct loader and produces non-null dataset retrieval response
  • Multiple input formats in a batch are classified with 100% accuracy against ground-truth labels
  • Routed dataset object contains standardized mass spectrometry fields (e.g., m/z values, intensities, scan metadata)

Limitations

  • Ambiguous or malformed identifiers that partially match multiple format patterns may require interactive user confirmation rather than automatic classification
  • USI resolution depends on registry availability and network connectivity; offline or degraded registry service will cause USI validation to fail
  • Task ID and FBMN loaders depend on GNPS web service availability; network failures or deprecated task IDs will prevent data retrieval
  • No changelog or version history documented in the application, making it unclear whether identifier format specifications have evolved over time

Evidence

  • [intro] The application accepts mass spectrometry data through various formats including Task ID, USI, or FBMN, enabling multiple input pathways for data ingestion.: "users to input mass spectrometry data through various formats (Task ID, USI, or FBMN)"
  • [other] Workflow demonstrates parsing and classification as the first steps before routing to loaders.: "Parse and validate the identifier format to determine input type. 3. Route to the appropriate loader: Task ID loader, USI loader, or FBMN loader based on identifier classification."
  • [readme] USI identifiers follow a structured format specification.: "Each USI should follow the format: mzspec:GNPS2:TASK-<task-id>-nf_output/clustering/specs_ms.mgf:scan:<scan-number>"
  • [readme] The usi.py module is explicitly used for USI processing.: "usi.py # USI processing utilities"

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 327,167. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.