metadata {

authority_id: din
id: 33904-2018
language: iso-639-2:san
source_script: Deva
destination_script: Latn
name: "DIN 33904:2018-10 Information and documentation -- Romanization Devanagari, Sanskrit"
url: https://www.beuth.de/en/standard/din-33904/293049024
creation_date: 2018
description: |
  Sanskrit system.

  This standard specifies the transliteration of all languages of the Devanāgarī characters into Latin letters firmly.
  It is suitable for any application.

notes:
  - |
    Vowels:
    The Ardhacandra ॅ is often used to denote English vowels:
    EXAMPLE
    बॅट     bêṭa       (bat)
    डॉक्टर  ḍôkṭara (doctor)
  - |
    Consonants:

    Since the Devanāgarī script is a syllabic script, it becomes -a inherent in the consonant.
    Always written during transliteration, also in the final part
    EXAMPLE 1
    पुस्तक   pustaka

    A line under the consonant, the so-called Virāma, means in the Devanāgarī script that that inherent -a not applicable.
    EXAMPLE 2
    वाक्   vāk

    The anusvāra is always represented with -ṃ-.
    EXAMPLE 3
    संसकरण saṃskaraṇa

    Before k, kh, g, gh, c, ch, j, jh, ṭ, ṭh, ḍ, ḍh, t, th, d, dh, p, ph, b, bh, the anusvāra becomes the class nasal transformed.
    EXAMPLE 4
    तंघी   kaṃghī becomes kaṅghī
    पंजाबी  paṃjābī becomes pañjābī
    पंडित  paṃḍita becomes paṇḍita
    संधी   saṃdhī becomes sandhī
    दिसंबर  disaṃbara becomes disambara

    Anunāsika or Candrabindu signals the nasalization of vowels

    EXAMPLE 5
    माँ māṁ

}

tests {

test "पुस्तक", "pustaka"
test "बॅट", "bêṭa"
test "वाक्", "vāk"
test "पंजाबी", "pañjābī"
test "डॉक्टर", "ḍôkṭara"
test "पंडित", "paṇḍita"
test "संधी", "sandhī"
test "दिसंबर", "disambara"
test "संसकरण", "saṃsakaraṇa"
test "माँ", "māṁ"
test "शुभाशुभपरित्यागी भक्तिमान्यः स मे प्रियः", "śubhāśubhaparityāgī bhaktimānyaḥ sa me priyaḥ"
test "सत्य -सत्यमेवेश्वरो लोके सत्ये धर्मः सदाश्रितः", "satya -satyameveśvaro loke satye dharmaḥ sadāśritaḥ"
test "सत्यमूलनि सर्वाणि सत्यान्नास्ति परं पदम्", "satyamūlani sarvāṇi satyānnāsti paraṃ padam"
test "पिता माताग्निरात्मा च गुरुश्च भरतर्षभ", "pitā mātāgnirātmā ca guruśca bharatarṣabha"
test "०१२३४५६७८९", "0123456789"

}

aliases {

def_alias deva_chars_1, any("\u093E\u093F\u0940\u0941\u0942\u0943\u0944\u0945\u0947\u0948\u0949\u094B\u094C")

}

