JSreal - Documentation

JSreal permet à l'usager de créer des mots, des groupes de mots et des éléments DOM et de les assembler pour former des phrases complexes et des parties de pages web.

Chargement

Deux fichiers JavaScript sont nécessaires au fonctionnement de JSreal: la bibliothèque JSreal.js et le lexique lex-fr.js. Ils sont disponibles sur ce site, alors il suffit d'insérer le code suivant dans une page web pour les charger (le lexique en premier):

<script src="http://daou.st/JSreal/lex-fr.js"></script>


<script src="http://daou.st/JSreal/JSreal.js"></script>

JSreal rend directement disponibles plusieurs fonctions, comme N et AdvP, dont les noms commencent tous par une majuscule pour indiquer qu'elles construisent des objets et éviter qu'elles entrent en conflit avec des fonctions créées par l'usager.

Définitions

Bases

À moins d'ellipse, une phrase est constituée d'un sujet et d'un prédicat. Par exemple, la phrase "Je pars." a comme sujet le pronom "je" et comme prédicat le verbe "partir". JSreal permet de créer ces mots avec, respectivement, les fonctions JavaScript Pro et V.

var suj = Pro('je')<br>var pred = V('partir')

Ces mots peuvent ensuite être utilisés comme arguments de la fonction S, qui les assemble en phrase. On les appelle alors ses constituants.

var phr = S(suj, pred)

Toutes les unités, comme les mots et cette phrase, peuvent être utilisées dans du code JavaScript comme si elles étaient des chaînes de caractères; elles sont alors réalisées en une telle chaîne, assemblées selon les règles grammaticales et syntaxiques.

La méthode toID permet aussi d'envoyer la réalisation d'une unité dans l'élément qui a l'indentifiant (id) spécifié; la méthode addToID ajoute à cet élément au lieu d'en remplacer le contenu.

phr.toID('content')

Dans la documentation, les unités JSreal sont généralement créées en un seul bloc, sans variables intermédiaires, et leur réalisation est affichée juste en-dessous à fin de démonstration. Tous ces exemples peuvent être essayés dans la fenêtre de test.

Je dépasse la voiture. S(VP(V('dépasser'), NP(D('le'), N('voiture'))), Pro('moi'))

Dans ce dernier exemple, JSreal a automatisé plusieurs étapes: