id: https://w3id.org/linkml/tests/core
name: core
description: |-
  core schema imported by kitchen_sink    
default_curi_maps:
  - semweb_context
imports:
 - linkml:types
prefixes:
  pav: http://purl.org/pav/
  dce: http://purl.org/dc/elements/1.1/
  linkml: https://w3id.org/linkml/
  biolink: https://w3id.org/biolink/
  core: https://w3id.org/linkml/tests/core/
  prov: http://www.w3.org/ns/prov#
default_prefix: core
license: https://creativecommons.org/publicdomain/zero/1.0/

types:
  phone number type:
    pattern: ^[\\+\\d+ +][\\d\\- ]+$
    base: str
    uri: xsd:string
  age in years type:
    base: int
    uri: xsd:integer
# TODO: update on model update
#    minimum_value: 0
#    maximum_value: 999



classes:

  activity:
    description: "a provence-generating activity"
    slots:
      - id
      - started at time
      - ended at time
      - was informed by
      - was associated with
      - used
      - description
    mappings:
      - prov:Activity
      
  agent:
    description: "a provence-generating agent"
    slots:
      - id
      - acted on behalf of
      - was informed by
    class_uri: prov:Agent
      
slots:

  id:
    identifier: true

  name:
    required: false

  description:
  
  started at time:
    slot_uri: prov:startedAtTime
    range: date

  ended at time:
    slot_uri: prov:endedAtTime
    range: date

  was informed by:
    range: activity
    slot_uri: prov:wasInformedBy

  was associated with:
    range: agent
    slot_uri: prov:wasAssociatedWith
    inlined: false

  acted on behalf of:
    range: agent
    slot_uri: prov:actedOnBehalfOf

  was generated by:
    range: activity
    slot_uri: prov:wasGeneratedBy

  used:
    domain: activity
    slot_uri: prov:used

  activity set:
    range: activity
    multivalued: true
    inlined_as_list: true

  agent set:
    range: agent
    multivalued: true
    inlined_as_list: true
