Types
Understanding Types
All data inside of WarmHub Repos has a type. Types are like templates or blueprints that define the structure and attributes of Assertions and Articles in your repo. Think of them as a way to consistently describe the "kinds of things" in your repo. For Assertions, types specify what properties (like evidence or claims) an assertion can or must have. For Articles, types help define the "things" being talked about (e.g., a software library, a policy document, etc.). Think of types as your way of setting the rules for how information should be structured and validated in your repo. They ensure clarity, consistency, and reusability, making it easier to share and build trust across repositories while maintaining flexibility for your domain-specific needs.
There are two ways to add Types to your repo.
Importing Types from Other Repos - Importing types that have already been created in another repo, is the quickest way to set up a repo. This is very useful if you, or someone else, has already set up a repo that contains the types that you need. Additionally, adhering to well established and adopted types can help your assertions be composable with existing assertions, which will further help build trust.
Create Types - If there are no existing types that work for you, you can build your own types from scratch with whatever structure you need, to capture your data.
Properties
The main component that helps define all types are their properties. Each property is a specific element of the data that can or must be present whenever someone commits data of that type.
These are the basic elements of a property. For more help creating properties, please see Creating Types
Name - This identifies the property
Type - This is the primitive type or format of data that this property will be. For example: text, integer, URL, DateTime, etc.
Description - This describes this property and how it is to be used.
Required - If this box is checked, then any commit of this type, must contain this property to be valid and accepted into the repo. If the box is unchecked, then commits of that type can be made with or without the property.
List - If checked, this property can be a list of items like an array, and not just a single data element. If unchecked, only one data element can be present for the property.
Last updated