Variable stars have one classification axis. Small bodies have two, and they are independent: where the orbit puts it, and what the surface is made of. An object's dynamical family says where it has been; its spectral class says what it is. Neither predicts the other.
Every object gets exactly one dynamical class, assigned from its orbit. Our schema wraps the source's 34-node code set in a curated hierarchy, so that a question like "how many near-Earth asteroids?" is answered by one query over the whole branch instead of a hand-maintained list of leaf codes that goes stale.
Counts below are hierarchy-aware: a group row includes everything beneath it.
| Class | Source code | Objects (including sub-classes) |
|---|---|---|
| Small body | 1,557,369 | |
| › Asteroid | 1,553,300 | |
| › Main-belt asteroid | 1,457,561 | |
| › Middle main-belt | MBA | 1,374,787 |
| › Outer main-belt | OMB | 49,943 |
| › Inner main-belt | IMB | 32,831 |
| › Near-Earth asteroid | 42,062 | |
| › Apollo | APO | 23,933 |
| › Amor | AMO | 14,666 |
| › Aten | ATE | 3,425 |
| › Atira (Interior-Earth Object) | IEO | 38 |
| › Mars-crosser | 29,739 | |
| › Mars-crossing asteroid | MCA | 29,739 |
| › Trojan | 16,356 | |
| › Jupiter Trojan | TJN | 16,356 |
| › Trans-Neptunian object | 6,387 | |
| › Trans-Neptunian object | TNO | 6,387 |
| › Centaur | 1,038 | |
| › Centaur | CEN | 1,038 |
| › Unclassified asteroid | AST | 152 |
| › Unbound asteroid | 5 | |
| › Hyperbolic asteroid | HYA | 5 |
| › Comet | 4,069 | |
| › Long-period comet | 3,011 | |
| › Parabolic comet | PAR | 1,763 |
| › Long-period comet | COM | 730 |
| › Hyperbolic comet | HYP | 518 |
| › Short-period comet | 1,058 | |
| › Jupiter-family comet | 846 | |
| › Jupiter-family comet (Tisserand-defined) | JFc | 829 |
| › Jupiter-family comet (period-defined) | JFC | 17 |
| › Halley-type comet | HTC | 111 |
| › Encke-type comet | ETc | 79 |
| › Chiron-type comet | CTc | 22 |
"Near-Earth object" is not one definition. The IAU's geometric version is perihelion inside 1.3 AU, which 42,062 asteroids satisfy. JPL's operational flag is narrower for comets — it takes in short-period ones only — so a long-period comet that comes well inside 1.3 AU is not flagged. The schema here carries both and documents the difference rather than picking one silently.
Reflectance spectroscopy sorts surfaces into classes. Two schemes are in common use, and the trap is that multiple letters mean opposite things in each.
In the Tholen system, extra letters mean ambiguity:
CX says "C, or else X, with C fitting better", ordered by
goodness of fit. A trailing U means the spectrum is unusual, and colons
flag noisy data — so FBCU:: reads as "F, else B, else C;
unusual; very noisy".
In the Bus/SMASS II system, extra letters name a
subclass: Ch is a single class in its own right — C-like with
a 0.7 µm absorption band from hydrated silicates, direct evidence that liquid
water once altered the rock. It is not "C or h".
Parse one with the other's rule and you invent classifications that nobody measured. Our ingest runs a separate parser for each, preserves the raw string, and keeps every ambiguous alternative as its own ranked row rather than collapsing it to a single answer the spectroscopy does not support.
Tholen's E, M and P classes are spectrally indistinguishable — all featureless and reddish. What separates them is albedo: E-types are very bright, M-types moderate and metallic, P-types very dark. When the albedo is unknown, the object is called X. It is a rare case of a classification scheme carrying its own uncertainty in the label.
26 classes in three complexes plus the end members. Group rows in gold.
| Class | Sits under | What it means | Objects |
|---|---|---|---|
| C-complex | — | Dark primitive surfaces. Bus/SMASS II resolves the Tholen C group into six classes, several distinguished by a 0.7 um hydrated-silicate band | 0 |
| S-complex | — | Stony silicate surfaces, resolved into a core S class plus five transitional classes bridging toward A, K, L, Q and R | 0 |
| X-complex | — | Moderately reddish featureless spectra, resolved into a core X plus three classes with subtle features | 0 |
| end-member | — | Distinctive mineralogies outside the three complexes | 0 |
A | end-member | Very red shortward of 0.75 um with a deep 1 um olivine band | 17 |
B | C-complex | Negative (blue) spectral slope | 66 |
C | C-complex | Neutral and flat longward of 0.55 um | 155 |
Cb | C | Transitional between C and B | 37 |
Cg | C | C-like with a strong UV dropoff | 9 |
Cgh | C | Combines the Cg UV dropoff with the 0.7 um hydration band | 15 |
Ch | C | C-like with the 0.7 um absorption band of hydrated silicates - direct evidence that liquid water once altered the rock. One of the most common C-complex classes | 139 |
D | end-member | Very red and featureless; Trojans and comet-like surfaces | 13 |
K | end-member | Between S and X with a weak 1 um feature. Characteristic of the Eos family | 38 |
L | end-member | Steeply reddish shortward of 0.75 um, then flat | 41 |
Ld | L | L-like but with an even steeper red slope | 15 |
O | end-member | Unusual deep 1 um absorption. 3628 Boznemcova is the sole archetype | 7 |
Q | end-member | Strong 1 um band from olivine plus pyroxene - an unweathered, freshly exposed surface | 20 |
R | end-member | Deep 1 um and 2 um bands | 5 |
S | S-complex | Reddish shortward of 0.7 um with a moderate 1 um band | 462 |
Sa | S | Transitional from S toward A | 38 |
Sk | S | Transitional from S toward K | 29 |
Sl | S | Transitional from S toward L | 56 |
Sq | S | Transitional from S toward Q, indicating a fresher surface | 116 |
Sr | S | Transitional from S toward R | 27 |
T | end-member | Moderately red, flat, and dark | 19 |
V | end-member | Deep 1 um pyroxene band: basaltic crust, from Vesta and the vestoids | 49 |
X | X-complex | Featureless with a moderate reddish slope | 144 |
Xc | X | X-like, curving toward C | 67 |
Xe | X | X-like with a 0.49 um absorption feature, the Bus counterpart of Tholen E | 30 |
Xk | X | X-like, curving toward K | 47 |
The older scheme, based on eight-colour photometry. Still the only classification available for many objects.
| Class | Sits under | What it means | Objects |
|---|---|---|---|
| C-complex | — | Dark, primitive, carbon- and volatile-rich surfaces. Dominates the outer main belt and is the likely parent of the carbonaceous chondrites | 0 |
| S-complex | — | Stony, moderately bright silicate surfaces rich in olivine and pyroxene; the likely parent of the ordinary chondrites. Dominates the inner main belt | 0 |
| X-complex | — | Featureless reddish spectra that cannot be told apart spectroscopically. E, M and P are separated ONLY by albedo; X is used when the albedo is unknown - a rare case of a taxonomy admitting what it cannot measure | 0 |
| end-member | — | Distinctive mineralogies that sit outside the three big complexes | 0 |
A | end-member | Olivine-rich: very red shortward of 0.7 um with a deep 1 um band | 7 |
B | C-complex | Like C but with a slightly blue (negative) slope and somewhat higher albedo. 2 Pallas is the archetype | 32 |
C | C-complex | Carbonaceous: albedo near 0.05, flat to slightly reddish spectrum with a UV dropoff | 305 |
D | end-member | Very red and dark, organic-rich. Dominates the Jupiter Trojans and resembles cometary nuclei | 84 |
E | X-complex | Enstatite: very high albedo above 0.3, featureless. 44 Nysa is the archetype | 13 |
F | C-complex | Flat and featureless, lacking the UV absorption that C-types show | 78 |
G | C-complex | C-like with a strong UV absorption below 0.4 um. 1 Ceres is the archetype | 31 |
I | end-member | Not a mineralogical class: the ECAS photometry for this object was internally inconsistent | 3 |
M | X-complex | Metallic: moderate albedo, featureless reddish, interpreted as iron-nickel cores of disrupted parent bodies. 16 Psyche is the archetype | 43 |
P | X-complex | Pseudo-M / primitive: very low albedo below 0.07, featureless reddish. Common among the Hildas and Trojans | 66 |
Q | end-member | Broad 1 um absorption from olivine plus pyroxene, indicating an unweathered surface. Common among near-Earth asteroids | 6 |
R | end-member | Deep 1 um and 2 um pyroxene bands. 349 Dembowska is the archetype | 4 |
S | S-complex | Silicaceous: albedo 0.15-0.25, reddish slope with a 1 um mafic absorption band | 382 |
T | end-member | Moderately red and dark, intermediate between D and X | 29 |
V | end-member | Basaltic, with a strong 1 um pyroxene band. 4 Vesta and its family; the parent of the HED meteorites | 5 |
X | X-complex | Featureless and moderately reddish, with no albedo measurement available to break the E/M/P degeneracy | 151 |
Symbols the parsers produce but our curated hierarchy does not define become flagged dictionary rows, and raw values no grammar accepts are recorded separately. In the current release that is 2 symbols and one unparsed value — small, known, and visible, rather than quietly missing. The predecessor project's hardest-won lesson was that silently skipping unknown types is invisible data loss.