Folktale Description Language

Kotaro Sato
FDL Research Group

In this paper, we present a new approach to the structural analysis of folktales. We apply computers and the Internet to the analysis. We designed an FDL (Folktale Description Language) and translated Japanese folktales into FDL. We also developed an OFDA (On-line FDL Document Analyzer) that searches the FDL document database for documents that include a specified pattern of sentences. Both computers and people can understand FDL easily.
   The FDL document consists of "elemental sentences." A combination of elemental sentences makes up the functions in structural analysis, the motifs and the types.
   The results of OFDA analysis help us find some interesting characteristics of the folktales, as well as hints for researching the folktales in the future.

Keywords: Folktale Description Language, Structural Analysis, Function, Motif, Type, the Internet, World Wide Web, Search System, Computer Aided Translation, Story Engineering.

1. Introduction

Structural analysis is an important category of folktale research. We propose the application of computers and the Internet to analyze the structure of folktales.
   Vladimir Propp [5] and Alan Dundes [2] have showed that folktales have a lot of structural characteristics. But until now the structural analysis has been done by handiwork. So it was inefficient, closed and hard to recycle.
   Our approach consists of following procedure:

(1) Translate original stories into a series of "elemental sentences" in FDL (Folktale Description Language).
(2) Register these translated stories with the database on the computer network.
(3) Enter the structure you want to find as a search pattern on a web browser, then you can get matched stories anytime, anywhere.

   You can analyze not only the structures but also the types, the motifs, the styles and the images of the folktales. We expect FDL technology to have a wide range of application in interdisciplinary fields too.

2. Structural Analysis of Folktale on Computer

Today, computers cannot understand natural languages, not to mention stories. But computers are useful tools to analyze the structure of folktales. We do not need a concrete meanings of the objects, but we need the relationships between the objects expressed as a sign in structuralism. Computers are good at searching for symbolic relationships and can do it quickly. Different from novels or poems, folktales have very few emotional or abstract expressions. Folktales and computers are well-suited because the folktales are only a set of objective events.
   To analyze the structure of the folktales by computers, we designed an artificial language called FDL (Folktale Description Language) with the basic idea of "Transfer drives story."
   For example, in "Snow White", there are many people moving here and there. Furthermore, some props (e.g., comb, apple) and information (e.g., "Be careful with your stepmother.") are moved, too.
   In FDL, "elemental sentence" has the following basic pattern:

Subject (who moves) Verb (how it moves) Object (what it moves)

where "Verb" means doing some action to an "Object" in a broader sense.
   A combination of elemental sentences creates the functions in structural analysis, the motifs and the types. Table 1 is a model of relationships among them. There are folktale texts (X1, X2 ... Xn) translated into the combination of the elemental sentences (E1, E2 ... En). For example, when M1 (motif-1) consists of E1 + E2, X1 and X2 contain M1. When T1 (type-1) consists of M1 + M2 + M3, X1 and X2 is T1. In this sample, X2 is both T1 and T2, because X2 also has T2 after T1. On the other hand, E5 + E6 and E5' + E6' make different motifs (M3, M8) but same function (F3). A one-to-one correspondence between motif and function doesn't come generally.
   Therefore, "elemental sentences" are the base of folktale research in various categories. And we developed a software system called OFDA (On-line FDL Document Analyzer) that searches the folktale texts in FDL for the matched pattern described as elemental sentences.

Table 1: A Model of Relationships Among Elemental Sentences, Functions, Motifs and Types
Scene1 (S1)
Scene2 (S2)
Scene3 (S3)
Scene4 (S4)
Scene5 (S5)
Scene6 (S6)
Motif Formation
Folktale Text
(Motif →)
E1 E2
E3 E4
E5 E6
(Motif →)
E1 E2
E3 E4
E5 E6
E7 E8
E9 E10 E11
(Motif →)
E7 E8
E9 E10 E11
(Motif →)
E7 E8
E9 E10 E11
(Motif →)
E1' E2'
E5' E6'
(Motif →)
E7' E8'
E9'   E11'
F1 F2

