CN1461445A - 对所选数据域进行定制和呈现的方法 - Google Patents

对所选数据域进行定制和呈现的方法 Download PDF

Info

Publication number
CN1461445A
CN1461445A CN00814425A CN00814425A CN1461445A CN 1461445 A CN1461445 A CN 1461445A CN 00814425 A CN00814425 A CN 00814425A CN 00814425 A CN00814425 A CN 00814425A CN 1461445 A CN1461445 A CN 1461445A
Authority
CN
China
Prior art keywords
user
name
information
network element
language information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN00814425A
Other languages
English (en)
Inventor
普兰卡什·伊耶
皮雨什·戈尔
雷杰夫·莫希德雷
艾米塔什·辛哈
帕雷萨德·克罗萨普里
罗纳德·马克
沙石·维蒂尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Everypath Inc
Original Assignee
Everypath Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Everypath Inc filed Critical Everypath Inc
Publication of CN1461445A publication Critical patent/CN1461445A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4938Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals comprising a voice browser which renders and interprets, e.g. VoiceXML
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)

Abstract

提供了一种方法,利用从数据的数学常规表达式中提取特征标记,所选择和识别的数据元素,可以通过适当的语言翻译器后呈现给查询者,这种系统适于通过特征标记引用存取数据元素。语言翻译器可以包括文本到语音翻译程序、与之素对应的已存储音频形式和与HTML形式相适应的简化文本表达程序。更进一步,本发明还提供了对选择元素的识别、定制,使之适于文本上下文呈现,通过适当的语言翻译器对所选择和定制的数据进一步说明。

Description

对所选数据域进行定制和呈现的方法
技术领域
本发明涉及不同格式定制数据的呈现,包括音频和有限可视格式。本发明特别涉及将超文本链接标示语言(HTML)格式的数据呈现为其它的格式,如除源格式以外的音频及视频格式。
目前,在HTML格式中包含大量有价值的信息。但是,HTML主要是设计用来在特定的可视化环境中进行访问,即通过网络浏览器所应用的图形用户接口进行访问。因此有必要通过其它接口和阅读程序获取HTML上的数据。本发明就是要解决这种需求中的关键问题。
发明内容
根据本发明提供了一种方法,在计算机网络中,通过从数据的数学标准形式中抽取特征标记的方式选择和识别数据元素,依靠通过参考特征标记访问元素的系统,经过适当的语言翻译器将这些数据呈现给查询者。这个语言翻译器可以包括文本到语音翻译程序、与元素对应的已存储音频形式和与HTML形式相适应的简化文本表达程序。本发明的另一个方面是,本方法还包括使翻译更适合上下文的选择元素的识别、定制,以及通过适当的语言翻译器对选择和定制数据的进一步说明。
本发明的一个突出特点是HTML页可以用标准形式表示。本发明的另一个重要特点是只需要选择元素,而不必选择元素的实际值,这样就可以用当前值对它进行动态更新和呈现。
为更好地理解本发明,下面结合附图,对本发明进行详细说明。
附图说明
图1是本发明的系统框图,其中运行时引擎使用根据本发明的适当呈现工具所识别的元素从HTML页上检索信息。
图2是本发明翻译实例的流程图。
具体实施例的详细说明
图1所示为系统101的方框图,其中带有主运行时组件和相关的元素。从主网络服务器12检索出网页11后,交给翻译器20,翻译器从共享的持久存储器14中检索相应的目标语言文档21,生成所谓WML网页23和运行时对象24。设计者13须预先从HTML或源语言网页11中选择一些数据,此后称作“组件”17,以便自动生成唯一的特征标记,运行环境通过运行时引擎22使用该标记可以从HTML页中提取实时数据。运行时引擎22与电话服务器或其它翻译服务器26连接,用户28可以用翻译服务器26提供的格式从主网络服务器得到所需的时实信息。运行时,当翻译器20从网站下载HTML页时,它的作用像主网络服务器12的浏览器。在具体实施例中,翻译器20也从共享持久存储器14中检索目标语言脚本,目标语言是为这些目的所建立的语言,称作AML。对于每一个网页来说,相应的AML脚本告诉翻译器如何创建运行时对象24。这些运行时对象24传送到与调用者交互作用的运行时引擎22。运行时引擎22运用文本到声音或文本到减量文本技术,通过语音或其它接口设备读取文本和向用户28发送提示信息。当电话用户28发出响应时,运行时引擎22利用语音识别技术或text-to-nine(这里称作T9)技术把呼叫响应转化为文本。然后翻译器20把来自呼叫者的响应提交回能够对要求产生解释和响应的主网络服务器12。
由于可以将脚本设置为编码页内流,且可以包含网页的URL,翻译器能够请求适当的网页。运行时主网络服务器12可以看做是与传统的网络浏览器相连接。
除了创建运行时对象24,运行时翻译器20也可为使用WML文件的第三方应用程序创建这种文件。对于从门户访问可用音频网站的访问者,也可以使用定制的小程序。
运行时操作的一个重要方面是翻译过程,下面对其进行解释。
A.翻译
本节说明的是如何对上一节所述的各种组件进行翻译。
A.1翻译:格式
格式样本的翻译如下。每一个格式的输入元素都以STEP字样出现。步骤(step)元素有一个提示(prompt)元素和一个输入(input)元素,提示元素告诉用户本输入的特性,输入元素汇集来自用户的输入。图2为此处所说明的翻译样本流程图。
             <Dialog Name="Logon"greeting="Logon Page">

             <component Name="Logon"TYPE="FORM"
