V2 Classification

V2Master | V2HighLevelDesign

Definitions

  1. Classification Field - Classification field types

    1. Select from a list
    2. Select from a tree
    3. Checkbox
    4. Values
      1. Single value
      2. From-To value
      3. Strings, dates, numbers, integers, etc.
  2. Classification Scheme - A pre-defined set of classification fields (ClassificationClass)

    1. A classification Scheme should have a name and a description
    2. Defines:
      1. The set of allow classification fields
      2. The layout and order of the fields in the top-block, data-block and classifictaion-block
      3. Whether values for classification fields are required
      4. Whether multiple values for classification fields are allowd
      5. Which classification fields are displayed in which blocks
  3. Object Sub-Type - A object database field that identifies the objects type, which also determines the classification scheme that should be applied to that instance of the object. It would stored one of the following fields:

    1. Documents - document_sub_type_id
    2. Revisions - revision_sub_type_id
    3. Tasks - task_sub_type_id
    4. Transmittals - transmittal_sub_type_id
    5. Users - user_sub_type_id
  4. Blocks

    1. Identification Block - The block containing:

      1. Code (for objects which have codes)
      2. Title
      3. Sub-type
    2. Data Block - A new block displayed above(? Ask JK) the classifictaion block

    3. Classification Block - The main classification fields

Requirements

  1. Flexible classification system based on multiple classification schemes
    1. Classification schemes are assigned to objects based on value of object's sub-type. E.g. when you set or change the sub-type (probably called {object} Type on the screen), the input form has to change to display the appropriate set of input fields for the selected classification scheme.

  2. Multiple classification schemes can be defined. A classification scheme definition includes
    1. A name
    2. A description
    3. The list of classification fields that are allowed
    4. For each classification field (e.g. the ClassificationClass table)

      1. Is a value for the classification field required
      2. Are multiple values for the classification field allowed 1. Where the field is displayed.
      3. Is the field displayed in lists
      4. Is the field displayed in detail screens - Issue: Would classification_classes.display_on_detail ever be set to false?

  3. It should be possible to change a object's sub-type
    1. Doing so may cause a loss of classification data
    2. Cancel, with no loss of data should be allowed. Therefore the classification data is only changed in the database when the user commits the change (e.g. saves)

Tables

  1. Object tables: Documents, Revisions, Tasks, Transmittals, Users
  2. ResourceSubTypes

    1. id
    2. resource_type_id - E.g. document, revision, task, etc.

    3. name
    4. description - Example values: Drawing, Report, Business Letter, Inspection report, Invoice, etc.

    5. classification_scheme_id
  3. ClassificationSchemes

    1. id
    2. name - Example values: Technical, Financial, Correspondence
    3. description
  4. ClassificationClasses -- The description of a set of classification fields, properties (required, multiple, etc.), ordering and their screen layout

    1. id -- Note the current resource_type field will be removed

    2. classification_scheme_id
    3. classification_id
    4. lots of flags
    5. sort_order
Copyright 2008-2014, SoftXS GmbH, Switzerland