[
Lists Home |
Date Index |
Thread Index
]
Just take the words and their pronunciations, which presumably are already
syllabified and marked with stresses. Would need to handle morphological
transformations for common prefixes and suffixes.
So you would map a 'word' in the limerick to its dictionary entry,
producing,
<word>limerick
<syllables>
<syllable stress="primary">lih</syllable>
<syllable>muh</syllable>
<syllable>rihk</syllable>
</syllables>
</word>
I made up my own pronunciation notation here for illustration. The one in
the OED would certainly be better.
So the limerick would be <lines> containing <line>s each containing <word>s.
By constructing the strings of syllables representing a line using XPath and
comparing the last several from the lines that are supposed to rhyme, you'd
be able to evaluate to some crude approximation the rhymes as well as the
metric compliance. You'd probably want to have some kind of predicate which
determines, using regular expression matching.whether two sequences of
syllables rhyme, based on some standard rules of rhyming. Then you could
add some near-rhyme heuristics. The pronunciation notation will give a much
easier matching set for determining rhymes.
Jeff
----- Original Message -----
From: "Jeff Rafter" <jeffrafter@defined.net>
To: "Mike Champion" <mc@xegesis.org>
Cc: <xml-dev@lists.xml.org>
Sent: Friday, January 11, 2002 12:35 PM
Subject: Re: [xml-dev] [ANN] XML Limerick Competition
> > Kick me out of the fraternity if you want, but I can
> > imagine doing this input, validation, display job
> > MUCH easier with procedural code than XML ....Can
> > somebody restore my faith (which I almost had, for a
> > minute there) in strongly typed XML and declarative
> > processing?
>
> Well, the OED is in SGML since 1998 (is there an XML subset yet?)-- with
> that we could use Simon's Regular Fragmentations to pull the words apart
at
> the spaces. Then it is a matter of XPath lookups to find the matching OED
> entries. Assuming that we have broken down those OED entries into their
> syllabic parts (which is already done in the SGML) we will have a place to
> go. We can determine stressed and unstressed syllables.
|