position=1></component>

              <STEP Name="Logon">

                    <PROMPT>Please speak the eight digits in your account number
</PROMPT>

                    <INPUT TYPE="DIGITS"NAME="SignonAccountNumber"

      NEXT="#F2"> </INPUT>

             </STEP>

             <STEP Name="F2">

                   <PROMPT>Please speak your password</PROMPT>

                   <INPUT TYPE="STRING"NAME="SignonPassword"NEXT=

    "#F3"></INPUT>

            </STEP>

            <STEP Name="F3">

                  <PROMPT>Please choose from one of the following options.

                  Account Overview,Stock Trading,Options Trading,Mutual Fund

                  Trading,Corporate Bond Trading,Real-Time Quotes.Account

                  Balances and Position.</PROMPT>

                  <INPUT TYPE="OPTIONLIST"NAME="StartAnchor"

     NEXT=”#IF4”

                       grammar=.optionlist

           //[comment:The grammar defines what the user is expected to say or input
				
				<dp n="d3"/>
             at this point.If the user says something else,an error is raised and is

             handled according to the on Error step.]

                           onError=#error>

                           <RENAME VARNAME=”StartAnchor”

            GRAMMARNAME=”X”>

            //[comment:The forgoing is the mapping between the variable name and

            the grammar name.]

                           <option Value="Ccbodyi">Account Overview </OPTION>

                           <option Value="TradingEQ">Stock Trading</OPTION>

                           <option Value="TradingOpt">Options Trading

             </OPTION>

                           <option Value="TradeMF">Mutual Fund Trading

             </OPTION>>

                           <option Value="TradeCorpBonds">Corporate Bond

             Trading</OPTION>

                           <option Value="Quotes">Real-Time Quotes</OPTION>

                           <option Value="Balance">Account Balances </OPTION>

                           <option Value="Position">Positions </OPTION>

                    </INPUT>

             </STEP>
//[comment:The following is for a form.In a form,hidden variables,actions and methods
are always pulled from the HTML or source page.]

             <FORM

                 NAME="F4"

                 PARAMETERS="StartAnchor=$amlvar(StartAnchor)&amp;SignonPas

                 sword=$amlvar(SignonPassword)&amp;SignonAccountNumber=$amlv

                 ar(SignonAccountNumber)"

                 Component=”Logon”>

                 <PROMPT>Attempting to Log on to Charles Schwab

        </PROMPT>

             </FORM>

             <flow
				
				<dp n="d4"/>
              Name="formflow"

              Source="https://trading2.schwab.com/trading/signon/."
Sourceaudio=logon

              Destination="...trading/generic/?FormNarne=DelayedQuotes"
Destinationaudio=headlines

              Destinationstep=headlines>

      </flow>

      </Dialog>
属性定义了给定步骤的转换过程。例如,参见图2,在第一步F1,登录步骤中,提示信息要求用户输入8位的账号,当接收到用语音输入的该账号后,它便建立一个转换过程到步骤F2。在登录步骤中,输入元素的名称(name)属性SignonAccountNumber为一个“全局”变量且可以被后面做为$amlver(SignonAccountNumber)进行存取。继续到步骤F2,提示输入口令,接收到输入后,便建立一个转换到步骤F3。步骤F3为一个选项列表,用户能够在多个选项中挑选一个。选择完成后,用户转换到步骤F4。参数(parameters)属性说明需要传递到动作url的参数,最后,提示元素向用户反馈一个信息说明哪些工作已经完成。流(flow)元素定义到下一个步骤的转换—给定目标url,设计者和运行时系统能够确定继续浏览所必须的下一个AML页。
识别语法为变量指定了一个名称,即X,其中放置变量的值,该步骤有与input(Startanchor)相对应的变量名。有时情况会有所不同,即当语法在多个不同的输入步骤间共享时,它们会用不同的变量名称。此时,RENAME元素会帮助定义识别变量名到该步骤的变量名的对应关系。如果语法分配多个变量,则需要为每个变量指定一个重命名(rename)元素。例如,在下面的代码段中,所有的变量都由语法分配,且它们被重新映射到变量名,这些变量名在后面的示例代码中使用。
              <STEP Name="stock">

                    <PROMPT> What would you like to trade?</PROMPT>

                    <INPUT TYPE="GRAMMAR"GRAMMAR=".StockTrade2"
onError=”#error”>

                         <RENAME VARNAME=”TradeType”
GRAMMARNARN=”A1”>

                         <RENAME VARNAME=”Symbol”
