From 44ee072331424dae6a7918835bd15c51f56307e8 Mon Sep 17 00:00:00 2001 From: hallgren Date: Tue, 11 Feb 2014 16:43:29 +0000 Subject: Work on web api & apps based on the C run-time system + PGFService.hs: add command c-grammar, include probability in parse results + js/gftranslation.js: add start position and limit parameters, return more info to applications + Simple Translator: show two wide coverage translations + Wide coverage demo: show parse tree and probability (intended as grammar debugging aids) --- src/www/js/gftranslate.js | 32 +++++++++++++++++++------------- src/www/translator/translator.js | 22 ++++++++++++++-------- src/www/wc.html | 14 +++++++++++--- 3 files changed, 44 insertions(+), 24 deletions(-) (limited to 'src/www') diff --git a/src/www/js/gftranslate.js b/src/www/js/gftranslate.js index 0043fce61..cf85a28e3 100644 --- a/src/www/js/gftranslate.js +++ b/src/www/js/gftranslate.js @@ -5,30 +5,36 @@ var gftranslate = {} gftranslate.jsonurl="/robust/Translate8.pgf" gftranslate.grammar="Translate" // the name of the grammar -gftranslate.languages="Bul Chi Eng Fin Fre Ger Hin Swe".split(" ") - // hardwired for now gftranslate.call=function(querystring,cont) { http_get_json(gftranslate.jsonurl+querystring,cont) } -// Translate a sentence to the given target language -gftranslate.translate=function(source,from,to,cont) { +// Translate a sentence +gftranslate.translate=function(source,from,to,start,limit,cont) { var encsrc=encodeURIComponent(source) var g=gftranslate.grammar - function extract(result) { - cont(result[0].translations[0].linearizations[0].text) - } + function extract(result) { cont(result[0].translations) } if(encsrc.length<200) // match limit in runtime/c/utils/pgf-server.c gftranslate.call("?command=c-translate&input="+encsrc - +"&from="+g+from+"&to="+g+to+"&limit=1",extract) - else cont("[GF robust parser: sentence too long]") + +"&from="+g+from+"&to="+g+to + +"&start="+start+"&limit="+limit,extract) + else cont([{error:"sentence too long"}]) } // Get functions to test which source and target langauges are supported gftranslate.get_support=function(cont) { - if(!gftranslate.targets) gftranslate.targets=toSet(gftranslate.languages) - function ssupport(code) { return gftranslate.targets[code] } - function tsupport(code) { return gftranslate.targets[code] } - cont(ssupport,tsupport) + function support(code) { return gftranslate.targets[code] } + function init2(grammar_info) { + var ls=grammar_info.languages + gftranslate.grammar=grammar_info.name + var langs=[], pre=gftranslate.grammar, n=pre.length + for(var i=0;i @@ -49,12 +50,14 @@ body:target h1, body:target div.modtime { display: none; }   
+
+

-Last modified: Tue Jan 28 17:38:32 CET 2014 +Last modified: Tue Feb 11 17:37:40 CET 2014
@@ -64,16 +67,21 @@ body:target h1, body:target div.modtime { display: none; }