|
|
|
Sabemos que María es una buena corredora, por lo que podemos asignarle un adjetivo adecuado, como "rápida". Esto se puede generar con la librería usando el concepto de modificador.
|
|
|
|
|
|
|
|
Sin embargo, para considerar a María «rápida», ya no podrás referirte a ella como «sujeto» de la oración. En su lugar, hay que definir su nombre como una frase nominal. De esta forma, podemos atribuir el adjetivo «rápida» a María utilizando la función de modificador.
|
|
|
|
|
|
|
|
NPPhraseSpec subject = nlgFactory.createNounPhrase("María");
|
|
|
|
|
|
|
|
Además vamos a definir también el complemento diecto como una frase nominal y el verbo como una frase verbal. Esto nos permitirá hacer otras cosas más adelante, como añadir un modificador a cada uno.
|
|
|
|
|
|
|
|
NPPhraseSpec object = nlgFactory.createNounPhrase("un mono");
|
|
|
|
VPPhraseSpec verb = nlgFactory.createVerbPhrase("perseguir");
|
|
|
|
|
|
|
|
Ahora, podemos aplicar el adjetivo 'rápido' a María escribiendo:
|
|
|
|
|
|
|
|
subject.addModifier("rápida");
|
|
|
|
|
|
|
|
A continuación, establecemos el sujeto, el complemento directo y el verbo en el `SPhraseSpec p` que hemos definido anteriormente:
|
|
|
|
|
|
|
|
p.setSubject(subject);
|
|
|
|
p.setObject(object);
|
|
|
|
p.setVerb(verb);
|
|
|
|
|
|
|
|
String output3 = realiser.realiseSentence(p); // Realiser created earlier.
|
|
|
|
System.out.println(output3);
|
|
|
|
|
|
|
|
La salida será:
|
|
|
|
|
|
|
|
Rápida María persigue un mono.
|
|
|
|
|
|
|
|
el mismo modo, podemos dejar que el mundo sepa que María está persiguiendo al mono rápidamente. El adverbio 'rápidamente' también se puede agregar usando la función addModifier, pero esta vez es el verbo el que se modifica:
|
|
|
|
|
|
|
|
verb.addModifier("rápidamente");
|
|
|
|
|
|
|
|
La salida será:
|
|
|
|
|
|
|
|
Rápida María persigue un mono rápidamente.
|
|
|
|
|
|
|
|
→ Para ver más ejemplos de frases nominales, ver `testsrc/NounPhraseTest.java`.
|
|
|
|
|
|
|
|
→ Para ver más ejemplos sobre modificadores, ver `testsrc/AdjectivePhraseTest.java`. |
|
|
|
\ No newline at end of file |