GRAMMARNAME=”A2”>

                         <RENAME VARNAME=”OrderType”
GRAMMARNAME=”A3”>

                         <RENAME VARNAME=”LimitPrice”
GRAMMARNAME=”A4”>

                         <RENAME VARNAME=”TimeLimit”
GRAMMARNAME=”A5”>

                         <RENAME VARNAME=”Quantiyty”
GRAMMARNAME=”A6”>

           </INPUT>

     </STEP>
如果由于某些原因,(声音)识别引擎不能理解用户所说的内容,则会产生一个错误状态。如果没有指定onError属性,则用默认的方式对错误进行处理:提示会重复多次,直到产生正确的识别。用户也可以选择用她或他自己定义的错误步骤来代替默认方式。在下面的例子中,用户定义了一个错误步骤作为全局步骤。该步骤定义的动作能应付各种各样的错误。该步骤为全局性的,即它可以被其它随后的aml页所调用。
       <STEP name=error global=true>

             <switch name=$amlvar(amlerror.type)>
				
				<dp n="d6"/>
              <case value=RECOGNlTION_FAILURE
next=”#recognition_failure”></case>

              <case value=CALLER_TIMEOUT
next=”#caller_timeout”></case

     </switch>
</STEP>
<STEP name=recognition_failure>

      <prompt>I did not understand what you said.</prompt>

      <switch name=$amlvar(amlerror.number_errors_page)>

              <case value=1 next=”#first_error”></case>

              <case value=2 next=”#second_error”></casc>

              <case value=3 next=”#third_error”> </case>

      </switch>
</STEP>
<STEP name=first_error>

      <prompt>$amlvar(lastprompt) </prompt>.
</STEP>
<STP name=second_error>

      <prompt>$amlvar(lastshadowprompt) </prompt>
</STEP>
<STEP name=third_error>

    <prompt> Giving up!</prompt>

    <INPUT type=none next=”navigation”>
<STEP>
A.2翻译:表
表能够以多种方式读出。本节说明两种可能的方式。一种方式是每次读出表的一行,然后询问用户是否继续进行。另一种方式是每次读出表的所有行,允许用户在任何时间强插进入。
A.2.1每次一行
举例来说,用户登录到系统后,他或她可以利用浏览器转换到一个网页,该网页中有一个具体股票代号标题新闻的表。选择感兴趣的表单元。它们可以分别说明数据、时间和标题新闻。表的每一行是股票代号的新闻标题。这个例子相应的AML页见后。它包括识别和翻译两部分。表中行的识别构成一个loop循环,示例性地从html页中选出单元1、3和5。在这个页面中只有一个步骤,即Headlines。它有一个提示和一个输入元素。本步骤的输入元素放在循环(loop)元素中,该循环在组件属性所说明的整个组件内循环。与输入元素相关的是另外一个提示,它在每个loop循环中都会出现。在本例中,与loop相关的是用数组变量说明的提示,即$amlvar(Headlines[index].date),它代表当前行的日期变量。
对option(选项)标记来说,next属性具有多个含义:(1)next=”#goto”:说明接下来的步骤名叫goto(2)next=”return”:返回到调用步骤(3)else:如果next指定为其它内容,举例来说,next=”$amlvar(c.continue)”,或next=http://www.amazon.com/select/select.cgi,则下一个step将经过一个固定(anchor)元素。
每个重复过程中的prompt后面,option的“next”属性有两个可能的值:(i)continue(继续),这是保留字,说明系统将进行到下一个loop循环,(ii)$amlvar(Headlines[index].date),说明如果用户说“yes”,系统必须转换到指定的url。接下来的flow元素定义继续浏览所需的AML页。下面是嵌有声音提示的AML代码:
              <DIALOG name=headlines greeting="news headline">

              //...component definition would be here...//

              <STEP Name="Headlines">

                      <PROMPT>This is a list of all the headlines</PROMPT>

                      <LOOP name=headlines loopindex=index start=Oincrement=1
end=$amnlvar(headlines.length)next=query></LOOP>

             </STEP>
				
				<dp n="d8"/>
              <STEP name=”query”>

              <PROMPT>

              News on Date $amlvar(Headlines[index].date) at

              time $amlvar(Headlines[index].time)$amlvar(Headlines[index].news).

              Ifyou want to hear the complete story say Yes or say No to go to the next
headline

              <PROMPT>

                  <INPUT type=optionlist grammar=”.YesNoNavigation”>

                       <OPTION next=”return”> No </OPTION>

                       <OPTION NEXT="$amlvar(headlines[index].url)">Yes

      </OPTION>

            </INPUT>

            </STEP>

                 <FLOW

                     Name="detailflow"

                     Source="/parser/test/schwab/news.html"

                     Sourceaudio=headlines

                     Destination="/parser/test/schwab/<amlvar>.html"

                     Destinatiornaudio=/parser/test/schwab/detail.vox

                     DestinationStep="detail">

               </FLOW>

           </DIALOG>
