Chaldean Numerology¶
A Chaldean numerology engine that deterministically reduces a name to its planetary root (1-9) using the Chaldean letter values (1-8, with nine never assigned to a letter). This is distinct from the Pythagorean name-numerology tradition.
from fortune_telling_core import Querent, ReadingRequest
from fortune_telling_core.traditions.chaldean_numerology import (
CHALDEAN_NUMEROLOGY_DECK,
CHALDEAN_NUMEROLOGY_SPREAD,
build_engine,
)
request = ReadingRequest(
deck_id=CHALDEAN_NUMEROLOGY_DECK.id,
spread_id=CHALDEAN_NUMEROLOGY_SPREAD.id,
querent=Querent(id="sample", display_name="Sample", attributes={"name": "John"}),
)
reading = build_engine().cast(request)
chaldean_numerology ¶
CHALDEAN_NUMEROLOGY_DECK
module-attribute
¶
CHALDEAN_NUMEROLOGY_DECK = Deck(
id="chaldean_numerology.deck.numbers.v1",
symbols=tuple(
(
Symbol(
id=item.symbol_id,
name=str(item.value),
attributes={
"value": str(item.value),
"planet": item.planet,
},
)
)
for item in NUMBERS
),
)
CHALDEAN_NUMEROLOGY_SPREAD
module-attribute
¶
CHALDEAN_NUMEROLOGY_SPREAD = Spread(
id="chaldean_numerology.spread.name.v1",
name="Chaldean Name Number",
positions=(
Position(
"name_number",
"Name Number",
"Root number reduced from the name.",
),
),
)
ChaldeanNumerologyEngine ¶
Bases: AbstractEngine
Chaldean numerology engine.
The engine deterministically reduces a name to its Chaldean root number (1-9) and surfaces the planetary ruler of that root.
deck ¶
Return the Chaldean numerology deck.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
ReadingRequest
|
Reading request whose |
required |
Returns:
| Type | Description |
|---|---|
Deck
|
The bundled deck. |
Raises:
| Type | Description |
|---|---|
ValidationError
|
If the requested deck is unsupported. |
Source code in src/fortune_telling_core/traditions/chaldean_numerology/engine.py
spread ¶
Return the Chaldean numerology spread.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
ReadingRequest
|
Reading request whose |
required |
Returns:
| Type | Description |
|---|---|
Spread
|
The bundled spread. |
Raises:
| Type | Description |
|---|---|
ValidationError
|
If the requested spread is unsupported. |
Source code in src/fortune_telling_core/traditions/chaldean_numerology/engine.py
draw ¶
Compute the Chaldean name number as a deterministic draw.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
ReadingRequest
|
Reading request with |
required |
rng
|
Rng
|
Ignored. The argument is present for |
required |
Returns:
| Type | Description |
|---|---|
Draw
|
A draw with the single name-number selection. |
Raises:
| Type | Description |
|---|---|
ValidationError
|
If the name is missing or invalid. |
Source code in src/fortune_telling_core/traditions/chaldean_numerology/engine.py
cast ¶
Compute a Chaldean numerology reading without a caller RNG.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
request
|
ReadingRequest
|
Reading request containing the name. |
required |
Returns:
| Type | Description |
|---|---|
Reading
|
A reading with the name-number placement and summary. |
Raises:
| Type | Description |
|---|---|
ValidationError
|
If the name is missing or invalid. |
Source code in src/fortune_telling_core/traditions/chaldean_numerology/engine.py
build_engine ¶
Create a Chaldean numerology engine.
Returns:
| Type | Description |
|---|---|
ChaldeanNumerologyEngine
|
A new |