Skip to main content

Function modifiers

cardinality

Commentary​

added in 0.8.3

Restricts the maximum number of unique values that a function can generate. When the limit is exceeded, previously generated values will be chosen at random.

Note that this modifier is a ceiling: if a function can't generate more unique values than the specified cardinality, it won't reach the cardinality limit.


Examples​

Setting cardinality​

Set cardinality to a positive integer. In this example:

  • a is only ever assigned one unique value
  • b is assigned 3 unique values, after which older values are reused
  • c always contains newly generated values
{
"a": {
"_gen": "normalDistribution",
"mean": 10,
"sd": 2,
"decimals": 4,
"cardinality": 1
},
"b": {
"_gen": "normalDistribution",
"mean": 10,
"sd": 2,
"decimals": 4,
"cardinality": 3
},
"c": {
"_gen": "normalDistribution",
"mean": 10,
"sd": 2,
"decimals": 4
}
}
[
{
"a": 12.1878,
"b": 10.0926,
"c": 7.8284
},
{
"a": 12.1878,
"b": 11.7749,
"c": 10.594
},
{
"a": 12.1878,
"b": 11.6722,
"c": 7.6688
},
{
"a": 12.1878,
"b": 11.6722,
"c": 10.7584
},
{
"a": 12.1878,
"b": 11.6722,
"c": 12.7066
},
{
"a": 12.1878,
"b": 10.0926,
"c": 11.5828
},
{
"a": 12.1878,
"b": 11.7749,
"c": 11.7387
},
{
"a": 12.1878,
"b": 11.7749,
"c": 8.7838
},
{
"a": 12.1878,
"b": 11.6722,
"c": 9.1927
},
{
"a": 12.1878,
"b": 11.7749,
"c": 11.908
}
]

Specification​

JSON schema​

{
"type": "integer",
"minimum": 1
}