public void Validate() { foreach (RangingInformation rangingInformation in _ranges) { rangingInformation.Validate(); } foreach (QualifiedQuantity qualifiedQuantity in _quantities) { qualifiedQuantity.Validate(); } foreach (Quantity resolution in _resolutions) { resolution.Validate(); } foreach (ErrorLimit errorLimit in _errorLimits) { errorLimit.Validate(); } if (_magnitude != null) { _magnitude.Validate(); } var rgx = new Regex(PHYSICAL_PATTERN); if (!rgx.Match(ToString()).Success) { throw new Exception(string.Format("Invalid Physical Expression - {0}", ToString())); } }