A.2.2所有行一起
可以一行接一行地读出所有行,在读取完成后向用户发出提示说明。也可增加强插支持功能,即允许用户在列表的过程中进行中断。
      <STEP Name="Headlines">

        <PROMPT>
				
				<dp n="d9"/>
              Here are the headlines.If you want to hear the complete
story say Yes for the headline

      </PROMPT>

      <LOOP name=headlines loopindex=index

              rext=”#query”start=O increment=l
and=$amlvar(headlines.length)>

    <TLOOP>
</STEP>
<STEP name=”query”>

    <PROMPT>

              News on Date $amlvar(Headlines[index].date) at

              time $amlvar(Headlines[index].time)
$amlvar(Headlines[index].news).

     </PROMPT>

     <INPUT NAME="choice"TYPE=OPTIONLIST

          BARGEIN=TRUE

              grammar=".YesNoNavigation"

              onError=#error>

              <option NEXT="$amlvar(headlines[index].url)">Yes
</OPTION>

              <option next=”rerurn”>No</OPTION>

      </INPUI>
</STEP>
强插功能允许用户在听新闻时,当想听详细的新闻时只要说“yes”。这样可以减少需要用户说的内容。
A.3翻译:变量循环元素
考查下面变量循环实例翻译的例子。组件识别之后的内容与前面例子中表的翻译没有多大不同。
     <STEP Name="resultssection">

           <PROMPT>

               Here are the book search results.If you want to hear more

     details about a book say Yes

           </PROMPT>

           <LOOP name=resultssection2 loopindex=index

                 start=O increment=1 end=$amlvar(resultssection2.length)

     next=”#part”>

           </LOOP>

     </STEP>

     <STEP name=”part”>

           <PROMPT>

               Title $amlvar(resultssection2[index].title]ships in

                     $amlvar(resultssection2[index].shipping).The authors for

                     this book are $amlvar(resultssection2[index].author).It is a

                     $amlvar(resultssection2[index].type)and was published in

                     $amlvar(resultssection2[index].date).The price is

                     $amlvar(resultssection2[index].price).

                </PROMPT>

                <INPUT NAME="choice"TYPE=OPTIONLIST bargein=true
grammar=".YesNoNavigation"

                 onError=“#error”>

                 <option NEXT="$amlvar(resulssection2[index].detail)">

    yes</OPTION>

                 <option next=”return”>no</OPTION>

          </INPUT

      </STEP>
A.4翻译:替代结构
在前面重复结构的示例中,如果必须输入时,每一行都有相同的结构,相同选择的单元。本节的例子中,行的结构是不相同的。
例1
对于下面的表,可以根据表中不同的内容用不同的提示信息进行翻译:
Stock   Price    Quantity     Operation      Date
IFMX    10.500   100          BUY            5/25/98
ORCL    51.5     200          SELL           5/26/98
IBM     171.5                 DIVIDEND       5/27/98
IBM     51.5                  INTEREST
               <STEP Name="transactionList"next=”#finish”>

                     <LOOP name=transactionList loopindex=index

               start=0 end=$amlvar(transactionList.length)increment=1
next=”#iteration”>

                        LOOP>

              </STEP>

              <STEP name=”finish”>

                    <PROMPT>You have now heard your entire.transaction list.

       Should I return to the main menu?

                       </PROMPT>

                       <INPUT TYPE=OPTIONLIST grammar="YesNoNavigation"
NAME="choice"

                            onError=”#error">

                            <option NEXT="/trading/center"Value="yes">
yes</OPTION>

                            <option Next="#exit"Value="no">no</option>

                      </INPUT>

                </STEP>

                <STEP name=”iteration”next=”retum”>

                      <SWITCH name=transactionList[index].define>

                           <CASE value=”INTEREST”next=”#interest”></CASE>
				
				<dp n="d12"/>
                <CASE value=”DIVIDEND”next=”#dividend”></CASE>

                <CASE value=default     next=”#default”></CASE>

           </SWITCH>

     </STEP>

     <STEP name=”interest>

           <PROMPT>Interest $amlvar(transactionList[index].icol2)was
posted on $amlvar(transactionList[index].icolS).</PROMPT>

            <INPUT type=none next=”return”>

     </STEP>

      <STEP name=”dividend”>

            <PROMPT>Dividend Samlvar(transactionList[index].dcol2)was
posted on amlvar(transactionList[index].dcol5)

            for stock symbol $amlvar(transactionList[index].dcol1).

            </PROMPT>

            <INPUT type=none next=”rerurn”>

      </STEP>

      <STEP name=”default”>

            <PROMPT> A $amlvar(transactionList[index].col4) transaction of

            $amlvar(transactionList[index].col3)shares at

            $arnlvar(transactionList[index].col2)of

            $amlvar(transactionList[index].col1)was posted on

            $amlvar(transactionList[index].co15).

            </PROMPT>

            <INPUT type=none next=”return”>

      </STEP>
