SEO.JSONLD.Gene (SEO v0.3.0-rc.0)

View Source

A discrete unit of inheritance which affects one or more biological traits (Source: https://en.wikipedia.org/wiki/Gene). Examples include FOXP2 (Forkhead box protein P2), SCARNA21 (small Cajal body-specific RNA 21), A- (agouti genotype).

Helper for building a Schema.org Gene JSON-LD structure.

Summary

Types

t()

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "Gene", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

Build a Gene JSON-LD map.

Types

attrs()

@type attrs() ::
  %{
    optional(:alternative_of) => t() | map(),
    optional(:encodes_bio_chem_entity) => SEO.JSONLD.BioChemEntity.t() | map(),
    optional(:expressed_in) =>
      SEO.JSONLD.AnatomicalSystem.t()
      | map()
      | SEO.JSONLD.DefinedTerm.t()
      | SEO.JSONLD.BioChemEntity.t()
      | SEO.JSONLD.AnatomicalStructure.t(),
    optional(:has_bio_polymer_sequence) => String.t(),
    optional(:associated_disease) =>
      SEO.JSONLD.PropertyValue.t()
      | map()
      | SEO.JSONLD.MedicalCondition.t()
      | URI.t()
      | String.t(),
    optional(:bio_chem_interaction) => SEO.JSONLD.BioChemEntity.t() | map(),
    optional(:bio_chem_similarity) => SEO.JSONLD.BioChemEntity.t() | map(),
    optional(:biological_role) => SEO.JSONLD.DefinedTerm.t() | map(),
    optional(:funding) => SEO.JSONLD.Grant.t() | map(),
    optional(:has_bio_chem_entity_part) => SEO.JSONLD.BioChemEntity.t() | map(),
    optional(:has_molecular_function) =>
      SEO.JSONLD.PropertyValue.t()
      | map()
      | SEO.JSONLD.DefinedTerm.t()
      | URI.t()
      | String.t(),
    optional(:has_representation) =>
      String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
    optional(:is_encoded_by_bio_chem_entity) => t() | map(),
    optional(:is_involved_in_biological_process) =>
      SEO.JSONLD.PropertyValue.t()
      | map()
      | SEO.JSONLD.DefinedTerm.t()
      | URI.t()
      | String.t(),
    optional(:is_located_in_subcellular_location) =>
      SEO.JSONLD.DefinedTerm.t()
      | map()
      | URI.t()
      | String.t()
      | SEO.JSONLD.PropertyValue.t(),
    optional(:is_part_of_bio_chem_entity) =>
      SEO.JSONLD.BioChemEntity.t() | map(),
    optional(:taxonomic_range) =>
      SEO.JSONLD.DefinedTerm.t()
      | map()
      | String.t()
      | URI.t()
      | SEO.JSONLD.Taxon.t(),
    optional(:additional_type) => String.t() | URI.t(),
    optional(:alternate_name) => String.t(),
    optional(:description) => SEO.JSONLD.TextObject.t() | map() | String.t(),
    optional(:disambiguating_description) => String.t(),
    optional(:identifier) =>
      String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
    optional(:image) =>
      URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
    optional(:main_entity_of_page) =>
      SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
    optional(:name) => String.t(),
    optional(:owner) =>
      SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
    optional(:potential_action) => SEO.JSONLD.Action.t() | map(),
    optional(:same_as) => URI.t() | String.t(),
    optional(:subject_of) =>
      SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
    optional(:url) => URI.t() | String.t()
  }
  | [
      alternative_of: t() | map(),
      encodes_bio_chem_entity: SEO.JSONLD.BioChemEntity.t() | map(),
      expressed_in:
        SEO.JSONLD.AnatomicalSystem.t()
        | map()
        | SEO.JSONLD.DefinedTerm.t()
        | SEO.JSONLD.BioChemEntity.t()
        | SEO.JSONLD.AnatomicalStructure.t(),
      has_bio_polymer_sequence: String.t(),
      associated_disease:
        SEO.JSONLD.PropertyValue.t()
        | map()
        | SEO.JSONLD.MedicalCondition.t()
        | URI.t()
        | String.t(),
      bio_chem_interaction: SEO.JSONLD.BioChemEntity.t() | map(),
      bio_chem_similarity: SEO.JSONLD.BioChemEntity.t() | map(),
      biological_role: SEO.JSONLD.DefinedTerm.t() | map(),
      funding: SEO.JSONLD.Grant.t() | map(),
      has_bio_chem_entity_part: SEO.JSONLD.BioChemEntity.t() | map(),
      has_molecular_function:
        SEO.JSONLD.PropertyValue.t()
        | map()
        | SEO.JSONLD.DefinedTerm.t()
        | URI.t()
        | String.t(),
      has_representation:
        String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
      is_encoded_by_bio_chem_entity: t() | map(),
      is_involved_in_biological_process:
        SEO.JSONLD.PropertyValue.t()
        | map()
        | SEO.JSONLD.DefinedTerm.t()
        | URI.t()
        | String.t(),
      is_located_in_subcellular_location:
        SEO.JSONLD.DefinedTerm.t()
        | map()
        | URI.t()
        | String.t()
        | SEO.JSONLD.PropertyValue.t(),
      is_part_of_bio_chem_entity: SEO.JSONLD.BioChemEntity.t() | map(),
      taxonomic_range:
        SEO.JSONLD.DefinedTerm.t()
        | map()
        | String.t()
        | URI.t()
        | SEO.JSONLD.Taxon.t(),
      additional_type: String.t() | URI.t(),
      alternate_name: String.t(),
      description: SEO.JSONLD.TextObject.t() | map() | String.t(),
      disambiguating_description: String.t(),
      identifier: String.t() | URI.t() | SEO.JSONLD.PropertyValue.t() | map(),
      image: URI.t() | String.t() | SEO.JSONLD.ImageObject.t() | map(),
      main_entity_of_page:
        SEO.JSONLD.CreativeWork.t() | map() | URI.t() | String.t(),
      name: String.t(),
      owner: SEO.JSONLD.Organization.t() | map() | SEO.JSONLD.Person.t(),
      potential_action: SEO.JSONLD.Action.t() | map(),
      same_as: URI.t() | String.t(),
      subject_of: SEO.JSONLD.Event.t() | map() | SEO.JSONLD.CreativeWork.t(),
      url: URI.t() | String.t()
    ]

t()

@type t() :: %{required(String.t()) => term()}

A JSON-LD map ready to be nested or rendered. String-keyed, always includes "@type" set to "Gene", plus any camelCased field keys the caller provided (see build/1). "@context" is added at render time by SEO.JSONLD.meta/1 on the top-level node only.

Functions

build(attrs)

@spec build(attrs()) :: t()

Build a Gene JSON-LD map.

Fields

  • :alternative_of - Another gene which is a variation of this one.
  • :encodes_bio_chem_entity - Another BioChemEntity encoded by this one.
  • :expressed_in - Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system.
  • :has_bio_polymer_sequence - A symbolic representation of a BioChemEntity. For example, a nucleotide sequence of a Gene or an amino acid sequence of a Protein.

Inherited properties

Additional properties are available through the inheritance chain. See each ancestor's docs for its properties: