externalProcessorElements

AIML defines two external processor elements, which instruct the AIML
interpreter to pass the contents of the elements to an external processor. External
processor elements may return a value, but are not required to do so. Contents of
external processor elements may consist of character data as well as AIML template
elements. If AIML template elements in the contents of an external processor element
are not enclosed as CDATA, then the AIML interpreter is required to substitute the
results of processing those elements before passing the contents to the external
processor. AIML does not require that any contents of an external processor element
are enclosed as CDATA. An AIML interpreter should assume that any unrecognized
content is character data, and simply pass it to the appropriate external processor
as-is, following any processing of AIML template elements not enclosed as CDATA. If
an external processor is not available to process the contents of an external
processor element, the AIML interpreter may return an error, but this is not
required.

Element Group Information

Model

Children: javascript, system

Used By

Source

<xs:group name="externalProcessorElements">
  <xs:annotation>
    <xs:documentation>AIML defines two external processor elements, which instruct the AIML interpreter to pass the contents of the elements to an external processor. External processor elements may return a value, but are not required to do so. Contents of external processor elements may consist of character data as well as AIML template elements. If AIML template elements in the contents of an external processor element are not enclosed as CDATA, then the AIML interpreter is required to substitute the results of processing those elements before passing the contents to the external processor. AIML does not require that any contents of an external processor element are enclosed as CDATA. An AIML interpreter should assume that any unrecognized content is character data, and simply pass it to the appropriate external processor as-is, following any processing of AIML template elements not enclosed as CDATA. If an external processor is not available to process the contents of an external processor element, the AIML interpreter may return an error, but this is not required.</xs:documentation>
  </xs:annotation>
  <xs:choice>
    <xs:element name="system" type="MixedTemplateContentContainer">
      <xs:annotation>
        <xs:documentation>The system element instructs the AIML interpreter to pass its content (with any appropriate preprocessing) to the system command interpreter of the local machine on which the AIML interpreter is running.</xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="javascript" type="MixedTemplateContentContainer">
      <xs:annotation>
        <xs:documentation>The javascript element instructs the AIML interpreter to pass its content (with any appropriate preprocessing, as noted above) to a server-side JavaScript interpreter on the local machine on which the AIML interpreter is running. The javascript element does not have any attributes. AIML does not require that an AIML interpreter include a server-side JavaScript interpreter, and does not require any particular behavior from the server-side JavaScript interpreter if it exists. The javascript element may return a value.</xs:documentation>
      </xs:annotation>
    </xs:element>
  </xs:choice>
</xs:group>