stage {

# RULES
sub "\u0902", "ṅ", after: any("कक़खख़गग़घङ")
sub "\u0902", "ñ", after: any("चछजज़झञ")
sub "\u0902", "ṇ", after: any("टट़ठडड़ढढ़ण")
sub "\u0902", "n", after: any("तथदधन")
sub "\u0902", "m", after: any("पफबभम")

sub "\u0902", "ñ", after: any("कखगघचछजझतथदधपफबभटठडढ")

sub "क", "k", after: deva_chars_1
sub "ख", "kh", after: deva_chars_1
sub "ग", "g", after: deva_chars_1
sub "घ", "gh", after: deva_chars_1
sub "ङ", "ṅ", after: deva_chars_1
sub "च", "c", after: deva_chars_1
sub "छ", "ch", after: deva_chars_1
sub "ज", "j", after: deva_chars_1
sub "झ", "jh", after: deva_chars_1
sub "ञ", "ñ", after: deva_chars_1
sub "ट", "ṭ", after: deva_chars_1
sub "ठ", "ṭh", after: deva_chars_1
sub "ड", "ḍ", after: deva_chars_1
sub "ढ", "ḍh", after: deva_chars_1
sub "ण", "ṇ", after: deva_chars_1
sub "त", "t", after: deva_chars_1
sub "थ", "th", after: deva_chars_1
sub "द", "d", after: deva_chars_1
sub "ध", "dh", after: deva_chars_1
sub "न", "n", after: deva_chars_1
sub "प", "p", after: deva_chars_1
sub "फ", "ph", after: deva_chars_1
sub "ब", "b", after: deva_chars_1
sub "भ", "bh", after: deva_chars_1
sub "म", "m", after: deva_chars_1
sub "य", "y", after: deva_chars_1
sub "र", "r", after: deva_chars_1
sub "ल", "l", after: deva_chars_1
sub "ळ", "ḷ", after: deva_chars_1
sub "व", "v", after: deva_chars_1
sub "श", "ś", after: deva_chars_1
sub "ष", "ṣ", after: deva_chars_1
sub "स", "s", after: deva_chars_1
sub "ह", "h", after: deva_chars_1

# CHARACTERS
parallel {

  # I. Vowels and Diphthongs (see Note 1)

  sub "अ", "a"
  sub "आ", "ā"
  sub "इ", "i"
  sub "ई", "ī"
  sub "उ", "u"
  sub "ऊ", "ū"
  sub "ऋ", "ṛ"
  sub "ॠ", "ṝ"
  sub "ऌ", "ḷ"
  sub "ए", "e"
  sub "ऎ", "ĕ"
  sub "ऐ", "ai"
  sub "ओ", "o"
  sub "ऒ", "ŏ"
  sub "औ", "au"

  # II. Consonants (see Note 2)
  # Gutturals
  sub "क", "ka"
  sub "ख", "kha"
  sub "ग", "ga"
  sub "घ", "gha"
  sub "ङ", "ṅa"

  # Palatals
  sub "च", "ca"
  sub "छ", "cha"
  sub "ज", "ja"
  sub "झ", "jha"
  sub "ञ", "ña"

  # Cerebrals
  sub "ट", "ṭa"
  sub "ठ", "ṭha"
  sub "ड", "ḍa"
  sub "ढ", "ḍha"
  sub "ण", "ṇa"

  # Dentals
  sub "त", "ta"
  sub "थ", "tha"
  sub "द", "da"
  sub "ध", "dha"
  sub "न", "na"

  # Labials
  sub "प", "pa"
  sub "फ", "pha"
  sub "ब", "ba"
  sub "भ", "bha"
  sub "म", "ma"

  # Semivowels
  sub "य", "ya"
  sub "र", "ra"
  sub "ल", "la"
  sub "ळ", "ḷa"
  sub "व", "va"

  # Sibilants
  sub "श", "śa"
  sub "ष", "ṣa"
  sub "स", "sa"

  # Aspirate
  sub "ह", "ha"

  # Anusvāra
  sub "ं", "ṃ"

  # Bisarga
  sub "ः", "ḥ"

  # Anunāsika
  sub "ँ", "ṁ"

  # Abagraha
  sub "ऽ", "’" # (apostrophe)

  # Medials # Needed for connecting constants
  sub "ा", "ā"
  sub "ि", "i"
  sub "ी", "ī"
  sub "ु", "u"
  sub "ू", "ū"
  sub "ृ", "ṛ"
  sub "ॄ", "ṝ"
  sub "◌", "ṝ"
  sub "ॢ", "ḷ"
  sub "ॣ", "ḹ"
  sub "े", "e"
  sub "ै", "ai"
  sub "ो", "o"
  sub "ौ", "au"
  sub "ॉ", "ô"
  sub "ॅ", "ê"
  sub "‍", "" # Used for joining

  # For consonant Virāma
  # Gutturals
  sub "क्", "k"
  sub "ख्", "kh"
  sub "ग्", "g"
  sub "घ्", "gh"
  sub "ङ्", "ṅ"

  # Palatals
  sub "च्", "c"
  sub "छ्", "ch"
  sub "ज्", "j"
  sub "झ्", "jh"
  sub "ञ्", "ñ"

  # Cerebrals
  sub "ट्", "ṭ"
  sub "ठ्", "ṭh"
  sub "ड्", "ḍ"
  sub "ढ्", "ḍh"
  sub "ण्", "ṇ"

  # Dentals
  sub "त्", "t"
  sub "थ्", "th"
  sub "द्", "d"
  sub "ध्", "dh"
  sub "न्", "n"

  # Labials
  sub "प्", "p"
  sub "फ्", "ph"
  sub "ब्", "b"
  sub "भ्", "bh"
  sub "म्", "m"

  # Semivowels
  sub "य्", "y"
  sub "र्", "r"
  sub "ल्", "l"
  sub "ळ्", "ḷ"
  sub "व्", "v"

  # Sibilants
  sub "श्", "ś"
  sub "ष्", "ṣ"
  sub "स्", "s"

  # Aspirate
  sub "ह्", "h"

  # digits

  sub "०", "0"
  sub "१", "1"
  sub "२", "2"
  sub "३", "3"
  sub "४", "4"
  sub "५", "5"
  sub "६", "6"
  sub "७", "7"
  sub "८", "8"
  sub "९", "9"
}

compose

}