When building a model there are typically many concepts which need to be modeled. If your model is a Cost Model, these could be physical assets such as a fleet and vehicle types or more abstract concepts such as groupings, departments, ownership.

In RuleFour we model these concepts using Lists.

What are Lists?

Lists are hierarchical and are made up of items which can be used to represent groups or individual items. Such as in the following example:



  • Cars

    • Car 1

    • Car 2

  • Trucks

    • Truck 1

    • Truck 2

  • Head Office

    • Sales

    • Procurement

  • Warehouse

Lists provide consistency of names which can be refereed to through a model.


List items are used to Tag inputs and Cost Elements in RuleFour. For example you might be costing a companies expenses and tag each Cost with a department.

Spine List

The Spine list is the Primary list in a model, all the elements for a model must be tagged with an item from the spine list. The spine list is used as the default view in the structure and schedule so this ensures every cost element has a place in the default view.

List Item Codes

Each list item is made up of two parts, the item code and a label. The item code is used as the primary identifier of the item. When tagging a list item the code is used to associate the items leaving you free to modify the label as your model changes.

Designing Lists

List items must be unique, if you do find yourself wanting to add duplicate items to a list consider if those items should be in a separate associated list instead. Another good method to verify this is to look at the list items and ask if they are the same kind of thing. If a list contains items representing different types of things you have a mixed list. If you have a mixed list you should consider splitting those different types of items out into their own list.

Mixed List

People List

Cost Type List

  • Person A Costs

    • Salary

    • Super

  • Person B Costs

    • Salary

    • Super


  • Person A

  • Person B

  • Salary

  • Super

Using associations you can reconstruct the original Complex List which we'll look at in more detail when we look at Model Structure.

Last updated