Value Checking
Example for Common Value Restriction functions
Restrictions should be given as a function that returns Bool and the function checks for elements.
For example, for a vector of strings:
@aml struct Person "person"
member::Vector{String}, "member", memberCheck
end
Value limit check:
memberCheck(x) = any( x>10 || x<5 ) # in a compact form: x-> any(x>10 || x<5)
# x is all the values as a vector in this case
Check of the length of the vector:
memberCheck(x) = 0 < length(x) && length(x) < 10
User should know if the vector is going to be 0-element, its type should be union with nothing, i.e., UN{}. This is because of the EzXML implementation of findfirst and findall.
Set of valuse:
setOfValues = [2,4,10]
memberCheck(x) = in.(x, setOfValues)