15. ABNF Normative Definition
The following productions make use of the core rules defined in Section B.1 of RFC 5234 [RFC5234]. LWS = [*WSP CRLF] 1*WSP ; linear whitespace SWS = [LWS] ; sep whitespace UTF8-NONASCII = %xC0-DF 1UTF8-CONT / %xE0-EF 2UTF8-CONT / %xF0-F7 3UTF8-CONT / %xF8-FB 4UTF8-CONT / %xFC-FD 5UTF8-CONT UTF8-CONT = %x80-BF UTFCHAR = %x21-7E / UTF8-NONASCII param = *pchar
quoted-string = SWS DQUOTE *(qdtext / quoted-pair ) DQUOTE qdtext = LWS / %x21 / %x23-5B / %x5D-7E / UTF8-NONASCII quoted-pair = "\" (%x00-09 / %x0B-0C / %x0E-7F) token = 1*(alphanum / "-" / "." / "!" / "%" / "*" / "_" / "+" / "`" / "'" / "~" ) reserved = ";" / "/" / "?" / ":" / "@" / "&" / "=" / "+" / "$" / "," mark = "-" / "_" / "." / "!" / "~" / "*" / "'" / "(" / ")" unreserved = alphanum / mark pchar = unreserved / escaped / ":" / "@" / "&" / "=" / "+" / "$" / "," alphanum = ALPHA / DIGIT BOOLEAN = "true" / "false" FLOAT = *DIGIT ["." *DIGIT] escaped = "%" HEXDIG HEXDIG fragment = *uric uri = [ absoluteURI / relativeURI ] [ "#" fragment ] absoluteURI = scheme ":" ( hier-part / opaque-part ) relativeURI = ( net-path / abs-path / rel-path ) [ "?" query ] hier-part = ( net-path / abs-path ) [ "?" query ] net-path = "//" authority [ abs-path ] abs-path = "/" path-segments rel-path = rel-segment [ abs-path ]
rel-segment = 1*( unreserved / escaped / ";" / "@" / "&" / "=" / "+" / "$" / "," ) opaque-part = uric-no-slash *uric uric = reserved / unreserved / escaped uric-no-slash = unreserved / escaped / ";" / "?" / ":" / "@" / "&" / "=" / "+" / "$" / "," path-segments = segment *( "/" segment ) segment = *pchar *( ";" param ) scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." ) authority = srvr / reg-name srvr = [ [ userinfo "@" ] hostport ] reg-name = 1*( unreserved / escaped / "$" / "," / ";" / ":" / "@" / "&" / "=" / "+" ) query = *uric userinfo = ( user ) [ ":" password ] "@" user = 1*( unreserved / escaped / user-unreserved ) user-unreserved = "&" / "=" / "+" / "$" / "," / ";" / "?" / "/" password = *( unreserved / escaped / "&" / "=" / "+" / "$" / "," ) hostport = host [ ":" port ] host = hostname / IPv4address / IPv6reference hostname = *( domainlabel "." ) toplabel [ "." ] domainlabel = alphanum / alphanum *( alphanum / "-" ) alphanum toplabel = ALPHA / ALPHA *( alphanum / "-" ) alphanum
IPv4address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT IPv6reference = "[" IPv6address "]" IPv6address = hexpart [ ":" IPv4address ] hexpart = hexseq / hexseq "::" [ hexseq ] / "::" [ hexseq ] hexseq = hex4 *( ":" hex4) hex4 = 1*4HEXDIG port = 1*19DIGIT ; generic-message is the top-level rule generic-message = start-line message-header CRLF [ message-body ] message-body = *OCTET start-line = request-line / response-line / event-line request-line = mrcp-version SP message-length SP method-name SP request-id CRLF response-line = mrcp-version SP message-length SP request-id SP status-code SP request-state CRLF event-line = mrcp-version SP message-length SP event-name SP request-id SP request-state CRLF method-name = generic-method / synthesizer-method / recognizer-method / recorder-method / verifier-method generic-method = "SET-PARAMS" / "GET-PARAMS" request-state = "COMPLETE" / "IN-PROGRESS" / "PENDING"
event-name = synthesizer-event / recognizer-event / recorder-event / verifier-event message-header = 1*(generic-header / resource-header / generic-field) generic-field = field-name ":" [ field-value ] field-name = token field-value = *LWS field-content *( CRLF 1*LWS field-content) field-content = <the OCTETs making up the field-value and consisting of either *TEXT or combinations of token, separators, and quoted-string> resource-header = synthesizer-header / recognizer-header / recorder-header / verifier-header generic-header = channel-identifier / accept / active-request-id-list / proxy-sync-id / accept-charset / content-type / content-id / content-base / content-encoding / content-location / content-length / fetch-timeout / cache-control / logging-tag / set-cookie / vendor-specific ; -- content-id is as defined in RFC 2392, RFC 2046 and RFC 5322 ; -- accept and accept-charset are as defined in RFC 2616 mrcp-version = "MRCP" "/" 1*2DIGIT "." 1*2DIGIT message-length = 1*19DIGIT request-id = 1*10DIGIT status-code = 3DIGIT
channel-identifier = "Channel-Identifier" ":" channel-id CRLF channel-id = 1*alphanum "@" 1*alphanum active-request-id-list = "Active-Request-Id-List" ":" request-id *("," request-id) CRLF proxy-sync-id = "Proxy-Sync-Id" ":" 1*VCHAR CRLF content-base = "Content-Base" ":" absoluteURI CRLF content-length = "Content-Length" ":" 1*19DIGIT CRLF content-type = "Content-Type" ":" media-type-value CRLF media-type-value = type "/" subtype *( ";" parameter ) type = token subtype = token parameter = attribute "=" value attribute = token value = token / quoted-string content-encoding = "Content-Encoding" ":" *WSP content-coding *(*WSP "," *WSP content-coding *WSP ) CRLF content-coding = token content-location = "Content-Location" ":" ( absoluteURI / relativeURI ) CRLF cache-control = "Cache-Control" ":" [*WSP cache-directive *( *WSP "," *WSP cache-directive *WSP )] CRLF fetch-timeout = "Fetch-Timeout" ":" 1*19DIGIT CRLF cache-directive = "max-age" "=" delta-seconds / "max-stale" ["=" delta-seconds ] / "min-fresh" "=" delta-seconds
delta-seconds = 1*19DIGIT logging-tag = "Logging-Tag" ":" 1*UTFCHAR CRLF vendor-specific = "Vendor-Specific-Parameters" ":" [vendor-specific-av-pair *(";" vendor-specific-av-pair)] CRLF vendor-specific-av-pair = vendor-av-pair-name "=" value vendor-av-pair-name = 1*UTFCHAR set-cookie = "Set-Cookie:" SP set-cookie-string set-cookie-string = cookie-pair *( ";" SP cookie-av ) cookie-pair = cookie-name "=" cookie-value cookie-name = token cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE ) cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E token = <token, defined in [RFC2616], Section 2.2> cookie-av = expires-av / max-age-av / domain-av / path-av / secure-av / httponly-av / extension-av / age-av expires-av = "Expires=" sane-cookie-date sane-cookie-date = <rfc1123-date, defined in [RFC2616], Section 3.3.1> max-age-av = "Max-Age=" non-zero-digit *DIGIT non-zero-digit = %x31-39 domain-av = "Domain=" domain-value domain-value = <subdomain> path-av = "Path=" path-value path-value = <any CHAR except CTLs or ";"> secure-av = "Secure" httponly-av = "HttpOnly" extension-av = <any CHAR except CTLs or ";"> age-av = "Age=" delta-seconds ; Synthesizer ABNF synthesizer-method = "SPEAK" / "STOP" / "PAUSE" / "RESUME" / "BARGE-IN-OCCURRED" / "CONTROL" / "DEFINE-LEXICON"
synthesizer-event = "SPEECH-MARKER" / "SPEAK-COMPLETE" synthesizer-header = jump-size / kill-on-barge-in / speaker-profile / completion-cause / completion-reason / voice-parameter / prosody-parameter / speech-marker / speech-language / fetch-hint / audio-fetch-hint / failed-uri / failed-uri-cause / speak-restart / speak-length / load-lexicon / lexicon-search-order jump-size = "Jump-Size" ":" speech-length-value CRLF speech-length-value = numeric-speech-length / text-speech-length text-speech-length = 1*UTFCHAR SP "Tag" numeric-speech-length = ("+" / "-") positive-speech-length positive-speech-length = 1*19DIGIT SP numeric-speech-unit numeric-speech-unit = "Second" / "Word" / "Sentence" / "Paragraph" kill-on-barge-in = "Kill-On-Barge-In" ":" BOOLEAN CRLF speaker-profile = "Speaker-Profile" ":" uri CRLF completion-cause = "Completion-Cause" ":" cause-code SP cause-name CRLF cause-code = 3DIGIT cause-name = *VCHAR
completion-reason = "Completion-Reason" ":" quoted-string CRLF voice-parameter = voice-gender / voice-age / voice-variant / voice-name voice-gender = "Voice-Gender:" voice-gender-value CRLF voice-gender-value = "male" / "female" / "neutral" voice-age = "Voice-Age:" 1*3DIGIT CRLF voice-variant = "Voice-Variant:" 1*19DIGIT CRLF voice-name = "Voice-Name:" 1*UTFCHAR *(1*WSP 1*UTFCHAR) CRLF prosody-parameter = "Prosody-" prosody-param-name ":" prosody-param-value CRLF prosody-param-name = 1*VCHAR prosody-param-value = 1*VCHAR timestamp = "timestamp" "=" time-stamp-value time-stamp-value = 1*20DIGIT speech-marker = "Speech-Marker" ":" timestamp [";" 1*(UTFCHAR / %x20)] CRLF speech-language = "Speech-Language" ":" 1*VCHAR CRLF fetch-hint = "Fetch-Hint" ":" ("prefetch" / "safe") CRLF audio-fetch-hint = "Audio-Fetch-Hint" ":" ("prefetch" / "safe" / "stream") CRLF failed-uri = "Failed-URI" ":" absoluteURI CRLF failed-uri-cause = "Failed-URI-Cause" ":" 1*UTFCHAR CRLF speak-restart = "Speak-Restart" ":" BOOLEAN CRLF
speak-length = "Speak-Length" ":" positive-length-value CRLF positive-length-value = positive-speech-length / text-speech-length load-lexicon = "Load-Lexicon" ":" BOOLEAN CRLF lexicon-search-order = "Lexicon-Search-Order" ":" "<" absoluteURI ">" *(" " "<" absoluteURI ">") CRLF ; Recognizer ABNF recognizer-method = recog-only-method / enrollment-method recog-only-method = "DEFINE-GRAMMAR" / "RECOGNIZE" / "INTERPRET" / "GET-RESULT" / "START-INPUT-TIMERS" / "STOP" enrollment-method = "START-PHRASE-ENROLLMENT" / "ENROLLMENT-ROLLBACK" / "END-PHRASE-ENROLLMENT" / "MODIFY-PHRASE" / "DELETE-PHRASE" recognizer-event = "START-OF-INPUT" / "RECOGNITION-COMPLETE" / "INTERPRETATION-COMPLETE" recognizer-header = recog-only-header / enrollment-header recog-only-header = confidence-threshold / sensitivity-level / speed-vs-accuracy / n-best-list-length / input-type / no-input-timeout / recognition-timeout / waveform-uri / input-waveform-uri / completion-cause / completion-reason / recognizer-context-block
/ start-input-timers / speech-complete-timeout / speech-incomplete-timeout / dtmf-interdigit-timeout / dtmf-term-timeout / dtmf-term-char / failed-uri / failed-uri-cause / save-waveform / media-type / new-audio-channel / speech-language / ver-buffer-utterance / recognition-mode / cancel-if-queue / hotword-max-duration / hotword-min-duration / interpret-text / dtmf-buffer-time / clear-dtmf-buffer / early-no-match enrollment-header = num-min-consistent-pronunciations / consistency-threshold / clash-threshold / personal-grammar-uri / enroll-utterance / phrase-id / phrase-nl / weight / save-best-waveform / new-phrase-id / confusable-phrases-uri / abort-phrase-enrollment confidence-threshold = "Confidence-Threshold" ":" FLOAT CRLF sensitivity-level = "Sensitivity-Level" ":" FLOAT CRLF speed-vs-accuracy = "Speed-Vs-Accuracy" ":" FLOAT CRLF n-best-list-length = "N-Best-List-Length" ":" 1*19DIGIT CRLF input-type = "Input-Type" ":" inputs CRLF
inputs = "speech" / "dtmf" no-input-timeout = "No-Input-Timeout" ":" 1*19DIGIT CRLF recognition-timeout = "Recognition-Timeout" ":" 1*19DIGIT CRLF waveform-uri = "Waveform-URI" ":" ["<" uri ">" ";" "size" "=" 1*19DIGIT ";" "duration" "=" 1*19DIGIT] CRLF recognizer-context-block = "Recognizer-Context-Block" ":" [1*VCHAR] CRLF start-input-timers = "Start-Input-Timers" ":" BOOLEAN CRLF speech-complete-timeout = "Speech-Complete-Timeout" ":" 1*19DIGIT CRLF speech-incomplete-timeout = "Speech-Incomplete-Timeout" ":" 1*19DIGIT CRLF dtmf-interdigit-timeout = "DTMF-Interdigit-Timeout" ":" 1*19DIGIT CRLF dtmf-term-timeout = "DTMF-Term-Timeout" ":" 1*19DIGIT CRLF dtmf-term-char = "DTMF-Term-Char" ":" VCHAR CRLF save-waveform = "Save-Waveform" ":" BOOLEAN CRLF new-audio-channel = "New-Audio-Channel" ":" BOOLEAN CRLF recognition-mode = "Recognition-Mode" ":" "normal" / "hotword" CRLF cancel-if-queue = "Cancel-If-Queue" ":" BOOLEAN CRLF hotword-max-duration = "Hotword-Max-Duration" ":" 1*19DIGIT CRLF hotword-min-duration = "Hotword-Min-Duration" ":" 1*19DIGIT CRLF
interpret-text = "Interpret-Text" ":" 1*VCHAR CRLF dtmf-buffer-time = "DTMF-Buffer-Time" ":" 1*19DIGIT CRLF clear-dtmf-buffer = "Clear-DTMF-Buffer" ":" BOOLEAN CRLF early-no-match = "Early-No-Match" ":" BOOLEAN CRLF num-min-consistent-pronunciations = "Num-Min-Consistent-Pronunciations" ":" 1*19DIGIT CRLF consistency-threshold = "Consistency-Threshold" ":" FLOAT CRLF clash-threshold = "Clash-Threshold" ":" FLOAT CRLF personal-grammar-uri = "Personal-Grammar-URI" ":" uri CRLF enroll-utterance = "Enroll-Utterance" ":" BOOLEAN CRLF phrase-id = "Phrase-ID" ":" 1*VCHAR CRLF phrase-nl = "Phrase-NL" ":" 1*UTFCHAR CRLF weight = "Weight" ":" FLOAT CRLF save-best-waveform = "Save-Best-Waveform" ":" BOOLEAN CRLF new-phrase-id = "New-Phrase-ID" ":" 1*VCHAR CRLF confusable-phrases-uri = "Confusable-Phrases-URI" ":" uri CRLF abort-phrase-enrollment = "Abort-Phrase-Enrollment" ":" BOOLEAN CRLF ; Recorder ABNF recorder-method = "RECORD" / "STOP" / "START-INPUT-TIMERS" recorder-event = "START-OF-INPUT" / "RECORD-COMPLETE"
recorder-header = sensitivity-level / no-input-timeout / completion-cause / completion-reason / failed-uri / failed-uri-cause / record-uri / media-type / max-time / trim-length / final-silence / capture-on-speech / ver-buffer-utterance / start-input-timers / new-audio-channel record-uri = "Record-URI" ":" [ "<" uri ">" ";" "size" "=" 1*19DIGIT ";" "duration" "=" 1*19DIGIT] CRLF media-type = "Media-Type" ":" media-type-value CRLF max-time = "Max-Time" ":" 1*19DIGIT CRLF trim-length = "Trim-Length" ":" 1*19DIGIT CRLF final-silence = "Final-Silence" ":" 1*19DIGIT CRLF capture-on-speech = "Capture-On-Speech " ":" BOOLEAN CRLF ; Verifier ABNF verifier-method = "START-SESSION" / "END-SESSION" / "QUERY-VOICEPRINT" / "DELETE-VOICEPRINT" / "VERIFY" / "VERIFY-FROM-BUFFER" / "VERIFY-ROLLBACK" / "STOP" / "CLEAR-BUFFER" / "START-INPUT-TIMERS" / "GET-INTERMEDIATE-RESULT" verifier-event = "VERIFICATION-COMPLETE" / "START-OF-INPUT"
verifier-header = repository-uri / voiceprint-identifier / verification-mode / adapt-model / abort-model / min-verification-score / num-min-verification-phrases / num-max-verification-phrases / no-input-timeout / save-waveform / media-type / waveform-uri / voiceprint-exists / ver-buffer-utterance / input-waveform-uri / completion-cause / completion-reason / speech-complete-timeout / new-audio-channel / abort-verification / start-input-timers / input-type repository-uri = "Repository-URI" ":" uri CRLF voiceprint-identifier = "Voiceprint-Identifier" ":" vid *[";" vid] CRLF vid = 1*VCHAR ["." 1*VCHAR] verification-mode = "Verification-Mode" ":" verification-mode-string verification-mode-string = "train" / "verify" adapt-model = "Adapt-Model" ":" BOOLEAN CRLF abort-model = "Abort-Model" ":" BOOLEAN CRLF min-verification-score = "Min-Verification-Score" ":" [ %x2D ] FLOAT CRLF num-min-verification-phrases = "Num-Min-Verification-Phrases" ":" 1*19DIGIT CRLF num-max-verification-phrases = "Num-Max-Verification-Phrases" ":" 1*19DIGIT CRLF
voiceprint-exists = "Voiceprint-Exists" ":" BOOLEAN CRLF ver-buffer-utterance = "Ver-Buffer-Utterance" ":" BOOLEAN CRLF input-waveform-uri = "Input-Waveform-URI" ":" uri CRLF abort-verification = "Abort-Verification " ":" BOOLEAN CRLF The following productions add a new SDP session-level attribute. See Paragraph 5. cmid-attribute = "a=cmid:" identification-tag identification-tag = token16. XML Schemas
16.1. NLSML Schema Definition
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:mrcpv2" xmlns="urn:ietf:params:xml:ns:mrcpv2" elementFormDefault="qualified" attributeFormDefault="unqualified" > <xs:annotation> <xs:documentation> Natural Language Semantic Markup Schema </xs:documentation> </xs:annotation> <xs:include schemaLocation="enrollment-schema.rng"/> <xs:include schemaLocation="verification-schema.rng"/> <xs:element name="result"> <xs:complexType> <xs:sequence> <xs:element name="interpretation" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="instance"> <xs:complexType mixed="true"> <xs:sequence minOccurs="0"> <xs:any namespace="##other" processContents="lax"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="input" minOccurs="0">
<xs:complexType mixed="true"> <xs:choice> <xs:element name="noinput" minOccurs="0"/> <xs:element name="nomatch" minOccurs="0"/> <xs:element name="input" minOccurs="0"/> </xs:choice> <xs:attribute name="mode" type="xs:string" default="speech"/> <xs:attribute name="confidence" type="confidenceinfo" default="1.0"/> <xs:attribute name="timestamp-start" type="xs:string"/> <xs:attribute name="timestamp-end" type="xs:string"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="confidence" type="confidenceinfo" default="1.0"/> <xs:attribute name="grammar" type="xs:anyURI" use="optional"/> </xs:complexType> </xs:element> <xs:element name="enrollment-result" type="enrollment-contents"/> <xs:element name="verification-result" type="verification-contents"/> </xs:sequence> <xs:attribute name="grammar" type="xs:anyURI" use="optional"/> </xs:complexType> </xs:element> <xs:simpleType name="confidenceinfo"> <xs:restriction base="xs:float"> <xs:minInclusive value="0.0"/> <xs:maxInclusive value="1.0"/> </xs:restriction> </xs:simpleType> </xs:schema>
16.2. Enrollment Results Schema Definition
<?xml version="1.0" encoding="UTF-8"?> <!-- MRCP Enrollment Schema (See http://www.oasis-open.org/committees/relax-ng/spec.html) --> <grammar datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="urn:ietf:params:xml:ns:mrcpv2" xmlns="http://relaxng.org/ns/structure/1.0"> <start> <element name="enrollment-result"> <ref name="enrollment-content"/> </element> </start> <define name="enrollment-content"> <interleave> <element name="num-clashes"> <data type="nonNegativeInteger"/> </element> <element name="num-good-repetitions"> <data type="nonNegativeInteger"/> </element> <element name="num-repetitions-still-needed"> <data type="nonNegativeInteger"/> </element> <element name="consistency-status"> <choice> <value>consistent</value> <value>inconsistent</value> <value>undecided</value> </choice> </element> <optional> <element name="clash-phrase-ids"> <oneOrMore> <element name="item"> <data type="token"/> </element> </oneOrMore> </element> </optional> <optional> <element name="transcriptions"> <oneOrMore>
<element name="item"> <text/> </element> </oneOrMore> </element> </optional> <optional> <element name="confusable-phrases"> <oneOrMore> <element name="item"> <text/> </element> </oneOrMore> </element> </optional> </interleave> </define> </grammar>16.3. Verification Results Schema Definition <?xml version="1.0" encoding="UTF-8"?>
<!-- MRCP Verification Results Schema (See http://www.oasis-open.org/committees/relax-ng/spec.html) --> <grammar datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="urn:ietf:params:xml:ns:mrcpv2" xmlns="http://relaxng.org/ns/structure/1.0"> <start> <element name="verification-result"> <ref name="verification-contents"/> </element> </start> <define name="verification-contents"> <element name="voiceprint"> <ref name="firstVoiceprintContent"/> </element> <zeroOrMore> <element name="voiceprint"> <ref name="restVoiceprintContent"/> </element> </zeroOrMore> </define>
<define name="firstVoiceprintContent"> <attribute name="id"> <data type="string"/> </attribute> <interleave> <optional> <element name="adapted"> <data type="boolean"/> </element> </optional> <optional> <element name="needmoredata"> <ref name="needmoredataContent"/> </element> </optional> <optional> <element name="incremental"> <ref name="firstCommonContent"/> </element> </optional> <element name="cumulative"> <ref name="firstCommonContent"/> </element> </interleave> </define> <define name="restVoiceprintContent"> <attribute name="id"> <data type="string"/> </attribute> <element name="cumulative"> <ref name="restCommonContent"/> </element> </define> <define name="firstCommonContent"> <interleave> <element name="decision"> <ref name="decisionContent"/> </element> <optional> <element name="utterance-length"> <ref name="utterance-lengthContent"/> </element> </optional> <optional> <element name="device"> <ref name="deviceContent"/>
</element> </optional> <optional> <element name="gender"> <ref name="genderContent"/> </element> </optional> <zeroOrMore> <element name="verification-score"> <ref name="verification-scoreContent"/> </element> </zeroOrMore> </interleave> </define> <define name="restCommonContent"> <interleave> <optional> <element name="decision"> <ref name="decisionContent"/> </element> </optional> <optional> <element name="device"> <ref name="deviceContent"/> </element> </optional> <optional> <element name="gender"> <ref name="genderContent"/> </element> </optional> <zeroOrMore> <element name="verification-score"> <ref name="verification-scoreContent"/> </element> </zeroOrMore> </interleave> </define> <define name="decisionContent"> <choice> <value>accepted</value> <value>rejected</value> <value>undecided</value> </choice> </define>
<define name="needmoredataContent"> <data type="boolean"/> </define> <define name="utterance-lengthContent"> <data type="nonNegativeInteger"/> </define> <define name="deviceContent"> <choice> <value>cellular-phone</value> <value>electret-phone</value> <value>carbon-button-phone</value> <value>unknown</value> </choice> </define> <define name="genderContent"> <choice> <value>male</value> <value>female</value> <value>unknown</value> </choice> </define> <define name="verification-scoreContent"> <data type="float"> <param name="minInclusive">-1</param> <param name="maxInclusive">1</param> </data> </define> </grammar>
17. References
17.1. Normative References
[ISO.8859-1.1987] International Organization for Standardization, "Information technology - 8-bit single byte coded graphic - character sets - Part 1: Latin alphabet No. 1, JTC1/ SC2", ISO Standard 8859-1, 1987. [RFC0793] Postel, J., "Transmission Control Protocol", STD 7, RFC 793, September 1981. [RFC1035] Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2326] Schulzrinne, H., Rao, A., and R. Lanphier, "Real Time Streaming Protocol (RTSP)", RFC 2326, April 1998. [RFC2392] Levinson, E., "Content-ID and Message-ID Uniform Resource Locators", RFC 2392, August 1998. [RFC2483] Mealling, M. and R. Daniel, "URI Resolution Services Necessary for URN Resolution", RFC 2483, January 1999. [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media Types", RFC 3023, January 2001. [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002. [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with Session Description Protocol (SDP)", RFC 3264, June 2002. [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, July 2003.
[RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003. [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, January 2004. [RFC3711] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K. Norrman, "The Secure Real-time Transport Protocol (SRTP)", RFC 3711, March 2004. [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005. [RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in the Session Description Protocol (SDP)", RFC 4145, September 2005. [RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and Registration Procedures", BCP 13, RFC 4288, December 2005. [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", RFC 4566, July 2006. [RFC4568] Andreasen, F., Baugher, M., and D. Wing, "Session Description Protocol (SDP) Security Descriptions for Media Streams", RFC 4568, July 2006. [RFC4572] Lennox, J., "Connection-Oriented Media Transport over the Transport Layer Security (TLS) Protocol in the Session Description Protocol (SDP)", RFC 4572, July 2006. [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 2008. [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008. [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.2", RFC 5246, August 2008. [RFC5322] Resnick, P., Ed., "Internet Message Format", RFC 5322, October 2008. [RFC5646] Phillips, A. and M. Davis, "Tags for Identifying Languages", BCP 47, RFC 5646, September 2009.
[RFC5888] Camarillo, G. and H. Schulzrinne, "The Session Description Protocol (SDP) Grouping Framework", RFC 5888, June 2010. [RFC5905] Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network Time Protocol Version 4: Protocol and Algorithms Specification", RFC 5905, June 2010. [RFC5922] Gurbani, V., Lawrence, S., and A. Jeffrey, "Domain Certificates in the Session Initiation Protocol (SIP)", RFC 5922, June 2010. [RFC6265] Barth, A., "HTTP State Management Mechanism", RFC 6265, April 2011. [W3C.REC-semantic-interpretation-20070405] Tichelen, L. and D. Burke, "Semantic Interpretation for Speech Recognition (SISR) Version 1.0", World Wide Web Consortium Recommendation REC-semantic- interpretation-20070405, April 2007, <http://www.w3.org/TR/2007/ REC-semantic-interpretation-20070405>. [W3C.REC-speech-grammar-20040316] McGlashan, S. and A. Hunt, "Speech Recognition Grammar Specification Version 1.0", World Wide Web Consortium Recommendation REC-speech-grammar-20040316, March 2004, <http://www.w3.org/TR/2004/REC-speech-grammar-20040316>. [W3C.REC-speech-synthesis-20040907] Walker, M., Burnett, D., and A. Hunt, "Speech Synthesis Markup Language (SSML) Version 1.0", World Wide Web Consortium Recommendation REC-speech-synthesis-20040907, September 2004, <http://www.w3.org/TR/2004/REC-speech-synthesis-20040907>. [W3C.REC-xml-names11-20040204] Layman, A., Bray, T., Hollander, D., and R. Tobin, "Namespaces in XML 1.1", World Wide Web Consortium First Edition REC-xml-names11-20040204, February 2004, <http://www.w3.org/TR/2004/REC-xml-names11-20040204>.17.2. Informative References
[ISO.8601.1988] International Organization for Standardization, "Data elements and interchange formats - Information interchange - Representation of dates and times", ISO Standard 8601, June 1988.
[Q.23] International Telecommunications Union, "Technical Features of Push-Button Telephone Sets", ITU-T Q.23, 1993. [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", RFC 2046, November 1996. [RFC2818] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000. [RFC4217] Ford-Hutchinson, P., "Securing FTP with TLS", RFC 4217, October 2005. [RFC4267] Froumentin, M., "The W3C Speech Interface Framework Media Types: application/voicexml+xml, application/ssml+xml, application/srgs, application/srgs+xml, application/ ccxml+xml, and application/pls+xml", RFC 4267, November 2005. [RFC4301] Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, December 2005. [RFC4313] Oran, D., "Requirements for Distributed Control of Automatic Speech Recognition (ASR), Speaker Identification/Speaker Verification (SI/SV), and Text-to- Speech (TTS) Resources", RFC 4313, December 2005. [RFC4395] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and Registration Procedures for New URI Schemes", BCP 35, RFC 4395, February 2006. [RFC4463] Shanmugham, S., Monaco, P., and B. Eberman, "A Media Resource Control Protocol (MRCP) Developed by Cisco, Nuance, and Speechworks", RFC 4463, April 2006. [RFC4467] Crispin, M., "Internet Message Access Protocol (IMAP) - URLAUTH Extension", RFC 4467, May 2006. [RFC4733] Schulzrinne, H. and T. Taylor, "RTP Payload for DTMF Digits, Telephony Tones, and Telephony Signals", RFC 4733, December 2006. [RFC4960] Stewart, R., "Stream Control Transmission Protocol", RFC 4960, September 2007. [RFC6454] Barth, A., "The Web Origin Concept", RFC 6454, December 2011.
[W3C.REC-emma-20090210] Johnston, M., Baggia, P., Burnett, D., Carter, J., Dahl, D., McCobb, G., and D. Raggett, "EMMA: Extensible MultiModal Annotation markup language", World Wide Web Consortium Recommendation REC-emma-20090210, February 2009, <http://www.w3.org/TR/2009/REC-emma-20090210>. [W3C.REC-pronunciation-lexicon-20081014] Baggia, P., Bagshaw, P., Burnett, D., Carter, J., and F. Scahill, "Pronunciation Lexicon Specification (PLS)", World Wide Web Consortium Recommendation REC-pronunciation-lexicon-20081014, October 2008, <http://www.w3.org/TR/2008/ REC-pronunciation-lexicon-20081014>. [W3C.REC-voicexml20-20040316] Danielsen, P., Porter, B., Hunt, A., Rehor, K., Lucas, B., Burnett, D., Ferrans, J., Tryphonas, S., McGlashan, S., and J. Carter, "Voice Extensible Markup Language (VoiceXML) Version 2.0", World Wide Web Consortium Recommendation REC-voicexml20-20040316, March 2004, <http://www.w3.org/TR/2004/REC-voicexml20-20040316>. [refs.javaSpeechGrammarFormat] Sun Microsystems, "Java Speech Grammar Format Version 1.0", October 1998.
Appendix A. Contributors
Pierre Forgues Nuance Communications Ltd. 1500 University Street Suite 935 Montreal, Quebec Canada H3A 3S7 EMail: forgues@nuance.com Charles Galles Intervoice, Inc. 17811 Waterview Parkway Dallas, Texas 75252 USA EMail: charles.galles@intervoice.com Klaus Reifenrath Scansoft, Inc Guldensporenpark 32 Building D 9820 Merelbeke Belgium EMail: klaus.reifenrath@scansoft.comAppendix B. Acknowledgements
Andre Gillet (Nuance Communications) Andrew Hunt (ScanSoft) Andrew Wahbe (Genesys) Aaron Kneiss (ScanSoft) Brian Eberman (ScanSoft) Corey Stohs (Cisco Systems, Inc.) Dave Burke (VoxPilot) Jeff Kusnitz (IBM Corp) Ganesh N. Ramaswamy (IBM Corp) Klaus Reifenrath (ScanSoft) Kristian Finlator (ScanSoft) Magnus Westerlund (Ericsson) Martin Dragomirecky (Cisco Systems, Inc.) Paolo Baggia (Loquendo) Peter Monaco (Nuance Communications) Pierre Forgues (Nuance Communications)
Ran Zilca (IBM Corp) Suresh Kaliannan (Cisco Systems, Inc.) Skip Cave (Intervoice, Inc.) Thomas Gal (LumenVox) The chairs of the SPEECHSC work group are Eric Burger (Georgetown University) and Dave Oran (Cisco Systems, Inc.). Many thanks go in particular to Robert Sparks, Alex Agranovsky, and Henry Phan, who were there at the end to dot all the i's and cross all the t's.Authors' Addresses
Daniel C. Burnett Voxeo 189 South Orange Avenue #1000 Orlando, FL 32801 USA EMail: dburnett@voxeo.com Saravanan Shanmugham Cisco Systems, Inc. 170 W. Tasman Dr. San Jose, CA 95134 USA EMail: sarvi@cisco.com