Note: "X" is "Folktale Text." "E" is "Elemental Sentence." "F" is "Function." "M" is "Motif." "T" is "Type."
Motif1 = E1+E2, Motif2 = E3+E4, Motif3 = E5+E6, Motif4 = E7+E8, Motif5 = E9+E10+E11, Motif6 = E12, Motif7 = E2', Motif8 = E5'+E6', Motif9 = E12', Motif10 = E7'+E8', Motif11 = E9'+E11'
Function1 = E1 or E1', Function2 = E2 or E2', Function3 = M3 or M8 = (E5+E6) or (E5'+E6'), Function4 = (M4+M5) or (M10+M11) = (E7+E8+E9+E10+E11) or (E7'+E8'+E9'+E11')
Type1 = M1+M2+M3, Type2 = M4+M5, Type3 = M7+M8+M9, Type4 = M7+M10+M11
"=" means "require" here.

3. Folktale Description Language

3.1 Overview of FDL

FDL (Folktale Description Language) is an artificial language used to describe the structure of folktales. As a general rule, one story is copied onto one file, and one event makes up one line. Not only computers but also people can read FDL easily.
   Language, including FDL, consists of grammar and vocabulary. The grammar of FDL is almost completed, but the vocabulary of FDL is under construction. So we are compiling an "FDL dictionary" that includes all words one can see or use in FDL documents.
   We have translated 30 folktales from Japanese Folktales [4] into Japanese FDL (JFDL) as a test. We found some interests in these FDL documents by using the OFDA search system. (See below for further details.)
   FDL is ready for internationalization. For example, to translate Japanese FDL (JFDL) into English FDL (EFDL), you just need to replace words.

3.2 Sample of FDL

Let us read a famous Japanese folktale "Urashima Taro" in FDL (JFDL, EFDL).
   An FDL document consists of three parts.

(1) TITLE part includes the title, the translator, the translation date and so on (The top letter of the line is "#").
(2) INFO part includes the type, the sub-type, the original title, the source and so on.
(3) STORY part includes the body divided into some motifs.

"{" and "}" expresses the range of the "INFO part" or the "STORY part."
   The following is a literal translation (line by line) from FDL followed by commentary.

Motif-1 (Scene-1)

EFDL: UrashimaTaro = @sea.near.village
English: Urashima Taro was at a village near the sea.
Commentary: "=" is a verb that means the existence or state, similar to "be" in English. "@" is a preposition similar to "at" in English. "." is a connective. "A.B" (in EFDL) means "A B" or "B of A" (in English). For example, "red.flower" (in EFDL) means "red flower" (in English), and "table.leg" (in EFDL) means "leg of table" (in English).

EFDL: child** bully turtle
English: Children bullied a turtle.
Commentary: The past tense (e.g., "bullied") is expressed in the present tense (e.g., "bully") in FDL. "*" is a numeral mark. For example, "daughter*3" (in EFDL) means "3 daughters" (in English), and "money**" (in EFDL) means "a lot of money" (in English).

EFDL: UrashimaTaro buy turtle <child**
English: Urashima Taro bought the turtle from the children.
Commentary: "<" is a preposition similar to "from" in English.

EFDL: UrashimaTaro release turtle >sea
English: Urashima Taro released the turtle to the sea.
Commentary: ">" is a preposition similar to "to" in English.

Motif-2 (Scene-2)

EFDL: UrashimaTaro fish @sea
English: Urashima Taro fished in the sea.

EFDL: turtle appear <sea
English: The turtle appeared from the sea.

EFDL: turtle say >UrashimaTaro (turtle = Otohime.messenger)
English: The turtle said to Urashima Taro, "I am Otohime's messenger."
Commentary: When a sentence includes other sentences, it is enclosed with round brackets. Otohime is the name of a princess who lives in Ryugujoh, an undersea castle. A proper noun should be with a capital letter.

EFDL: turtle want (UrashimaTaro ride >turtle.back)
English: The turtle wanted Urashima Taro to ride on his back.

EFDL: UrashimaTaro ride >turtle.back # closing eyes
English: Urashima Taro rode on turtle's back.
Commentary: "#" is an annotation mark. You may note an important or interesting thing without relation to the structure of the story.  It's effective to the end of the line.

EFDL: UrashimaTaro arrive @Ryugujoh
English: Urashima Taro arrived at Ryugujoh.

Motif-3 (Scene-3)

EFDL: Otohime say >UrashimaTaro ((UrashimaTaro :help turtle) ~ (Otohime :wait: UrashimaTaro +feast))
English: Otohime said to Urashima Taro, "I have been waiting for you with a feast because you helped the turtle."
Commentary: "~" is a conjunction mark that shows a strong relation between two sentences. "(sentence_A) ~ (sentence_B)" (in EFDL) means "sentence_B because sentence_A" (in English). "+" is a preposition similar to "with" in English. ":" is a tense mark. For example, ":verb" is the past tense, "verb:" is the future tense and ":verb:" is the progressive form.

EFDL: UrashimaTaro eat feast
English: Urashima Taro ate a feast.

EFDL: UrashimaTaro watch fish**.dance
English: Urashima Taro watched a dance of fish.

EFDL: $TIME=3.month.during, UrashimaTaro live @Ryugujoh
English: For three months, Urashima Taro lived at Ryugujoh.
Commentary: Use "$TIME=" to express the time that includes date, season, etc.

EFDL: UrashimaTaro say >Otohime (UrashimaTaro want (UrashimaTaro return >village))
English: Urashima Taro said to Otohime, "I want to return to the village."

EFDL: Otohime give >UrashimaTaro tamatebako
English: Otohime gave a tamatebako to Urashima Taro.
Commentary: Tamatebako is an "Urashima's casket."

EFDL: Otohime say >UrashimaTaro (UrashimaTaro ! tamatebako)
English: Otohime said to Urashima Taro, "Don't open the tamatebako."
Commentary: "!" is a negation mark. "permission" is an auxiliary verb that means "have a permission to do" in English.

Motif-4 (Scene-4)

EFDL: UrashimaTaro return >village # ride on turtle's back
English: Urashima Taro returned to the village.

EFDL: village.state =.change
English: The state of the village had been changed.
Commentary: "=.verb" expresses the state.

EFDL: UrashimaTaro ask >oldster (oldster =.know UrashimaTaro)
English: Urashima Taro asked an oldster, "Do you know Urashima Taro ?"

EFDL: oldster say >UrashimaTaro ($TIME=300.year.before, UrashimaTaro !:return <sea) # hearsay
English: The oldster said to Urashima Taro, "Three hundred years ago, he didn't return from the sea."

EFDL: (UrashimaTaro open tamatebako) ~ (UrashimaTaro become oldMan) # white smoke from tamatebako
English: Because Urashima Taro opened the tamatebako, he became an old man.
Commentary: A collocation (e.g., "old man") is described as one word (e.g., "oldMan").

4. On-line FDL Document Analyzer

4.1 Overview of OFDA

OFDA (On-line FDL Document Analyzer) is software used to analyze folktales in FDL. Basically, OFDA searches the FDL document database for documents (story texts) that include the same structure as (or similar to) your inputted sentences.
   However, OFDA executes a special search. To put it concretely, when you input plural sentences (e.g., three sentences) as a search pattern, OFDA searches for the FDL documents that include these sentences in sequence with or without some unrelated sentences between them. And OFDA allows you to input some defective sentences or the regular expressions [3]. These contrivances mean that OFDA can extract a common structure from different type stories.

4.2 System Architecture of OFDA

