Constraint Rule Comparison
Global
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
disabled |
✅ |
✅ |
✅ |
✅ |
✅ |
Numerics
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
lt/lte/gt/gte |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
Bools
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
Strings
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
len/min_len/max_len |
✅ |
✅ |
✅ |
✅ |
✅ |
min_bytes/max_bytes |
✅ |
✅ |
✅ |
✅ |
✅ |
pattern |
✅ |
✅ |
✅ |
✅ |
✅ |
prefix/suffix/contains |
✅ |
✅ |
✅ |
✅ |
✅ |
contains/not_contains |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
email |
✅ |
✅ |
❌ |
✅ |
✅ |
hostname |
✅ |
✅ |
✅ |
✅ |
✅ |
address |
✅ |
✅ |
✅ |
✅ |
✅ |
ip |
✅ |
✅ |
✅ |
✅ |
✅ |
ipv4 |
✅ |
✅ |
✅ |
✅ |
✅ |
ipv6 |
✅ |
✅ |
✅ |
✅ |
✅ |
uri |
✅ |
✅ |
❌ |
✅ |
✅ |
uri_ref |
✅ |
✅ |
❌ |
✅ |
✅ |
uuid |
✅ |
✅ |
✅ |
✅ |
✅ |
well_known_regex |
✅ |
✅ |
✅ |
✅ |
✅ |
Bytes
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
len/min_len/max_len |
✅ |
✅ |
✅ |
✅ |
✅ |
pattern |
✅ |
✅ |
✅ |
✅ |
✅ |
prefix/suffix/contains |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
ip |
✅ |
✅ |
❌ |
✅ |
✅ |
ipv4 |
✅ |
✅ |
❌ |
✅ |
✅ |
ipv6 |
✅ |
✅ |
❌ |
✅ |
✅ |
Enums
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
defined_only |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
Messages
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
skip |
✅ |
✅ |
✅ |
✅ |
✅ |
required |
✅ |
✅ |
✅ |
✅ |
✅ |
Repeated
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
min_items/max_items |
✅ |
✅ |
✅ |
✅ |
✅ |
unique |
✅ |
✅ |
✅ |
✅ |
✅ |
items |
✅ |
✅ |
❌ |
✅ |
✅ |
Maps
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
min_pairs/max_pairs |
✅ |
✅ |
✅ |
✅ |
✅ |
no_sparse |
✅ |
✅ |
❌ |
❌ |
❌ |
keys |
✅ |
✅ |
❌ |
✅ |
✅ |
values |
✅ |
✅ |
❌ |
✅ |
✅ |
OneOf
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
required |
✅ |
✅ |
✅ |
✅ |
✅ |
WKT Scalar Value Wrappers
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
wrapper validation |
✅ |
✅ |
✅ |
✅ |
✅ |
WKT Any
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
required |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
WKT Duration
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
required |
✅ |
✅ |
✅ |
✅ |
✅ |
const |
✅ |
✅ |
✅ |
✅ |
✅ |
lt/lte/gt/gte |
✅ |
✅ |
✅ |
✅ |
✅ |
in/not_in |
✅ |
✅ |
✅ |
✅ |
✅ |
WKT Timestamp
Constraint Rule |
Go |
GoGo |
C++ |
Java |
Python |
required |
✅ |
✅ |
❌ |
✅ |
✅ |
const |
✅ |
✅ |
❌ |
✅ |
✅ |
lt/lte/gt/gte |
✅ |
✅ |
❌ |
✅ |
✅ |
lt_now/gt_now |
✅ |
✅ |
❌ |
✅ |
✅ |
within |
✅ |
✅ |
❌ |
✅ |
✅ |