170 likes | 314 Views
Grammar Generation System Remote Service. Yoon Joong Kim. Department of computer Engineering. Hanbat National University. Grammar Service and Client. Make Grammar and Dictionary Data save in Database Data update or delete. GrammarService.svc. GenerateGrammar GenerateDictionary
E N D
Grammar Generation System Remote Service Yoon Joong Kim Department of computer Engineering Hanbat National University
Grammar Service and Client • Make Grammar and Dictionary • Data save in Database • Data update or delete GrammarService.svc • GenerateGrammar • GenerateDictionary • SaveSystem • GetSystemList • GetSystemDetail • UpdateSystem • Delete System GrammarClient.aspx AsrService.svc • UploadFile • RecognizeSound • Invoke a ASR service AsrClient.aspx
Service Client GrammarService.svc GenerateGrammar GenerateDictionary CreateWordList SaveSystem GetSystemList GetSystemDetail UpdateSystem Delete System
Service Client GrammarService.svc GetSystemList GetSystemDetail AsrService.svc UploadFile RecognizeSound
Grammar Service - ServiceContract • Grammar Service Address • http://services.wins.or.kr/Asr/GrammarService.svc
Phoneme List(42 for Korean Language) • Phoneme list • c_intl = { "g", "G", "n", "d", "D", "r", "m", "b", "B", "s", "S", "", "j", "J", "c", "k", "t", "p", "h" };c_mid = { "a", "E", "ya", "ye", "v", "e", "yv", "ye", "o", "wa", "wE", "we", "yo", "u", "wv", "we", "wi", "yu", "U", "Ui", "i" };c_btm = { "", "g0", "g0", "g0", "n", "n", "n", "d0", "l", "g0", "m", "l", "l", "l", "b", "l", "m", "b0", "b0", "s", "d0", "N", "j", "c", "k", "t", "p", "h" }; • Korean phoneme list • h_intl = { "ㄱ", "ㄲ", "ㄴ", "ㄷ", "ㄸ", "ㄹ", "ㅁ", "ㅂ", "ㅃ", "ㅅ", "ㅆ", "ㅇ", "ㅈ", "ㅉ", "ㅊ", "ㅋ", "ㅌ", "ㅍ", "ㅎ" }; • h_mid = { "ㅏ", "ㅐ", "ㅑ", "ㅒ", "ㅓ", "ㅔ", "ㅕ", "ㅖ", "ㅗ", "ㅘ", "ㅙ", "ㅚ", "ㅛ", "ㅜ", "ㅝ", "ㅞ", "ㅟ", "ㅠ", "ㅡ", "ㅢ", "ㅣ" }; • h_btm = { "", "ㄱ", "ㄲ", "ㄳ", "ㄴ", "ㄵ", "ㄶ", "ㄷ", "ㄹ", "ㄺ", "ㄻ", "ㄼ", "ㄽ", "ㄾ", "ㄿ", "ㅀ", "ㅁ", "ㅂ", "ㅄ", "ㅅ", "ㅆ", "ㅇ", "ㅈ", "ㅊ", "ㅋ", "ㅌ", "ㅍ", "ㅎ" };
Grammar Service Operation • public string CreateWordList(string strword) • strWord : 입력단어 • 단어리스트 구분자: | • 다양한 형태로 입력되는 단어들을 ‘|’로 구분하는 리스트로 생성 • 예 : => 일|이|삼 => 일|이|삼
Grammar Service Operation • public string GenerateGrammar(string strWord) • strWord : 생성된 단어 리스트 =>
Grammar Service Operation • public string[] GenerateDictionary(string strGrammar) • strGrammar : 생성된 문법
Grammar Service Operation • private boolCheckGrammar(string strWord, string strGrammar) • 입력된 단어의 수와 문법의 수가 같은지 체크 • private boolCheckDictionary(string strWord, string strDictionary, string strKDictionary) • 입력된 단어의 수와 발음사전의 수가 같은지 체크
Grammar Service Operation • Publicstring SaveSystem(string strWord, string strGrammar, stirngstrDictionary, string strKDictionary, string strAuthor, string strSystemName, string strDescription) • strWord : 단어 리스트 • strGrammar : 생성된 문법 • strDictionary : 생성된 발음기호 • strKDictionary : 단어리스트의 분리된 초,중,종성 • strAuthor : 작성자 • strsystemName : 시스템 이름 • strDescription : 설명글 • 입력된 시스템 내용을 데이터베이스에 저장
Grammar Service Operation • Public DataSetGetSystemList() • Database에 있는 시스템 리스트 반환 • Public DataSetGetSystemDetail(string strID) • 시스템 상세 정보 • strID : 시스템의 일련번호 • Public void DeleteSystem(string strID) • 시스템 삭제 • strID : 시스템의 일련번호
Grammar Service Operation • Public string UpdateSystem(string strWord, string strGrammar, string strDictionary, string strKDictionary, string strAuthor, string strSystemName, string strDescription, string strID) • strWord : 수정된 단어 리스트 • strGrammar : 수정된 문법 • strDictionary : 수정된 발음기호 • strKDictionary : 단어리스트의 분리된 초,중,종성 • strAuthor : 작성자 • strSystemName : 수정된 시스템 이름 • strDescription : 수정된 설명 • strID : 수정할 시스템의 id • 수정된 시스템내용을 데이터베이스에 업데이트
Grammar Service and a sample test • GrammarService Address • http://services.wins.or.kr/asr/grammarservice.svc • GrammarService Client • http://services.wins.or.kr/ClientWebApplication/grammarClient.aspx • AsrService Client • http://services.wins.or.kr/ClientWebApplication/ASRClient.aspx