OFDA is a client server system on World Wide Web (see Figure 1). There are folktale databases in FDL and search engine on the web server. Original CGI script of OFDA is described with Perl script by us. You can use OFDA through the web browser (e.g., Netscape) from all over the world (see Figures 2 and 3). OFDA is located on:
(Japanese environment required)

Figure 1: System architecture of OFDA.

Figure 2: Snapshot of OFDA (input page).

Figure 3: Snapshot of OFDA (output page).

4.3 Sample of Search and Analysis with OFDA

Explanatory Notes -------------------------------------------------
Input-J: the search pattern in Japanese FDL (JFDL).
Input-E: the search pattern translated into English FDL (EFDL).
Output: the result in Japanese and translated into English.
Commentary: the explanation.
Note: Search targets are 30 folktales in JFDL from Japanese Folktales [4].

Input-E: needle
Output: Three folktales 'Issun Boushi' (一寸法師), 'Yumemi Kozou' (夢見小僧) and 'Hebi Muko Iri' (蛇婿入り) are hit. OFDA shows the matched lines in FDL with the line numbers. For example, in 'Hebi Muko Iri',
  In JFDL:
  34: 母 命令する >娘 (娘 刺す 針 >若者。着物。裾)
  In EFDL:
  34: mother command >daughter (daughter stab needle >youth.clothes.hem)
Commentary: Example of a word search. OFDA searches for the matched word that appears for the first time in each document. When you input the following as a search pattern, you get matched stories in which 'needle' appears twice.
  In JFDL:
  In EFDL:
  needle <<return>>
  Note: 《改行》 or <<return>> means 'type RETURN or ENTER key on the keyboard.'
The first or the second appearances are important information to analyze the structure of the story.

