Context:
type:: { name: String,
type: string,
regex: "^B[0-9]{9}$",
codepoint_length: range: [2, 10],
}
Here is one of the example of conflicting constraints defined in one type definition. This type definition is legal in ion schema, but constraints regex and codepoint_length conflict with each other when specifying the string in data generating process. For now, the solution is to throw error when this conflicts happen when generating data in Ion Data Generator. However, there might be more conflicting combinations of constraints defined in ion schema file. If there is a tool to detect these potential-conflicts before getting into the data generation process, it will make the data generating more reasonable.