@indic-transliteration/sanscript
Version:
Sanscript is a transliteration library for Indian languages. It supports the most popular Indian scripts and several different romanization schemes. Although Sanscript focuses on Sanskrit transliteration, it has partial support for other languages and is
98 lines (97 loc) • 3.44 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://github.com/indic-transliteration/sanscript.js/raw/master/src/sanscript.schema.json",
"title": "Sanscript Scheme",
"description": "A representation of a writing system (Brahmic or roman) that can be used for Sanskrit and other Indic languages",
"type": "object",
"properties": {
"vowels": {
"description": "'Independent' forms of the vowels. These are used whenever the vowel does not immediately follow a consonant.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 16
},
"vowel_marks": {
"description": "'Dependent' forms of the vowels. These are used whenever the vowel immediately follows a consonant. If a letter is not listed in `vowels`, it should not be listed here.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 15
},
"yogavaahas": {
"description": "Miscellaneous marks, all of which are used in Sanskrit.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 2
},
"virama": {
"description": "In syllabic scripts like Devanagari, consonants have an inherent vowel that must be suppressed explicitly. We do so by putting a virama after the consonant.",
"type": "array",
"items": {
"type": "string"
},
"maxItems": 1
},
"consonants": {
"description": "Various Sanskrit consonants and consonant clusters. Every token here has an explicit vowel. Thus 'क' is 'ka' instead of 'k'.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 36
},
"symbols": {
"description": "Numbers and punctuation",
"type": "array",
"items": {
"type": "string"
},
"minItems": 14
},
"zwj": {
"description": "Zero-width joiner. This is used to separate a consonant cluster and avoid a complex ligature.",
"type": "array",
"items": {
"type": "string"
},
"maxItems": 1
},
"skip": {
"description": "Dummy consonant. This is used in ITRANS to prevert certain types of parser ambiguity. Thus 'barau' -> बरौ but 'bara_u' -> बरउ."
},
"accents": {
"description": "Vedic accent. Udatta and anudatta.",
"type": "array",
"items": {
"type": "string"
},
"minItems": 2
},
"accented_vowel_alternates": {
"description": "Alternates for accented vowels. Eg. á and é as alternates of á and é",
"type": "object"
},
"candra": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 1
},
"other": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 9
}
},
"required": [
"vowels", "virama", "consonants", "symbols"
]
}