Type Unit

In the KScope Asset Registry, a TypeUnit defines the unit of interpretation for a property β€” whether that property is numerical (like storage capacity or cost) or non-numerical (like version format or status labels). It helps ensure that property values are consistently described and understood, regardless of the type of data.

Think of a TypeUnit as a clarifying label or qualifier that tells you how to read or interpret a given value β€” numeric or textual.


🧱 Why TypeUnits Matter

Whether you’re dealing with storage sizes, monetary values, version identifiers, or even operating systems, TypeUnits help bring clarity and standardization to your asset data. They ensure:

  • Consistent interpretation of data across teams and systems

  • Accurate integration of asset data from different sources

  • Meaningful filtering, reporting, and analysis

  • Support for both technical and business semantics


🧩 Examples of Numerical and Non-Numerical TypeUnits

Property

Value

TypeUnit

Type

storage_capacity

500

GB

Numerical

cost_per_month

250

USD

Numerical

response_time

120

ms

Numerical

version

2.3.1

semantic_version

Non-numerical

status

active

status_label

Non-numerical

operating_system

Ubuntu 22.04

OS_version

Non-numerical

These examples show that TypeUnits can express units of measure, formats, or controlled vocabularies, depending on the nature of the property.


πŸ” Where TypeUnits Are Used

TypeUnits can be applied to:

  • Element attributes (properties of assets like storage, cost, version)

  • Edge attributes (properties of relationships like latency or connection type)

  • Node metadata (contextual tags or custom labels)

They help ensure that any value stored in the registry is semantically enriched and interpretable.


🧭 Where TypeUnits Fit in the Modeling Framework

In the KScope data model:

  • TypeUnits are linked to property definitions in both Element Types and Relationships

  • TypeUnits can be associated with specific Modules (if the unit is source-defined)

  • They can be part of hierarchies or controlled vocabularies, enabling unit conversions or label normalization


πŸ”„ Example: Full Attribute with TypeUnit Context

Element: PayrollApp
Element Type: Application
Attributes:
  - version: 2.3.1
  - TypeUnit: semantic_version

Element: Server_001
Element Type: Server
Attributes:
  - storage_capacity: 500
  - TypeUnit: GB

In this example:

  • The version field uses a non-numerical TypeUnit to clarify its format (semantic versioning).

  • The storage_capacity field uses a numerical TypeUnit (gigabytes) to describe measurable size.


πŸ›  When Would I Use or Define a TypeUnit?

Define or apply a TypeUnit when:

  • Adding a numeric or structured property to an ElementType

  • Importing data from sources that use specific formats or labels

  • Needing standardized formats for consistent parsing and reporting

  • Working with controlled vocabularies for non-numeric fields (e.g., "status" or "risk level")


πŸ’‘ Tips for Managing TypeUnits

  • Use TypeUnits consistently across similar Element Types or Domains

  • Don’t assume numbers are self-explanatory β€” always pair with a unit

  • For non-numerical fields, define TypeUnits as format indicators (e.g., ISO_date, status_label)

  • Consider defining conversion or normalization rules for complex units or labels


βœ… Summary

A TypeUnit in KScope Asset Registry is a powerful way to give meaning and context to a property value β€” whether it’s a number, a format, or a label.

By applying TypeUnits to both numerical and non-numerical properties, you ensure your asset data is always clear, consistent, and ready for action β€” whether you’re analyzing cost, tracking system versions, or enforcing standards across teams.

Last updated

Was this helpful?