StandardReference

class StandardReference(*, prefix: Prefix, identifier: str)[source]

Bases: Reference

An extension to curies.Reference that automatically validates prefix and identifier.

>>> StandardReference(prefix="GO", identifier="0032571")
StandardReference(prefix='GO', identifier='0032571')

Standardizes capitalization to preferred prefix:

>>> StandardReference(prefix="go", identifier="0032571")
StandardReference(prefix='GO', identifier='0032571')

Standardizes prefix synonyms to lowercase:

>>> StandardReference(prefix="GOBP", identifier="0032571")
StandardReference(prefix='GO', identifier='0032571')

If you’re deriving a model, then pass a string, this can still work

>>> from pydantic import BaseModel
>>> class Derived(BaseModel):
...     reference: StandardReference
>>> Derived(reference="go:0032571")
Derived(reference=StandardReference(prefix='GO', identifier='0032571'))

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Attributes Summary

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Summary

validate_identifier(values)

Validate the identifier.

Attributes Documentation

model_config = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Documentation

classmethod validate_identifier(values: dict[str, str] | str | Reference) dict[str, str][source]

Validate the identifier.