Input-J: ”植物
Input-E: "plant
Output: Some plants appear in sixteen folktales (53%).
Commentary: Example of a word class search. Double quotation (") is a mark of the 'word class' that means the synonym group. ' "plant ' consists of 'tree, leaf, bud, flower, pine, cryptomeria, willow, mulberry, peach, cherry, iris, chrysanthemum, camellia, mushroom' (木、葉、芽、花、松、杉、柳、桑、桃、桜、菖蒲、菊、椿、茸) temporarily. It seems probable that Japanese folktales have a close relation with plants.

Input-J: ”動物 ”話す
Input-E: "animal "speak
Output: Five folktales 'Hanasaka Jii' (花咲かじい), 'Hebi Muko Iri' (蛇婿入り), 'Neko no Odori' (猫の踊り), 'Saru Muko Iri' (猿婿入り) and 'Urashima Taro' (浦島太郎) are hit.
Commentary: Example of a sentence search. OFDA searches for the story that includes 'some animals spoke something.'

Input-J: ”動物 ”話す 《改行》
      娘 なる ”動物。嫁
Input-E: "animal "speak <<return>>
      daughter become "animal.wife
Output: One folktale 'Saru Muko Iri' (猿婿入り) is hit.
Commentary: Example of a plural sentences search. There is only one folktale that includes 'a daughter became animal's wife after an animal spoke.' Such search pattern is suitable for structural analysis. But this is a simple sample. You can input more lines as a search pattern.

Input-J: ”男 ”移動する 《改行》
Input-E: "man "move <<return>>
Output: There are ten folktales including 'a man moved' in the opening scene (Motif-1).
Commentary: You can use a more complex search pattern that includes 'Motif-2', etc.

Input-J: 命令する >”男
Input-E: command >"man
Output: There are four folktales including 'someone commanded a man to do something.'
Input-J: 命令する >”女
Input-E: command >"woman
Output: There is one folktale that includes 'someone commanded a woman to do something.'
Commentary: It seems likely that the former is more than the latter in Japanese folktales. To declare it, of course, more folktales are needed on the database in the future.

5. Conclusion and Future Work

We have presented a new environment with computers and the Internet to analyze folktales. We designed an artificial language, FDL, translated Japanese folktales into FDL, and developed an OFDA search system to analyze the structure of the folktales. We now get some interesting characteristics of folktales and hints to research folktales in the future.
   We also built the CAT (Computer Aided Translation) system that includes "JFDL CHECKER" and "JFDL UPLOADER" as a client server system on World Wide Web. JFDL CHECKER indicates the errors of vocabulary and spelling of the words in a JFDL document. JFDL UPLOADER allows translators to send a JFDL document to the OFDA server from anywhere and anytime, which makes our translation work more efficient.
   We make full use of the computers and the Internet for all scholars, too. The results of our research and the databases are open to everyone in the world.

   In future work, we hope to extend our system and research following items:

Our approach is the first step to a new science called "Story Engineering."

A. Appendix

A.1 Additional Mark List

We have explained the marks of FDL in "3.2 Sample of FDL." But there are more marks in FDL:

"?" is a mark of obscure element. "??" means the word not narrated explicitly. "?" makes an interrogative sentence.
(e.g.,) 4.dwarf say (? eat
Note: "4.dwarf" means "the fourth dwarf."

"$" makes "state sentence" and "sub sentence", which support "main sentence."
(e.g., for "state sentence")
$ADVERB=always, $ADVERB=together, (1.merchant & 2.merchant) travel ;business
(e.g., for "sub sentence")
cat say >daughter ($CONDITION=(daughter say >(father & mother) (cat :(sing & dance))), daughter die)
$SAMETIME=(bushWarbler fly.leave >storehouse.outside), (mansion & storehouse) disappear
Note: "fly.leave" is a compound verb that means "fly to leave." But "(sing & dance)" is not a compound verb in FDL.

"$" makes other elements. "$?" means preceding "?" (not "??"). "$??" means preceding "??" (not "?"). "$CIRCUMSTANCES" means circumstances or particulars.

"," is a punctuation mark connecting "state sentences" or "sub sentence", and "main sentence."

"%" rewords the character from this point.
(e.g.,) % daughter > wife

"&" is a conjunctive mark similar to "and" in English.

"|" is a conjunctive mark similar to "or" in English.

";" expresses the objective of the sentence.
(e.g.,) dwarf*7 go >mountain ;(dwarf*7 dig (mineral & gold))

"^" is a mark of supplementary explanation of the preceding line.
(e.g.,) ^ (flower** & herb**) = @garden

A.2 Auxiliary Verbs in FDL

"can" means "be able to do."
"!can" means "be not able to do."
"obligation" means "be forced to do."
"!obligation" means "be not forced to do."
"should" means "ought to do."
"!should" means "ought not to do."
"permission" means "have a permission to do."
"!permission" means "have no permission to do."

A.3 Members of FDL Research Group

Nozomi Hachino (Compiler, Translator)
Kogi Kato (Compiler, Translator)
Yuko Matsumura (Compiler, Translator)
Minako Numaga (Compiler, Translator)
Toshio Ozawa (Producer)
Kotaro Sato (Director, Programmer, Translator)


[1] Aarne, Antti and Stith Thompson. The Types of The Folktale. Helsinki: Helsingin Liikekirjapaino, 1961, 1981.

[2] Dundes, Alan. The Morphology of North American Indian Folktales. Helsinki: Helsingin Liikekirjapaino, 1964.

[3] Friedl, Jeffrey. Mastering Regular Expressions: Powerful Techniques for Perl and Other Tools. Sebastopol: O'Reilly, 1997.

[4] Ozawa, Toshio and Suekichi Akaba. Japanese Folktales. Tokyo: Fukuinkanshoten, 1995.

[5] Propp, Vladimir. Morphology of the Folktale. University of Texas Press, 1958, 1968.

This paper was originally published in Horizon of Folktale Reserach, October 1, 2002. And it was based on Images of Folktale 3, March 31, 2000.

to FDL home page (Japanese environment required)

Copyright (c) 2002 Kotaro Sato, FDL Research Group. All rights reserved.