例2
下面的AML代码翻译了一个交易历史表。其中有两个loop---一个对股票代号循环,另一个对每个代号的交易历史循环。
          <Dialog Name="allstocks"greeting="This is the Trade History page">

          <!-Loop over all the stocks one by one>
				
				<dp n="d13"/>
     <STEP Name="allstocks">

           <loop name=stocks bargein=true loopindex=index1

                 start=0 increment=1 end=$amlvar(stocks.length)

                 next=”#iterationl”>

           </loop>

      </STEP>

      <STEP name=”iterationl”>

            <PROMPT>Please say yes if you want to listen to the orders for
$amlvar(stocks[index1].stock).

            </PROMPT>

            <INPUT TYPE="OPTIONLIST"GRAMMAR=".YesNo"NAME
="choice">

                 <option Next="#stockl"Value="Yes"> </option>

                 <option Next="return"Value="No"> </option>

            </INPUT>

      </STEP>

      <!-For each stock,loop over the trades for that stock>

      <STEP Name="stockl"next=return>

            <LOOP NAME=stockl loopindex=index2 next=”#iteration2”

                  start=3 increment=1 end=$amlvar(stockl.length)

                  order=$amlvar(stockl[index2].closed)direction=descend>

            <LOOP>

      </STEP>

      <STEP name=”iteration2”>

            <switch name=stockl[index].define>

                    <case value=”CLOSED”next=”#closed”> </case>

                    <case value=”OPEN”next=”#open”></case>

            </switch>

      </STEP>
				
				<dp n="d14"/>
<!Prompt for open trades>
<STEP name=”open”>

    <PROMPT>

        $amlvar(stockl[index2].ordemo) is currently open,and is a
        $amlvar(stockl[index2].action)

        for $amlvar(stockl[index2].qty) shares of

        $amlvar(allstocks[indexl].stock) at price

        $amlvar(stockl[index2].price).It was posted on

        $amlvar(stockl[index2].date)with a time limit of

        $amlvar(stockl[index2].limit).

   </PROMPT>

   <INPUT type=none next=”return”>
</STEP>
<!prompt for closed trades>
<STEP name=”closed”>

    <PROMPT>

        $amlvar(stockl[index2].order no)was a

        $amlvar(stockl[index2].action) for

        $amlvar(stockl[index2].qty)shares of

        $amlvar(allstocks[indexl].stock)at price

        $arnlvar(stockl[index2].price).It was posted on

        $amlvar(stockl[index2].date)with a time limit of

        $amlvar(stockl[index2].limit).The transaction was closed

        on $amlvar(stockl[index2].date2)and the action was

        $amlvar(stockl[index2].action2).

   </PROMPT>

   <INPUT type=none next=”return”>
</STEP>
B.流:说明URL/格式动作
由于有url或格式的动作(action)元素,从一个html页到另一个html页的转换是可行的。根据本发明,这也定义了相应的音频网页规范间的转换。因此就可能有一个称作“流”的映射,它定义了目标url和目标声音元素。为达到简化和更易查找的目的,也可以存储源url和源网页的信息。url可以具有静态和动态部分。在操作中指定变量url的组件说明的结构属性是可以再使用的。
在GUI部分,将html页转换到音频“程序”存在两个级别。在第一个级别中,单个的html页被转换到相应的音频页。在第二级别中,显示所有音频页,允许用户用与html组件相对应的url/格式动作方法定义各种音频页间的转换。对每个url转换,得到一个音频元素定义,该定义会在“urls->audioid”映射关系内部保留,这里audioid为音频页的标识符。
用流元素指定url的转换。flow元素指定url和其相应的对话。考虑在html页中下面href的语句。
    <a
         HREF="/trading/generic/?FormName=DelayedQuotes"
         NAME=CompanyNews TARGET="CCBodyi"
         onMouseOver="parent.self.stanus=′Company News′;renturn true">
    <u>Company</u>
    </a>
如果允许用户转换到这个url(目标地址),相应的流规范将会是:
    <flow
          Name=“CompanyNews”
          Source=”https://trading2.schwab.com/trading/signon/.”
          Sourceaudio=logon
          Destination=“...trading/generic/?FormName=DelayedQuotes”
          Destinadonaudio=headlines>
    </flow>
同样地,如果选择了Amazon主页实例中的格式组件,就隐含地选择了动作方法进行转换。这样有必要为它定义流元素,格式元素开始的实例如下:
    <form method="post"
          action="/exec/obidos/generic-quicksearch-query/002-0363237-
2566852">
格式提交的目的url为:http://www.amazon.com/exec/obidos/generic-quicksearch-query/002-0363237-2566852。静态部分:http://www.amazon.com/exec/obidos/generic-quicksearch-query,变量部分:002-0363237-2566852。变量部分为session-id,它被指派为一个到amazon.com页的新对话。该页的流组件可以定义如下:
     <flow
                name="Resultsflow"
                source="http://www.amazon.com/exec/obidos/generic-quicksearch-query/<amlvar name=sessionid>>"
                destination="http://www.amazon.com/exec/obidos/generic-quicksearch-query/<amlvar name=sessionid>"
                sourceaudio=homepage
                destinationaudio=Resultspage>
          </flow>
