internal static string Version0WithCollationInfo(WritingSystemDefinitionV0.SortRulesType sortType) { string collationelement = GetCollationElementXml(sortType); return(string.Format( @"<?xml version='1.0' encoding='utf-8'?> <ldml> <identity> <version number='' /> <generation date='0001-01-01T00:00:00' /> <language type='en' /> </identity> <layout> <orientation characters='left-to-right'/> </layout> <collations> {0} </collations> <special xmlns:palaso='urn://palaso.org/ldmlExtensions/v1'> <palaso:abbreviation value='la' /> <palaso:defaultFontFamily value='Arial' /> <palaso:defaultFontSize value='12' /> <palaso:defaultKeyboard value='bogusKeyboard' /> <palaso:isLegacyEncoded value='true' /> <palaso:languageName value='language' /> <palaso:spellCheckingId value='ol-GB-1996' /> </special> </ldml>".Replace('\'', '"'), collationelement)); }
private static string GetCollationElementXml(WritingSystemDefinitionV0.SortRulesType sortType) { string collationelement = String.Empty; switch (sortType) { case WritingSystemDefinitionV0.SortRulesType.DefaultOrdering: collationelement = String.Empty; break; case WritingSystemDefinitionV0.SortRulesType.CustomICU: collationelement = @"<collation> <base> <alias source='' /> </base> <rules> <reset>ab</reset><s>q</s><t>Q</t><reset>ad</reset><t>AD</t><p>x</p><t>X</t> </rules> <special xmlns:palaso='urn://palaso.org/ldmlExtensions/v1'> <palaso:sortRulesType value='CustomICU' /> </special> </collation>"; break; case WritingSystemDefinitionV0.SortRulesType.CustomSimple: collationelement = @"<collation> <base> <alias source='' /> </base> <rules> <reset before='primary'><first_non_ignorable /></reset><p>a</p><s>A</s><p>b</p><s>B</s><p>o</p><s>O</s><p>m</p><s>M</s> </rules> <special xmlns:palaso='urn://palaso.org/ldmlExtensions/v1'> <palaso:sortRulesType value='CustomSimple' /> </special> </collation>"; break; case WritingSystemDefinitionV0.SortRulesType.OtherLanguage: collationelement = @"<collation> <base> <alias source='en'/> </base> <rules> <reset before='primary'><first_non_ignorable /></reset><p>a</p><s>A</s><p>b</p><s>B</s><p>o</p><s>O</s><p>m</p><s>M</s> </rules> <special xmlns:palaso='urn://palaso.org/ldmlExtensions/v1'> <palaso:sortRulesType value='OtherLanguage' /> </special> </collation> "; break; } return(collationelement); }