caais.models - Models Defining the CAAIS Standard
Models describing the Canadian Archival Accession Information Standard v1.0:
https://archivescanada.ca/wp-content/uploads/2022/12/CAAIS_2019May15_EN.pdf
Note that there are seven sections of CAAIS that organize the fields by related information. These sections are:
Identity Information Section
Source Information Section
Materials Information Section
Management Information Section
Event Information Section
General Information Section
Control Information Section
The models here are not in the exact order as in the CAAIS document, but each field in the standard is defined in a model.
- class caais.models.AbstractTerm(*args, **kwargs)
An abstract class that can be used to define any term that consists of a name and a description.
- name
The name of the term. Terms must have unique names
- Type:
CharField
- description
A description for the term
- Type:
TextField
- class caais.models.AcquisitionMethod(*args, **kwargs)
Acquisition Method [CAAIS, Section 1.5]
Definition: The process by which a repository acquires material.
Inherits
AbstractTerm- name
The name of the acquisition method
- Type:
CharField
- description
A description of the acquisition method
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Status(*args, **kwargs)
Status [CAAIS, Section 1.7]
Definition: The current position of the material with respect to the repository’s workflows and business processes.
Inherits
AbstractTerm- name
The name of the status
- Type:
CharField
- description
A description for the status term
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Metadata(*args, **kwargs)
Top-level container for all CAAIS metadata. Contains all simple non-repeatable fields. Any repeatable field is represented by a separate model with a ForeignKey.
For repeatable fields associated with this model, see:
Identifier[CAAIS, Section 1.2]Access via related with
self.identifiers
ArchivalUnit[CAAIS, Section 1.4]Access via related with
self.archival_units
DispositionAuthority[CAAIS, Section 1.6]Access via related with
self.disposition_authorities
SourceOfMaterial[CAAIS, Section 2.1]Access via related with
self.source_of_materials
PreliminaryCustodialHistory[CAAIS, Section 2.2]Accessible via related with
self.preliminary_custodial_histories
ExtentStatement[CAAIS, Section 3.2]Accessible via related with
self.extent_statements
PreliminaryScopeAndContent[CAAIS, Section 3.3]Accessible via related with
self.preliminary_scope_and_contents
LanguageOfMaterials[CAAIS, Section 3.4]Accessible via related with
self.language_of_materials
StorageLocation[CAAIS, Section 4.1]Accessible via related with
self.storage_locations
Rights[CAAIS, Section 4.2]Accessible via related with
self.rights
PreservationRequirements[CAAIS, Section 4.3]Accessible via related with
self.preservation_requirements
Appraisal[CAAIS, Section 4.4]Accessible via related with
self.appraisals
AssociatedDocumentation[CAAIS, Section 4.5]Accessible via related with
self.associated_documentation
Events[CAAIS, Section 5.1]Accessible via related with
self.events
GeneralNote[CAAIS, Section 6.1]Accessible via related with
self.general_notes
DateOfCreationOrRevision[CAAIS, Section 7.2]Accessible via related with
self.dates_of_creation_or_revision
- repository
Repository [CAAIS, Section 1.1]. Definition: The name of the institution that accepts legal responsibility for the accessioned material.
- Type:
CharField
- accession_title
Accession Title [CAAIS, Section 1.3]. Definition: The name assigned to the material.
- Type:
CharField
- acquisition_method
See
AcquisitionMethod[CAAIS, Section 1.5]- Type:
ForeignKey
- date_of_materials
Date of Materials [CAAIS, Section 3.1]. Definition: A date or date range indicating when the materials were known or thought to have been created.
- Type:
CharField
- rules_or_conventions
Rules or Conventions [CAAIS, Section 7.1]. Definition: The rules, conventions or templates that were used in creating or maintaining the accession record.
- Type:
CharField
- language_of_accession_record
Language of Accession Record [CAAIS, Section 7.2]. Definition: The language(s) and script(s) used to record information in the accession record.
- Type:
CharField
- create_flat_representation(version=ExportVersion.CAAIS_1_0) dict
Convert this model and all related models into a flat dictionary suitable to be written to a CSV or used as the metadata fields for a BagIt bag.
Note that some CAAIS fields do not map well to AtoM fields, so some information is dropped when using an AtoM export version. For maximum compatibility, convert using the CAAIS export version when possible.
- Parameters:
version (ExportVersion) – The flat representation type to export. Can be a CAAIS version or an AtoM version.
- Returns:
A dictionary containing all fields in this model as well as all related models (where possible).
- Return type:
(dict)
- update_accession_id(accession_id: str, commit: bool = True)
Update the accession identifier value, if an accession identifier exists.
- Parameters:
accession_id (str) – The new accession identifier
commit (bool) – Saves this model if a change is made if True
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Identifier(*args, **kwargs)
Identifiers [CAAIS, Section 1.2]
Definition: Alphabetic, numeric, or alpha-numeric codes assigned to accessioned material, parts of the material, or accruals for purposes of unique for purposes of identification.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.identifiers- Type:
ForeignKey
- identifier_type
Identifier Type [CAAIS, Section 1.2.1]. Definition: A term or phrase that characterizes the nature of the identifier
- Type:
CharField
- identifier_value
Identifier Value [CAAIS, Section 1.2.2]. Definition: A code that is assigned to the material to support identification in the course of processes and activities such as acquisition, transfer, ingest, and conservation.
- Type:
CharField
- identifier_note
Identifier Note [CAAIS, Section 1.2.3]. Definition: Additional information about the identifier, including contextual information on the purpose of the identifier.
- Type:
CharField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.ArchivalUnit(*args, **kwargs)
Archival Unit [CAAIS, Section 1.4]
Definition: The archival unit or the aggregate to which the accessioned material belongs.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.archival_units- Type:
ForeignKey
- archival_unit
The text content of CAAIS, Section 1.4.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.DispositionAuthority(*args, **kwargs)
Disposition Authority [CAAIS, Section 1.6]
Definition: A reference to policies, directives, and agreements that prescribe and allow for the transfer of material to a repository.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.disposition_authorities- Type:
ForeignKey
- disposition_authority
The text content of CAAIS, Section 1.6.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.SourceType(*args, **kwargs)
Source Type [CAAIS, Section 2.1.1]
Definition: A term describing the nature of the source.
Inherits
AbstractTerm- name
The name of the source type
- Type:
CharField
- description
A description of the source type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.SourceRole(*args, **kwargs)
Source Role [CAAIS, Section 2.1.4]
Definition: The relationship of the named source to the material.
Inherits
AbstractTerm- name
The name of the source role
- Type:
CharField
- description
A description of the source role
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.SourceConfidentiality(*args, **kwargs)
Source Confidentiality [CAAIS, Section 2.1.6]
Definition: An instruction to maintain information about the source in confidence.
Inherits
AbstractTerm- name
The name of the source confidentiality
- Type:
CharField
- description
A description of the source confidentiality
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.SourceOfMaterial(*args, **kwargs)
Source of Material [CAAIS, Section 2.1]
Definition: A corporate body, person or family responsible for the creation, use or transfer of the accessioned material.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.source_of_materials- Type:
ForeignKey
- source_type
See
SourceType[CAAIS, Section 2.1.1]- Type:
ForeignKey
- source_name
Source Name [CAAIS, Section 2.1.2]. Definition: The proper name of the source of the material.
- Type:
CharField
- contact_name
An extension of Source Contact Information [CAAIS, Section 2.1.3] The name of the contact person
- Type:
CharField
- job_title
An extension of Source Contact Information [CAAIS, Section 2.1.3] The job title of the contact person
- Type:
CharField
- organization
An extension of Source Contact Information [CAAIS, Section 2.1.3] The organization the source is a member of, or the organization the source is
- Type:
CharField
- phone_number
An extension of Source Contact Information [CAAIS, Section 2.1.3] The phone number the source can be contacted with
- Type:
CharField
- email_address
An extension of Source Contact Information [CAAIS, Section 2.1.3] The email address the source can be contacted with
- Type:
CharField
- address_line_1
An extension of Source Contact Information [CAAIS, Section 2.1.3] The first line of the address where the source resides or operates in
- Type:
CharField
- address_line_2
An extension of Source Contact Information [CAAIS, Section 2.1.3] The second line of the address where the source resides or operates in
- Type:
CharField
- city
An extension of Source Contact Information [CAAIS, Section 2.1.3] The city the source resides or operates in
- Type:
CharField
- region
An extension of Source Contact Information [CAAIS, Section 2.1.3] The region the source resides or operates in, i.e., the province or state
- Type:
CharField
- postal_or_zip_code
An extension of Source Contact Information [CAAIS, Section 2.1.3] The source’s postal or zip code
- Type:
CharField
- country
An extension of Source Contact Information [CAAIS, Section 2.1.3] The country the source resides or operates in
- Type:
CountryField
- source_role
See
SourceRole[CAAIS, Section 2.1.4]- Type:
ForeignKey
- source_note
Source Note [CAAIS, Section 2.1.5]. Definition: An open element to capture any additional information about the source, or circumstances surrounding their role.
- Type:
TextField
- source_confidentiality
See
SourceConfidentiality[CAAIS, Section 2.1.6]- Type:
ForeignKey
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.PreliminaryCustodialHistory(*args, **kwargs)
Preliminary Custodial History [CAAIS, Section 2.2]
Definition: Information about the chain of agents, in addition to the creator(s), that have exercised custody or control over the material at all stages in its existence.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.preliminary_custodial_histories- Type:
ForeignKey
- preliminary_custodial_history
The text content of CAAIS, Section 2.2.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.ExtentType(*args, **kwargs)
Extent Type [CAAIS, Section 3.2.1]
Definition: A term that characterizes the nature of each extent statement.
Inherits
AbstractTerm- name
The name of the extent type
- Type:
CharField
- description
A description of the extent type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.ContentType(*args, **kwargs)
Content Type [CAAIS, Section 3.2.3]
Definition: The type of material contained in the units measured, considered as a form of communication or documentary genre.
Inherits
AbstractTerm- name
The name of the content type
- Type:
CharField
- description
A description of the content type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.CarrierType(*args, **kwargs)
Carrier Type [CAAIS, Section 3.2.4]
Definition: The physical format of an object that supports or carries archival materials.
Inherits
AbstractTerm- name
The name of the carrier type
- Type:
CharField
- description
A description of the carrier type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.ExtentStatement(*args, **kwargs)
Extent Statement [CAAIS, Section 3.2]
Definition: The physical or logical quantity and type of material.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.preliminary_custodial_histories- Type:
ForeignKey
- extent_type
See
ExtentType[CAAIS, Section 3.2.1]- Type:
ForeignKey
- quantity_and_unit_of_measure
Quantity and Unit of Measure [CAAIS, Section 3.2.2]. Definition: The number and unit of measure expressing the quantity of the extent.
- Type:
TextField
- content_type
See
ContentType[CAAIS, Section 3.2.3]- Type:
ForeignKey
- carrier_type
See
CarrierType[CAAIS, Section 3.2.4]- Type:
ForeignKey
- extent_note
Extent Note [CAAIS, Section 3.2.5]. Definition: Additional information related to the number and type of units received, retained, or removed not otherwise recorded.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.PreliminaryScopeAndContent(*args, **kwargs)
Preliminary Scope and Content [CAAIS, Section 3.3]
Definition: A preliminary description of the functions and activities that generated the accessioned material as well as information about its arrangement (organizational structure or relationships) and documentary forms.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.preliminary_scope_and_contents- Type:
ForeignKey
- preliminary_scope_and_content
The text content of CAAIS, Section 3.3.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.LanguageOfMaterial(*args, **kwargs)
Language of Material [CAAIS, Section 3.4]
Definition: The language(s) and script(s) represented in the accessioned materials.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.language_of_materials- Type:
ForeignKey
- language_of_material
The text content of CAAIS, Section 3.4.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.StorageLocation(*args, **kwargs)
Storage Location [CAAIS, Section 4.1]
Definition: The physical or logical location where the material resides.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.storage_locations- Type:
ForeignKey
- storage_location
The text content of CAAIS, Section 4.1.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.RightsType(*args, **kwargs)
Rights Type [CAAIS, Section 4.2.1]
Definition: A term that characterizes the nature of a rights statement.
Inherits
AbstractTerm- name
The name of the rights type
- Type:
CharField
- description
A description of the rights type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Rights(*args, **kwargs)
Rights [CAAIS, Section 4.2]
Definition: The assertion of one or more rights pertaining to the material.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.rights- Type:
ForeignKey
- rights_type
See
RightsType[CAAIS, Section 4.2.1]- Type:
ForeignKey
- rights_value
Rights Value [CAAIS, Section 4.2.2]. Definition: The parameters and conditions pertaining to the rights statement.
- Type:
TextField
- rights_note
Rights Note [CAAIS, Section 4.2.3]. Definition: Additional information related to the rights statement not otherwise recorded.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.PreservationRequirementsType(*args, **kwargs)
Preservation Requirements Type [CAAIS, Section 4.3.1]
Definition: A description of the material’s physical state, dependency or preservation concerns identified.
Inherits
AbstractTerm- name
The name of the preservation requirements type
- Type:
CharField
- description
A description of the preservation requirements type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.PreservationRequirements(*args, **kwargs)
Preservation Requirements [CAAIS, Section 4.3]
Definition: Information about physical condition and / or logical dependencies that need to be addressed by the repository to ensure the long-term preservation of the materials.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.preservation_requirements- Type:
ForeignKey
- preservation_requirements_type
See
PreservationRequirementsType[CAAIS, Section 4.3.1]- Type:
ForeignKey
- preservation_requirements_value
Preservation Requirements Value [CAAIS, Section 4.3.2]. Definition: A description of the material’s physical state, dependency or preservation concerns identified.
- Type:
TextField
- preservation_requirements_note
Preservation Requirements Note [CAAIS, Section 4.3.3]. Definition: Additional information related to the preservation requirement not otherwise recorded.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.AppraisalType(*args, **kwargs)
Appraisal Type [CAAIS, Section 4.4.1]
Definition: A term that characterizes the nature of the appraisal.
Inherits
AbstractTerm- name
The name of the appraisal type
- Type:
CharField
- description
A description of the appraisal type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Appraisal(*args, **kwargs)
Appraisal [CAAIS, Section 4.4]
Definition: Information about the assessment of value of the materials accessioned.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.appraisals- Type:
ForeignKey
- appraisal_type
See
AppraisalType[CAAIS, Section 4.4.1]- Type:
ForeignKey
- appraisal_value
Appraisal Value [CAAIS, Section 4.4.2]. Definition: A statement identifying any decisions made on the appraisal and selection of material, or outlining monetary appraisal details.
- Type:
TextField
- appraisal_note
Appraisal Note [CAAIS, Section 4.4.3]. Definition: Additional information related to the appraisal not otherwise recorded.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.AssociatedDocumentationType(*args, **kwargs)
Associated Documentation Type [CAAIS, Section 4.5.1]
Definition: A term that characterizes the nature of the appraisal.
Inherits
AbstractTerm- name
The name of the associated documentation type
- Type:
CharField
- description
A description of the associated documentation type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.AssociatedDocumentation(*args, **kwargs)
Associated Documentation [CAAIS, Section 4.5]
Definition: A reference to any documentation related to the material in the accession.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.appraisals- Type:
ForeignKey
- associated_documentation_type
See
AssociatedDocumentationType[CAAIS, Section 4.5.1]- Type:
ForeignKey
- associated_documentation_title
Associated Documentation Title [CAAIS, Section 4.5.2]. Definition: Name of the documentation related to the accessioned material
- Type:
TextField
- associated_documentation_note
Associated Documentation Note [CAAIS, Section 4.5.3]. Definition: Additional information related to associated documentation not otherwise recorded
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.EventType(*args, **kwargs)
Event Type [CAAIS, Section 5.1.1]
Definition: A term that characterizes the type of event documented in the accession process.
Inherits
AbstractTerm- name
The name of the event type
- Type:
CharField
- description
A description of the event type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.Event(*args, **kwargs)
Event [CAAIS, Section 5.1]
Definition: The actions taken by repository staff throughout the accession process.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.events- Type:
ForeignKey
- event_date
Event Date [CAAIS, Section 5.1.2]. Definition: The calendar date on which the event occurred. Time is automatically set to the current time when a new
Eventis created.- Type:
DateTimeField
- event_agent
Event Agent [CAAIS, Section 5.1.3]. Definition: The repository staff member responsible for the event.
- Type:
TextField
- event_note
Event Note [CAAIS, Section 5.1.4]. Definition: Additional information related to the event not otherwise recorded.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.GeneralNote(*args, **kwargs)
General Note [CAAIS, Section 6.1]
Definition: Additional information relating to the accession process or material that is not otherwise captured.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.general_notes- Type:
ForeignKey
- general_note
The text content of CAAIS, Section 6.1.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.CreationOrRevisionType(*args, **kwargs)
Creation or Revision Type [CAAIS, Section 7.2.1]
Definition: A term characterizing the nature of the action applied to the accession record.
Inherits
AbstractTerm- name
The name of the creation or revision type
- Type:
CharField
- description
A description of the creation or revision type
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned
- class caais.models.DateOfCreationOrRevision(*args, **kwargs)
Date of Creation or Revision [CAAIS, Section 7.2]
Definition: Date(s) on which the accession record was created or revised.
- metadata
Link to
Metadataobject. Access instances of this model withmetadata.dates_of_creation_or_revision- Type:
ForeignKey
- creation_or_revision_type
See
CreationOrRevisionType[CAAIS, Section 7.2.1]- Type:
ForeignKey
- creation_or_revision_date
Creation or Revision Date [CAAIS, Section 7.2.2]. Definition: The date on which the action was applied to the accession record. Time is automatically set to the current time when a new
DateOfCreationOrRevisionis created.- Type:
DateTimeField
- creation_or_revision_agent
Creation or Revision Agent [CAAIS, Section 7.2.3]. Definition: The repository staff member responsible for the action applied to the accession record.
- Type:
CharField
- creation_or_revision_note
Creation or Revision Note [CAAIS, Section 7.2.4]. Definition: Additional information describing the action performed on the accession record.
- Type:
TextField
- exception DoesNotExist
- exception MultipleObjectsReturned