Class: class_definition

the definition of a class or interface

URI: linkml:ClassDefinition

img

Parents

Referenced by Class

Attributes

Own

  • slots 0..*
    • Description: list of slot names that are applicable to a class
    • Range: SlotDefinition
  • slot_usage 0..*
    • Description: the redefinition of a slot in the context of the containing class definition.
    • Range: SlotDefinition
  • attributes 0..*
  • class_uri 0..1
    • Description: URI of the class in an RDF environment
    • Range: Uriorcurie
  • subclass_of 0..1
    • Description: rdfs:subClassOf to be emitted in OWL generation
    • Range: Uriorcurie
  • union_of 0..*
    • Description: indicates that the domain class consists exactly of the members of the classes in the range
    • Range: ClassDefinition
  • defining_slots 0..*
    • Description: The combination of is a plus defining slots form a genus-differentia definition, or the set of necessary and sufficient conditions that can be transformed into an OWL equivalence axiom
    • Range: SlotDefinition
  • tree_root 0..1
    • Description: indicator that this is the root class in tree structures
    • Range: Boolean
  • unique_keys 0..*
    • Description: Set of unique keys for this slot
    • Range: UniqueKey
  • class_definition➞is_a 0..1
    • Description: specifies single-inheritance between classes or slots. While multiple inheritance is not allowed, mixins can be provided effectively providing the same thing. The semantics are the same when translated to formalisms that allow MI (e.g. RDFS/OWL). When translating to a SI framework (e.g. java classes, python classes) then is a is used. When translating a framework without polymorphism (e.g. json-schema, solr document schema) then is a and mixins are recursively unfolded
    • Range: ClassDefinition
  • class_definition➞mixins 0..*
    • Description: List of definitions to be mixed in. Targets may be any definition of the same type
    • Range: ClassDefinition
  • class_definition➞apply_to 0..*
    • Description: Used to extend class or slot definitions. For example, if we have a core schema where a gene has two slots for identifier and symbol, and we have a specialized schema for my_organism where we wish to add a slot systematic_name, we can avoid subclassing by defining a class gene_my_organism, adding the slot to this class, and then adding an apply_to pointing to the gene class. The new slot will be 'injected into' the gene class.
    • Range: ClassDefinition

Inherited from definition:

  • name 1..1
    • Description: the unique name of the element within the context of the schema. Name is combined with the default prefix to form the globally unique subject of the target class.
    • Range: String
    • in subsets: (owl)
  • title 0..1
    • Description: the official title of the element
    • Range: String
    • in subsets: (owl)
  • id_prefixes 0..*
    • Description: the identifier of this class or slot must begin with the URIs referenced by this prefix
    • Range: Ncname
  • definition_uri 0..1
    • Description: the "native" URI of the element
    • Range: Uriorcurie
  • aliases 0..*
  • local_names 0..*
  • conforms_to 0..1
    • Description: An established standard to which the element conforms.
    • Range: String
  • mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have comparable meaning. These may include terms that are precisely equivalent, broader or narrower in meaning, or otherwise semantically related but not equivalent from a strict ontological perspective.
    • Range: Uriorcurie
  • exact mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have identical meaning.
    • Range: Uriorcurie
  • close mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have close meaning.
    • Range: Uriorcurie
  • related mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have related meaning.
    • Range: Uriorcurie
  • narrow mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have narrower meaning.
    • Range: Uriorcurie
  • broad mappings 0..*
    • Description: A list of terms from different schemas or terminology systems that have broader meaning.
    • Range: Uriorcurie
  • abstract 0..1
    • Description: an abstract class is a high level class or slot that is typically used to group common slots together and cannot be directly instantiated.
    • Range: Boolean
  • mixin 0..1
    • Description: this slot or class can only be used as a mixin.
    • Range: Boolean
  • values_from 0..*
    • Description: the identifier of a "value set" -- a set of identifiers that form the possible values for the range of a slot
    • Range: Uriorcurie
  • created_by 0..1
    • Description: agent that created the element
    • Range: Uriorcurie
  • created_on 0..1
    • Description: time at which the element was created
    • Range: Datetime
  • last_updated_on 0..1
    • Description: time at which the element was last updated
    • Range: Datetime
  • modified_by 0..1
    • Description: agent that modified the element
    • Range: Uriorcurie
  • status 0..1
    • Description: status of the element
    • Range: Uriorcurie
    • Example: bibo:draft None
  • string_serialization 0..1
    • Description: Used on a slot that stores the string serialization of the containing object. The syntax follows python formatted strings, with slot names enclosed in {}s. These are expanded using the values of those slots. We call the slot with the serialization the s-slot, the slots used in the {}s are v-slots. If both s-slots and v-slots are populated on an object then the value of the s-slot should correspond to the expansion. Implementations of frameworks may choose to use this property to either (a) PARSE: implement automated normalizations by parsing denormalized strings into complex objects (b) GENERARE: implement automated to_string labeling of complex objects For example, a Measurement class may have 3 fields: unit, value, and string_value. The string_value slot may have a string_serialization of {value}{unit} such that if unit=cm and value=2, the value of string_value shouldd be 2cm
    • Range: String

Other properties

Aliases: table
record
template
message
observation
Close Mappings: owl:Class