Organization Value Objects¶
Why This Exists¶
This document defines immutable or value-based concepts in the Organization Domain.
Value objects matter because they capture validation, equality, and meaning for business values that do not require independent identity.
Owner¶
The owner is the Chief Product Officer and Enterprise Architect.
The Organization Domain owns validation expectations for value objects used in Organization context.
Business Value¶
Value objects improve data quality, reduce duplicated validation logic, and help AI reasoning use precise domain language.
Value Object Catalogue¶
| Value object | Purpose | Validation rules |
|---|---|---|
| OrganizationId | Stable identifier for an Organization. | Required, unique, opaque, immutable. |
| RegistrationNumber | Legal registration identifier. | Format depends on jurisdiction; must preserve source and country. |
| TaxNumber | Tax identifier. | Format depends on jurisdiction; must not be assumed globally valid. |
| VATNumber | VAT registration identifier. | Optional where not applicable; jurisdiction-aware validation. |
| EmailAddress | Email contact value. | Must have valid email shape and normalized comparison. |
| PhoneNumber | Phone contact value. | Should include country context where possible. |
| AddressDetails | Structured address fields. | Must include minimum address components for intended use. |
| GeographicCoverage | Areas where organization operates. | Must distinguish stated coverage from verified coverage. |
| IndustryClassification | Industry or sector classification. | Must preserve classification source or taxonomy. |
| CapabilityEvidenceLevel | Strength of evidence supporting capability claim. | Controlled values such as claimed, documented, verified. |
| AIConfidenceScore | Confidence score for AI-enriched facts. | Numeric range, source model, timestamp, and context required. |
| VerificationStatus | Verification state for records. | Controlled values such as unverified, pending, verified, rejected, expired. |
| OrganizationStatus | Organization lifecycle state. | Must align to Organization lifecycle. |
| Money | Monetary amount with currency. | Amount and currency required; avoid currency-less values. |
| DateRange | Start and end date range. | Start must be before or equal to end where end exists. |
| ContractValueRange | Approximate contract or project value range. | Must support undisclosed or confidential values. |
Why Value Objects Matter¶
Value objects make domain rules explicit.
Examples:
- A VAT number is not just a string.
- A money amount is not valid without currency.
- A confidence score is not useful without source and context.
- A geographic coverage claim is different from verified operating coverage.
Immutability Rule¶
Value objects should be treated as immutable. When a value changes, replace the value object rather than mutating it in place. This supports auditability and clearer domain events.
AI Reasoning Rule¶
AI reasoning must preserve value object meaning. For example, AI may suggest an industry classification or capability evidence level, but it must not silently convert an unverified claim into a verified fact.