Zum Inhalt springen

Semantic Interpretation for Speech Recognition

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 22. Mai 2017 um 15:38 Uhr durch imported>Reclus (http→https).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Semantic Interpretation for Speech Recognition (SISR) definiert die Syntax und Semantik von Anmerkungen für Grammatikregeln in der Speech Recognition Grammar Specification (SRGS). Seit dem 5. April 2007 ist SISR eine Empfehlung des World Wide Web Consortiums.<ref>Semantic Interpretation for Speech Recognition (SISR) Version 1.0. w3.org</ref>

Auf SRGS-Grammatiken aufbauend, erlaubt es Voicebrowsern über ECMAScript, komplexe Grammatik zu interpretieren und die Information zurück zum Programm zu liefern. Zum Beispiel erlaubt es, dass Äußerungen, wie „Ich hätte gerne eine Coca Cola und drei große Pizzen mit Peperoni und Pilzen.“ in ein Objekt interpretiert werden, das von anderen Programmen verstanden werden kann.

Ein solches Objekt könnte etwa folgendermaßen aussehen: <syntaxhighlight lang="json">

{
  getränk: {
    flüssigkeit:"coke",
    größe:"mittel"},
  pizza: {
    anzahl: "3",
    pizzagröße: "groß",
    belag: [ "Peperoni", "Pilze" ]
  }
}

</syntaxhighlight>

Eine SRGS-Grammatik mit SISR-Markup die dieses Objekt ausgibt, ist die folgende: <syntaxhighlight lang="xml"> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE grammar PUBLIC "-//W3C//DTD GRAMMAR 1.0//EN"

                 "http://www.w3.org/TR/speech-grammar/grammar.dtd">

<grammar xmlns="http://www.w3.org/2001/06/grammar" xml:lang="en"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.w3.org/2001/06/grammar
                            http://www.w3.org/TR/speech-grammar/grammar.xsd"
        version="1.0" mode="voice" tag-format="semantics/1.0" root="order">
  <rule id="order">
     Ich hätte gerne eine
     <ruleref uri="#drink"/>
     <tag>out.drink = new Object(); out.drink.liquid=rules.drink.type;
          out.drink.drinksize=rules.drink.drinksize;</tag>
     und
     <ruleref uri="#pizza"/>
     <tag>out.pizza=rules.pizza;</tag>
  </rule>
  <rule id="kindofdrink">
     <one-of>
        <item>coke</item>
        <item>pepsi</item>
        <item>coca cola<tag>out="coke";</tag></item>
     </one-of>
  </rule>
  <rule id="foodsize">
     <tag>out="medium";</tag> 
     <item repeat="0-1">
        <one-of>
           <item>small<tag>out="small";</tag></item>
           <item>medium</item>
           <item>large<tag>out="large";</tag></item>
           <item>regular<tag>out="medium";</tag></item>
        </one-of>
     </item>
  </rule>
  <rule id="tops">
     <tag>out=new Array;</tag>
     <ruleref uri="#top"/>
     <tag>out.push(rules.top);</tag>
     <item repeat="1-">
        and
        <ruleref uri="#top"/>
        <tag>out.push(rules.top);</tag>
     </item>
  </rule>
  <rule id="top">
     <one-of>
        <item>anchovies</item>
        <item>peperoni</item>
        <item>mushroom<tag>out="mushrooms";</tag></item>
        <item>mushrooms</item>
     </one-of>
  </rule>
  <rule id="drink">
     <ruleref uri="#foodsize"/>
     <ruleref uri="#kindofdrink"/>
     <tag>out.drinksize=rules.foodsize; out.type=rules.kindofdrink;</tag>
  </rule>
  <rule id="pizza">
     <ruleref uri="#number"/>
     <ruleref uri="#foodsize"/>
     <tag>out.pizzasize=rules.foodsize; out.number=rules.number;</tag>
     pizzas with
     <ruleref uri="#tops"/>
     <tag>out.topping=rules.tops;</tag>
  </rule>
  <rule id="number">
     <one-of>
        <item>
           <tag>out=1;</tag>
           <one-of>
              <item>a</item>
              <item>one</item>
           </one-of>
        </item>
        <item>two<tag>out=2;</tag></item>
        <item>three<tag>out=3;</tag></item>
     </one-of>
  </rule>

</grammar> </syntaxhighlight>

Siehe auch

Weblinks

Einzelnachweise

<references />

<templatestyles src="Erweiterte Navigationsleiste/styles legacy.css" />Vorlage:Klappleiste/Anfang

Empfehlungen

ActivityPub | ARIA | Canonical XML | CDF | CSS | DOM | Geolocation API | HTML | HTML5 | InkML | ITS | JSON-LD | MathML | OWL | P3P | PLS | PNG | RDF | RDF-Schema | RIF | SCXML | SISR | SKOS | SMIL | SOAP | SRGS | SSML | SVG | SPARQL | Timed Text | Turtle | VoiceXML | WSDL | XForms | XHTML | XHTML+RDFa | XInclude | XLink | XML | XML Base | XML-Encryption | XML Events | XML Information Set | XML Namespace | XML Schema | XML Signature | XPath | XPointer | XProc | XQuery | XSL | XSL-FO | XSLT (Elemente)

Arbeitsentwürfe
und Kandidaten

CCXML | CURIE | SMIL Timesheets | sXBL | WICD | XFrames | XBL | XHTML+MathML+SVG | XMLHttpRequest

Anmerkungen

XAdES | XFDL | XHTML+SMIL | XUP

Richtlinien

Web Content Accessibility Guidelines | Multimodal Interaction Activity | Markup Validation Service

Initiativen

Web Accessibility Initiative

Vorlage:Klappleiste/Ende