[pandorabots-general] Newbie Problem
Noel Bush
noel at aitools.org
Thu May 18 07:38:17 PDT 2006
Thanks, Brian. I really do think your project is interesting, and I
hope that your efforts--both commercial and otherwise--will produce
results, but personally I just can't participate now. I already have a
heaping plate of work in front of me, and I also must agree with others
who have expressed misgivings about donating time and ideas to a
non-free (non - open source) commercial project.
Brian Hoecht wrote:
> Noel,
>
> That is a great response, very well thought out and quite
> thought-provoking.
>
> I would again like to extend the offer to have you join the panel
> (see email floating around this list right now). You have much
> to offer and the panel will be the poorer without you.
>
> I've also cc'd a few of the other creators of the other
> Interpreters on this email. I'm interested in their opinions on
> this topic and what they think about how best to proceed.
>
> I do know that I am way over my head technologically... but that
> is not what I do... and why we are assembling a forum.
> Facilitating constructive discussion, collaboration and
> advancement of applied technology... now that I know.
>
> -----Original Message-----
> From:
> pandorabots-general-bounces+brian_hoecht=msn.com at list.pandorabots
> com
> [mailto:pandorabots-general-bounces+brian_hoecht=msn.com at list.pan
> dorabots.com] On Behalf Of Noel Bush
> Sent: Thursday, May 18, 2006 9:32 AM
> To: pandorabots-general at list.pandorabots.com; xaiml at aitools.org
> Subject: Re: [pandorabots-general] Newbie Problem
>
> It is not accurate to say that xAIML is a competitor to AIML. In
> fact,
> it's quite the opposite: xAIML implicitly asserts that there is
> *no
> point* in "competing" with AIML -- if you are going to use a
> pattern-matching oriented, stimulus-response sort of approach,
> then it
> is much wiser to use AIML as a basis than to go off and try to
> reinvent
> the wheel for the hundredth time.
>
> Remember that xAIML is *not* an alternative to AIML -- xAIML is
> not
> "another language" or "another standard". This is true of xAIML
> to AIML
> far much moreso than it is true of XHTML to HTML, for instance.
>
> xAIML is, in fact, a wholehearted embrace of the "embrace and
> extend"
> attitude. xAIML just offers a way for people to describe and
> share
> their embracings and extensions in a slightly more formal and
> useful
> way. At present, if some AIML interpreter includes an additional
>
> feature, or does not implement a core AIML element, or implements
> an
> AIML element differently from other interpreters, you just have
> to hope
> that the documentation tells you so. But in this case the notion
> of
> "what AIML is" gets a little fuzzy, since, for instance, "what
> AIML is
> to Pandorabots" may be different from "what AIML is to
> RebeccaAIML".
>
> xAIML is a way for each interpreter to specify precisely how it
> matches
> up with the base AIML functionality set. The idea is that you
> can tell
> "at a glance" whether a given interpreter has the functionality
> you're
> looking for, and whether it will be able to use your (x)AIML set,
> and if
> not, why.
>
> At the same time, developers of "xAIML interpreters" can feel
> freer in
> implementing extended functionality sets, or even altering some
> basic
> AIML functionality, without a fear of falling out of the "circle
> of
> trust" that a standard like AIML provides. That circle of trust
> is
> extremely useful, but it should not be a hindrance. So xAIML
> provides a
> suggested path for developers to follow in pursuing innovation
> while
> retaining "measurable compatibility".
>
> Brian's message brings up an important category of extensions to
> or
> variations on AIML. There are many "macro extensions" that
> people would
> like to use in AIML, that can be implemented purely as
> transformations
> from some alternate markup to AIML, via XSLT. For instance,
> "implementing" a <sr2/> element would be as simple as:
>
> <xsl:template match="sr2">
> <xsl:element name="srai">
> <xsl:element name="star">
> <xsl:attribute name="index">2</xsl:attribute>
> </xsl:element>
> </xsl:element>
> </xsl:template>
>
> Now, if you have an interpreter that will recognize an XSL
> stylesheet
> directive at the top of your document, and will apply the
> designated
> stylesheet to the document before loading it, you have the means
> for
> creating your own "dialect" that can vary considerably from
> "orthodox" AIML.
>
> But now that you've got your own dialect, what to do with it?
> You still
> want to be able to validate it, like you can validate AIML.
> There are
> so many pieces of software out there -- free and commercial --
> that
> allow you to validate AIML against a schema...even while you are
> typing
> it, so you never need worry about submitting invalid AIML to your
>
> interpreter. But when you've written your own dialect, you also
> want
> this same ability. So you could just write your own schema --
> copy the
> existing AIML schema and make your changes, for instance. (Or
> write
> your own schema.) But then you'd be firmly "out of the circle",
> because
> your dialect would no longer be "true AIML". What to do?
>
> The answer (I think) is xAIML, because it provides a structured
> means
> for expressing the relationship of your derived dialect to its
> parent,
> and offers a kind of "schema diff" functionality that should make
> it
> easier to customize a schema for your own needs. If you have an
> xAIML-Spec for your dialect, then when you feed it to an xAIML
> interpreter, that interpreter will know how to handle it.
>
> And I think that the specific matter of "macro extensions" -- all
> those
> extensions that can be handled with XSLT -- suggests that there
> should
> be a certain level of xAIML interpreter which consists of nothing
> more
> than the ability to apply a designated stylesheet to an input
> document.
> It would make a lot of sense to have a designation of
> "pure-transform"
> or something like that as an available attribute on an xAIML spec
> element.
>
> Noel
>
> Dr. Rich Wallace wrote:
>> Brian, the simple answer to your question is that there does
> exist a body,
>> the AIML Architecture Committee, to debate, propose and adopt
> changes and
>> additions to the AIML spec. For various reasons, that
> committee has been
>> dormant since 2002, and the 1.0.1 spec has remained frozen in
> place. One
>> reason has been that the guy we relied on to write the spec
> (who is not a
>> computer scientist, but a "musician") has decided to compete
> with us
>> rather than cooperate, and has now announced his own confusing
> attempt to
>> create an "XAIML" standard right here on this mailing list and
> elsewhere.
>> I personally don't see any standards efforts moving forward
> until someone
>> starts making more money from AIML applications. So far the
> various
>> projects have adopted an "embrace and extend" approach, which
> has been
>> fertile ground for innovation.
>>
>> One way to handle a simple macro extension like yours is at the
> authoring
>> level. You can have the botmaster write <sr2/> but internally
> expand that
>> expression into <srai><star index="2"/></srai> in the AIML
> file. That way
>> you get the best of both worlds. "AIML Authoring Tools" has
> been a
>> subject of ongoing discussion for some time.
>>
>> Rich
>>
>>> Below is a category out of the Alice AAA Reducer.aiml file.
>>>
>>> <category>
>>> <pattern>_ HOWEVER *</pattern>
>>> <template>
>>> <srai><star/></srai>
>>> <srai><star index="2"/></srai>
>>> </template>
>>> </category>
>>>
>>> My question is this...
>>>
>>> If..... <srai><star/></srai> = <sr/>
>>> Then... <srai><star index="2"/></srai> = <sr2/>???
>>>
>>> Then this would be oh so much briefer if stated as:
>>>
>>> <category>
>>> <pattern>_ HOWEVER *</pattern>
>>> <template>
>>> <sr/>
>>> <sr2/>
>>> </template>
>>> </category>
>>>
>>> Thoughts?
> _______________________________________________
> This is the pandorabots-general mailing list
> To Post, reply to pandorabots-general at list.pandorabots.com
> Unsubscribe and change preferences at
> http://list.pandorabots.com/mailman/listinfo/pandorabots-general
> Learn netiquette at http://www.dtcc.edu/cs/rfc1855.html
> Learn to read at http://www.literacy.org/
> _______________________________________________
> This is the pandorabots-general mailing list
> To Post, reply to pandorabots-general at list.pandorabots.com
> Unsubscribe and change preferences at http://list.pandorabots.com/mailman/listinfo/pandorabots-general
> Learn netiquette at http://www.dtcc.edu/cs/rfc1855.html
> Learn to read at http://www.literacy.org/
More information about the pandorabots-general
mailing list