呼叫/语音用户可以使用导航命令在不同的音频步骤间进行导航:向后、向前、停止、继续和刷新。步骤间定义的转换记为转换步骤。向后和向前命令会分别将呼叫者带到后面或前面的下一个转换步骤。停止会中断当前的翻译或对话的后台操作。继续会从停止的位置开始工作。刷新会刷新当前正检查其会话的html页。因此在下面的AML语言代码中,可以用属性转换(缺省值为“false”)将headlines步骤标记为转换步骤:
      <STEP Name="Headlines"transition=true>

            <PROMPT>

                 Here are the headlines.If you want to hear the complete

      story say Yes for the headline

            <PROMPT>

            <LOOP name=headlines loopindex=index

                  next=”#query”start=0 increment=1

      end=$amlvar(headlines.length)>

            </LOOP>

      </STEP>
不是所有的步骤都需要转换。因此,在内部,格式可以被翻译为多个步骤,而且可以使用户总是转换到格式的第一个步骤。
C.AML(DTD说明)
C.1全部文档
下面是音频语言AML的一个规范。按照本语法的实例可以创建其它语言,而且修改语言以操作其它介质或使之服从定义的约束。因此,本说明是说明性且没有限制。
              <!ELEMENT DIALOG(component|form|step|flow)*>

              <!ATTLIST dialog    #audio page element

              name       CDATA     #name of object

              url        CDATA     #structure of url

              greeting   CDATA     #information greeting user on entering
audio page

                                   #this is read out when user reaches this

     audio page for the

                                   #first time,or thereafter while navigating
through the

                                   #audio pages

            cookie       CDATA     #any associated cookies with page,may be
necessary for

            >

            Identification

            <!ELEMENT COMPONENT(component|idloop|idswitch)*>

            <!ATTLIST component #component element-

                  type        CDATA     #type of object form/table/tr/td/input
etc.

                  position    CDATA     #ordinal element number of
component in the parent container

                  url         CDATA     #identifying url.url are case

   sensitive

                  name        CDATA     #name of component

                  htmlname    CDATA     #Name on the html document
				
				<dp n="d18"/>
                        id           CDATA                 #ID of html object

                        dinension    CDATA

                                                           #for forms #of visible controls in the

                                                           form # for a table number of rows #

                                                           for atr number of cells visible

                                                           (true|false)# set to“true”if the

                                                           nonvisible data needs to be stripped

                      suucture       CDATA                 #structure object>

                <!ELEMENT idswitch(idcase)*>

                <!ATTLIST idswitch

                name      CDATA                            #what do you switch on?>

                <!ELEMENT idcase(component|idloop|idswitch)*>

                <!ATTLIST idcase

                       define     CDATA

                                                           #used to define component types,

                                                           later # in rendering to identify type of

                                                           #component being rendered

               >

               <!ELEMENT idloop(component|idswitch|idloop)*>

               <!ATTLIST idloop

                     ignore 
(ALL|ALL_BUT_FIRST|ALL_BUT_LAST|LAST|EVEN|ODD)

               name        CDATA                           #name of component

               loopindex   CDATA                           #name of loop index

         >

         <!ELEMENT FLOW

         <!ATTLIST flow                                   #flow element

               name        CDATA;                         #name of element

               source      CDATA;                         #structure specification of source url

               destination CDATA;                         #structure specification of

  destination url

               sourceaudio CDATA;                         #source audio page id

               destinationaudio CDATA;                    #destination audio page id

               destinationstep  CDATA;                    #starting step in new audio element
				
				<dp n="d19"/>
       >

       <!ELEMENT AMLVAR>

       <!ATTLIST amlvar        # variable element-

              name          CDATA                    #name of variable

              type(char|int|money|date|time)     #what is the type of this
variable

                                                     #this is used for rendering,e.g.,

                                                     #if it is of type date,and looks like

                                                     #1/10/99,it would be rendered as

                                                     #October 1,1999

              format      CDATA                      #for date/time/money,what is the
format

                                                     #of this variable on the html page

                                                     #mmddy4/y4/etc

              render      CDATA                      #how is this rendered to the caller

                                                     #mmddy4/y4/etc

      <!ELEMENT step(prompt)(input|switch|loop)> 

      <!ATTLIST step

              name     ID REQUIRED

              Transition (true|false)               #transitional step for
navigation

              Next          CDATA                   #what is the next step after this step.
Valid ony for steps # that enclose loop and switch

       >

       <!ELEMENT input(option|rename)*>

       <!ATTLIST input

              name        ID            #

              next        CDATA         # what is the next step after this step

              bargein     (Y|N)        # default is yes (Y)

              grammar     CDATA         # grammar describing what to expect
				
				<dp n="d20"/>
                                                        #from the user at this point;some
default

                                                        #grammars available,such as
yes/no,etc.

                       keypad       CDATA               #grammar describing keypad stuff

                       orError      CDATA               #error handling step if there is a

                                                        #problem in this

                                                        #input from the user

                       type               (TEXT|DIGITS|OPTIONLIST|NONE)

               >

               <!ELEMENT option(CDATA)>

               <!ATTLIST option

                       value        CDATA               #value of option

                       next  C      DATA                       #what is the next step

               >

               <!ELEMENT switch (case)*>

               <!ATTLIST switch

                       component    CDATA               #what do you switch on?

               >

               <!ELEMENT case >

               <!ATTLIST case

                       value        CDATA               #value for this case;

                       next         CDATA               #step containing body of case
				
				<dp n="d21"/>
              <!ELEMENT prompt(CDATA)>

              <!ATTLIST prompt

                     wavefile    CDATA           #wavefile containing prompt

              >

              <!ELEMENT loop>

              <!ATTLIST loop

                     component   CDATA           #name of component on which to
loop on

                     next        CDATA           #step containing body of loop

                     loopindex   CDATA           #name of loop index

                     start       CDATA           #starting value for loop index

      (default 0)

                     end         CDATA           #ending value for loop index

      (default # length of component)

                     increment   CDATA           #loop index increment(default 1)

                     order       CDATA           #part of component on which it

      needs to # be sorted

                     direction (ascend|descend) #render in ascending/descending

      order if

              >

              <!EMENT rename>

              <!ATTLIST rename

                        VARNAME  CDATA           #name of aml variable

                    GRAMMARNAME  CDATA           #grammar slot name

              >

              The invention has been described with reference to specific embodiments.
Other embodiments will be evident to those of ordinary skill in the relevant art.It is
therefore not intended that the invention be limited,except as indicated by the appended
claims.
这里参考具体实施例对本发明进行了说明。对于那些对相关技术领域的普通技术人员来说其它的实施例是很明显的。因此除在本发明的权利要求书所指定内容以外,本发明是不受限制的。

Claims (33)

1.在具有源数据和所述源数据识别程序存储装置的计算机系统中,一种将二维数据表达方式翻译为音频或视频格式的方法,所述二维数据是标准数学表达式的一部分,所述表达式是从标准数学元素分析中导出的特征标记,所述翻译的方法包括:
响应用户的查询,从所述存储装置中检索所述特征标记;
从所述源装置中检索由所述特征标记指定的所述关心元素的当前值;
通过预选的语言翻译器将当前值翻译到输出部分;
将所述输出提供给用户。
2.根据权利要求1的方法,其特征在于,所述预选的语言翻译器是文本到语音翻译器。
3.根据权利要求1的方法,其特征在于,所述预选语言翻译器是一套已储存语音表达方式,这些表达方式与每个所选元素预选值相对应。
4.根据权利要求1的方法,其特征在于,所述预选语言翻译器包括映射到每一个声音元素预选值的简化文本表达处理器引擎。
5.一套系统,包括:
从主机网络服务器接收说明网络元素的源语言信息的装置;
识别至少一个由源语言信息说明的元素的标准数学表达式的接收装置;
用源语言信息和标准数学表达式产生目标语言信息以便运行时引擎呈现识别的网络元素的装置。
6.根据权利要求5的系统,其特征在于源语言信息包括HTML数据。
7.根据权利要求5的系统,其特征在于目标语言信息包括HTML数据。
8.根据权利要求5的系统,其特征在于目标语言信息包括运行时对象。
9.根据权利要求5的系统,其特征在于识别的网络元素包括流控制信息。
10.根据权利要求5的系统,其特征在于识别的网络元素包括选项列表。
11.根据权利要求5的系统,其特征在于识别的网络元素包括表格。
12.根据权利要求5的系统,其特征在于识别的网络元素包括登录信息的请求。
13.根据权利要求5的系统,其特征在于运行时引擎包括文本到语音的引擎。
14.根据权利要求5的系统,其特征在于翻译器包括文本到语音的引擎。
15.根据权利要求5的系统,其特征在于翻译器包括映射到识别的网络元素预选值的音频表示。
16.根据权利要求5的系统,其特征在于翻译器包括映射到识别的网络元素预选值的简化文本表示。
17.一种方法,包括:
从主机网络服务器接收说明网络元素的源语言信息;
接收能识别至少一个由源语言信息说明的元素的标准数学表达式;
从源语言信息和标准数学表达式产生目标语言信息以便运行时引擎呈现识别的网络元素。
18.一种计算机可读的存储介质,存储程序代码以便于计算机完成以下步骤:
从主网络服务器接收说明网络元素的源语言信息;
接收能识别至少一个由源语言信息说明的元素的标准数学表达式;
从源语言信息和标准数学表达式产生目标语言信息以便运行时引擎呈现识别的网络元素。
19.一种方法,包括:
从主机网络服务器接受HTML页信息;
从持久存储器中检索目标语言脚本;
按照目标语言脚本翻译HTML页信息以产生翻译后的HTML页信息;
通过再现设备向用户呈现翻译后的HTML页信息。
20.根据权利要求19的方法,其特征在于所述翻译包括从HTML页信息中动态提取可更新的数据。
21.根据权利要求19的方法,其特征在于翻译后的HTML页信息用声音呈现。
22.根据权利要求19的方法,其特征在于翻译后的HTML页信息包括运行时对象。
23.根据权利要求19的方法,其特征在于所述呈现包括交互地给用户提供提示元素和接收来自用户的输入元素。
24.根据权利要求19的方法,其特征在于再现设备为电话。
25.根据权利要求19的方法,其特征在于HTML页信息指网页。
26.根据权利要求19的方法,还包括识别要翻译的所述HTML页信息。
27.提供用户交互式访问网页信息的方法,包括:
从主网络服务器接受网页信息;
将网页信息转换到包括可通过再现设备呈现给用户的呈现页的当前呈现对话;
从用户接收当前呈现网页的转换;
当将转换页映射到网页信息目标和相应的转换步骤时定义呈现的数据;
接收用户的导航命令;
执行转换步骤,其中如果接收到与表达元素相对应的用户导航命令,会呈现与网页信息目标相对应的对话。
28.根据权利要求27的方法,其特征在于转换页指接收呈现页转换前呈现给用户的网页。
29.根据权利要求27的方法,其特征在于导航命令包括呈现前一个对话的回退命令。
30.根据权利要求27的方法,其特征在于导航命令包括
使用户回退到下一个转换步骤的回退命令,和使用户前进到下一个转换步骤的前进命令。
31.根据权利要求27的方法,其特征在于导航命令包括
中断相应的当前呈现设备运行的停止命令;
从中止处开始相应的呈现设备运行的继续命令。
32.根据权利要求27的方法,其特征在于导航命令包括刷新当前检查的HTML页的刷新命令。
33.根据权利要求27的方法,其特征在于所述表示页包括音频网页且所述表示元素为是音频元素。
CN00814425A 1999-09-10 2000-09-06 对所选数据域进行定制和呈现的方法 Pending CN1461445A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US39313399A 1999-09-10 1999-09-10
US09/393,133 1999-09-10

Publications (1)

Publication Number Publication Date
CN1461445A true CN1461445A (zh) 2003-12-10

Family

ID=23553412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN00814425A Pending CN1461445A (zh) 1999-09-10 2000-09-06 对所选数据域进行定制和呈现的方法

Country Status (7)

Country Link
EP (1) EP1344149A2 (zh)
JP (1) JP2003532129A (zh)
KR (1) KR20020042831A (zh)
CN (1) CN1461445A (zh)
AU (1) AU7355200A (zh)
CA (1) CA2384618A1 (zh)
WO (1) WO2001018692A2 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7958164B2 (en) 2006-02-16 2011-06-07 Microsoft Corporation Visual design of annotated regular expression
US7860881B2 (en) 2006-03-09 2010-12-28 Microsoft Corporation Data parsing with annotated patterns
KR200452191Y1 (ko) * 2010-06-07 2011-02-10 (주)스페이스톡 바람개비 조형물
WO2012174703A1 (en) * 2011-06-20 2012-12-27 Microsoft Corporation Hover translation of search result captions
CN111680051B (zh) * 2020-05-29 2023-10-20 杭州趣链科技有限公司 一种数据序列化和反序列化方法、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282511B1 (en) * 1996-12-04 2001-08-28 At&T Voiced interface with hyperlinked information

Also Published As

Publication number Publication date
WO2001018692A2 (en) 2001-03-15
EP1344149A2 (en) 2003-09-17
WO2001018692A3 (en) 2003-07-17
KR20020042831A (ko) 2002-06-07
JP2003532129A (ja) 2003-10-28
AU7355200A (en) 2001-04-10
CA2384618A1 (en) 2001-03-15

Similar Documents

Publication Publication Date Title
US7146323B2 (en) Method and system for gathering information by voice input
CA2618623C (en) Control center for a voice controlled wireless communication device system
US9083798B2 (en) Enabling voice selection of user preferences
US7548858B2 (en) System and method for selective audible rendering of data to a user based on user input
US20060235694A1 (en) Integrating conversational speech into Web browsers
US20030139928A1 (en) System and method for dynamically creating a voice portal in voice XML
US20040025115A1 (en) Method, terminal, browser application, and mark-up language for multimodal interaction between a user and a terminal
US20210329060A1 (en) Scripting support for data identifiers, voice recognition and speech in a telnet session
RU2379745C2 (ru) Совместное использование пошагового языка разметки и объектно ориентированного инструментального средства разработки
CN1591315A (zh) 用于高级交互接口的语义对象同步理解
CN1788266A (zh) 翻译系统
WO1998021872A1 (en) System and method for providing and using universally accessible voice and speech data files
US8170863B2 (en) System, method and program product for portlet-based translation of web content
US10917444B1 (en) Method and system for enabling a communication device to remotely execute an application
CN1461445A (zh) 对所选数据域进行定制和呈现的方法
US7653546B2 (en) Method and system for efficient voice-based programming
EP1209660B1 (en) Voice navigation in web applications
AU2013206167B2 (en) Voice enabled telnet interface
Morde et al. A multimodal system for accessing driving directions

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication