Skip to content

Repository files navigation

document-issue

Code style: blackTest

document-issue information defines the metadata required to accompany every issued document during the course of an AEC (Architecture, Engineering, Construction) project.

Generally speaking each document must contain the following information to situate it within a project:

  • a unique code, name, title and summary description
  • categorisation information that defines to what the document pertains
  • when it was issued, at what version
  • by who
  • for what purpose

The document-issue package formalises those information fields and defines a schema for storing them consistently. The structure is compliant with BS EN ISO 19650-2. The information fields defined here may not be required to be output in every document issued, but the aspiration is that no issued document will require any additional data-fields to those defined here. For internal use it is suggested that all the information fields are competed to ensure a consistent record of issued information is maintained.

As a suite of tools, the packages in the document-issue monorepo provide:

  • a schema and datastore of the document-issue meta-data that accompanies every document
  • a simple application interface for users to manage the issue history of documents on a project
  • a Revit toolbar to support Revit sync
  • standardised report format document templates for schedules and other report style documents

Repo-structure

This project is structured as a monorepo. In the packages directory, each package is built and installable independently. Using the VS Code you can open the monorepo as a multi-package workspace defined in .vscode/document-issue.code-workspace.

Packages

  • document-issue: schema definitions (as pydantic models) defining document-issue information fields.
    • futureIncludes logic for building document codes from categorisation fields.
  • document-issue-io: provides input/output functionality. Currently its main use is to define the markdown first couple of pages for report format documents.
  • document-issue-quarto: defines the quarto/latex templates for creating branded report format documents. Used with document-issue-io.
  • futuredocument-issue-api: API and associated database that maintains a reference of documents issued across projects.
  • futuredocument-issue-ui: user application for Engineers and Project Administrators for creating document codes and recording issued documents.
  • document-issue-xl: excel DNG and issue sheet generation
  • futuredocument-issue-pyrevit: pyRevit toolbar to create sheets and views by interacting with the document-issue-api.
for now, `document-issue` intentionally avoids considering the datafields that
are used to create the Document Number, this may follow up in the future.

Developer Installation

instructions ->🤓💻

Example document-issue data

classification: Ac_05doc_source: WDdocument_description: Document Descriptiondocument_name: 06667-MXF-XX-XX-SH-M-20003format_configuration:
date_string_format: '%d %^b %y'description_in_filename: falseinclude_author_and_checked_by: falseissue_history:
- author: EGchecked_by: CKdate: 2020-01-02issue_format: cdeissue_notes: ''revision: P01status_code: S2status_description: Suitable for informationname_nomenclature: project code-originator-volume-level-type-role-numbernotes:
- add notes hereoriginator: Max Fordham LLPproject_name: In House App Testingproject_number: J5001roles:
- name: JGrole: Project Engineerscale: NTSsize: 

License

TBC

About

Defines the data structure of the meta-data associated with the issue of a document in the AEC industry. Follows recommendations in BS EN ISO 19650‑2:2018.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages