using System;
using System.Collections.Generic;
using System.Xml.Serialization;
///
/// Represends a manageable collection of syllables, consonants and/or vowels.
///
[XmlRoot]
public class Syllabary : ICloneable {
///
/// The title of the syllabary, like a language.
///
[XmlElement("Title")]
public string title { get; set; }
///
/// The list of syllable the syllabary contains. A syllable is a combination of consonants and vowels.
///
[XmlArray("Syllables")]
[XmlArrayItem("Syllable")]
public List syllables { get; set; }
///
/// The list of consonants the syllabary contains. A consonant is a speech sound that is articulated with complete or partial closure of the vocal tract.
///
[XmlArray("Consonants")]
[XmlArrayItem("consonant")]
public List consonants { get; set; }
///
/// The list of vowels or semivowels the syllabary contains. A vowel is a sound pronounced with an open vocal tract so that there is no build-up of air pressure at any point above the glottis.
///
[XmlArray("Vowels")]
[XmlArrayItem("Vowel")]
public List vowels { get; set; }
///
/// The way the software will join a syllable with the previous added element.
///
[XmlElement("beforeSyllable")]
public BeforeSyllable beforeSyllable;
///
/// The way the software will join the next element with the added syllable.
///
[XmlElement("afterSyllable")]
public AfterSyllable afterSyllable;
public Syllabary() {
this.syllables = new List();
this.consonants = new List();
this.vowels = new List();
}
protected Syllabary(Syllabary aSyllabary) {
title = aSyllabary.title;
syllables = new List(aSyllabary.syllables);
consonants = new List(aSyllabary.consonants);
vowels = new List(aSyllabary.vowels);
beforeSyllable = aSyllabary.beforeSyllable;
afterSyllable = aSyllabary.afterSyllable;
}
public object Clone() {
return new Syllabary(this);
}
}