
SuggestArticle()
****************


FUNKTION
========

   protected varargs int SuggestArticle(string name);


DEFINIERT IN
============

   /std/thing/language.c


ARGUMENTE
=========

   name
        Der Name zur Entscheidungshilfe.


BESCHREIBUNG
============

   Diese Funktion versucht herauszufinden, ob der Artikel zu diesem Objekt
   ein unbestimmter oder besser ein bestimmter Artikel sein sollte. Die
   Vorgehensweise ist folgende: Gibt es in der Umgebung dieses Objektes
   ein weiteres Objekt, das den Namen name besitzt, so wird ein
   unbestimmter Artikel vorgeschlagen, ansonsten ein bestimmter.


RUeCKGABEWERT
=============

   0, wenn ein unbestimmter Artikel geeignet ist, ansonsten 1.


BEMERKUNGEN
===========

   Der Vergleich erfolgt mittels der Property P_NAME. Um Erfolg zu haben,
   sollte man diese Funktion daher in der Form

   SuggestArticle(QueryProp(P_NAME))

   aufrufen.


SIEHE AUCH
==========

   QueryArticle(), name(), /std/thing/language.c

Last modified: Wed May 8 10:25:34 1996 by Wargon
