Comet designation
Use one shared syntax and canonical identifier for comet inputs throughout WCCD, WStack, Visual, Analyzer, Planner, Comparison and Add Comet.
R107 unified contract The same headless validator, local-element repository lookup, examples, messages and Qt presentation are used by every designation input.
Designation versus ordinary name
A Comet designation is the orbital identifier used by KOPR, not free-form descriptive text. Examples include 10P and C/2023 A3. A FITS value such as 10P/Tempel 2 can be reduced to the canonical designation 10P.
Typing and validation states
The shared field distinguishes incomplete typing from a completed invalid value. While the user is still entering a supported designation, the control can remain in an intermediate state rather than showing a premature hard error.
| State | Meaning | Action |
|---|---|---|
| Empty or intermediate | The input is blank or still being typed. | Finish the designation; no observation is committed. |
| Invalid syntax | The completed text does not match the shared designation grammar. | Correct the identifier using the shared examples/help text. |
| Valid syntax, elements missing | The canonical designation is valid but the local repository has no usable orbital elements. | Use Add or update comet elements…. |
| Valid and available | Syntax, canonicalisation and local-element lookup succeeded. | The dialog or list can be accepted. |
FITS OBJECT hints
WCCD and WStack can parse a supported hint from FITS OBJECT. Unicode dashes and supported separators are normalized, and ordinary names attached to a valid identifier are removed during canonicalisation.
A user-edited designation is authoritative: later Browse actions do not overwrite it with another FITS hint. Cancel or validation failure leaves the current observation unchanged.
Multiple designations
Planner and Comparison use the same parser for comma-separated lists. Each item is canonicalised, validated and deduplicated by canonical value while preserving the useful input order.
12P, C/2023 A3, 29PRepeated aliases that canonicalise to the same designation are included only once. A list cannot bypass local-element validation merely because another item is valid.
Add or update local comet elements
When a valid designation has no local elements, use the explicit Add or update comet elements… action supplied by the shared Qt component. This is different from a syntax error: the identifier is valid, but KOPR cannot yet calculate its ephemeris.
The shared validator uses CometElementRepository; individual widgets do not scan Elements.txt or CustomElements.dat independently.
Application surfaces
- WCCD New CCD/DSLR observation
- WStack comet groups, preview and stacking inputs
- Process Visual Obs.
- Comet Analyzer one-to-N target selection
- Observation Planner multi-selection
- Add Comet / update-elements workflow
All surfaces use the same syntax, canonicalisation, repository status, status colours, examples and validation messages. Scientific loading after validation may remain widget-specific, but it does not redefine designation validity.
Common problems
| Symptom | Meaning and action |
|---|---|
| Designation is valid but cannot be accepted | Local orbital elements are missing. Use Add or update comet elements…. |
| FITS OBJECT filled an unexpected value | Review the canonical value. Edit it manually; later Browse actions will not overwrite the edit. |
| One item in a list is rejected | Correct or add elements for that item. Multi-designation input uses the same validation per item. |
| Old screenshot shows Comet name | The screenshot predates R107. The current label is Comet designation. |
Related chapters
WCCD observations · WStack · Visual observations · Planner · Comparison · Developer contract