[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Re: [ANN] XML Limerick Competition
At 03:13 PM 1/11/2002 -0500, Mike Champion wrote: >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? The following covers at least the syllabification: <?xml version="1.0" encoding="UTF-8"?> <!ENTITY % normal.foot "(%iamb; | %anapest; | %tertius.paeon; )"> <!ENTITY % last.foot "(%iamb; | %anapest; | %tertius.paeon; )"> <!ENTITY % iamb "( da, dum )"> <!ENTITY % anapest "( da, da, dum )"> <!ENTITY % tertius.paeon "( da, da, dum, da )"> <!ELEMENT da (#PCDATA)> <!ELEMENT dum (#PCDATA)> <!ELEMENT limerick (long, long, short, short, long)> <!ELEMENT long ( %normal.foot;, %normal.foot;, %last.foot; )> <!ELEMENT short ( %normal.foot;, %last.foot; )> Here is an XML instance that validates against the DTD: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE limerick SYSTEM "c:/temp/limerick.dtd"> <limerick> <long> <da>There</da> <dum>was</dum> <da>a</da> <da>young</da> <dum>la</dum> <da>dy</da> <da>named</da> <dum>Bright</dum> </long> <long> <da>Who</da> <da>could</da> <dum>trav</dum> <da>el</da> <da>much</da> <dum>fast</dum> <da>er</da> <da>than</da> <dum>light</dum> </long> <short> <da>She</da> <dum>set</dum> <da>out</da> <da>one</da> <dum>day</dum> </short> <short> <da>In</da> <da>a</da> <dum>rel</dum> <da>a</da> <da>tive</da> <dum>way</dum> </short> <long> <da>And</da> <da>re</da> <dum>turned</dum> <da>on</da> <da>the</da> <dum>prev</dum> <da>i</da> <da>ous</da> <dum>night</dum> </long> </limerick> Some work remains to be done here. First, I have not represented word boundaries or punctuation here. This brings up the topic of multiple concurrent hierarchies, which could be addressed in a number of ways, including TEI milestones or stand-off markup. Once the words are represented, we have to determine whether stress is accurately represented. This requires access to a dictionary of the language that represents stress and syllabification. GIven this, a schema adjunct could be written, using a vocabulary designed to determine if the marked-up stress is accurate. Similarly, another vocabulary could be designed to represent the desired rhyme scheme, and this could leverage a rhyming dictionary. Both of these dictionaries should be represented as XML, of course. A stylesheet can be written to provide a standard representation of this. Shall we start this project on Sourceforge? Jonathan
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|