KDEEdu/Language/KVocDocumentPlanningJuly2014Temporary

From KDE Community Wiki
Revision as of 06:35, 10 July 2014 by Cola (talk | contribs) (add some links from previous discussions)
 
Under Construction
This is a new page, currently under construction!


Individual Requirements

The following section is for planning the requirements of a replacement for KVTML2. It is divided by application.

Each application is divided into File Format, API and Editor requirements. For current File Format requirements I listed the tags from the http://edu.kde.org/kvtml/kvtml2.dtd http://edu.kde.org/kvtml/kvtml2.dtd] I knew to be used. Editor requirements are to explore the possibility of a common editor widget.

Each of those is divided into current and future requirements. The current requirements are to determine what portions of KVTML2, KEduVocDocument and its associated API are not in use. Future requirements are each application's wishes for the future.

Kanagram

File Format

Current
Future

API

Current
Future

Editor

Current
Future

Artikulate

Artikulate currently uses its own XML based file format, but the mid-term plan is to switch to a common format. The specification for the currently used file format is here:

File Format Requirements

Requirements
  • association of file with one language (the language for that the pronunciation should be trained)
  • string filed for text in training language
  • (optional) string field for text in learner's language/English + i18n integration
  • pronunciation symbols
  • one sound file per string
  • EITHER internal editing states OR special editing file format (like: a phrase is translated into the course' language, but a recording is missing)
  • association to blueprint/skeleton file
Key Differences to KVTML
  • the file format provides a skeleton specification: skeletons are blueprint like files that can be used to create and later synchronize changes for courses of different languages
  • learning statistics are not saved within the file format: there is a learner-library that encapsulates learner, learning goals, and the corresponding statistics data
  • downloaded course files are not meant to be changed/edited, but to be updated (in particular, system wide installation is provided)

Editor

Current
Future

Parley

File Format

Current
Used Tags

Parley uses almost every tag that is parsed from the kvtml2 file so this section is not very useful

  1. information.generator
  2. information.title
  3. information.author
  4. information.comment
  5. identifiers - 2 or more
  6. indentifier.name
  7. indentifier.locale
  8. identifier.comment
  9. indentifier.article
  10. indentifier.article.definite
  11. indentifier.article.indefinite
  12. indentifier.personalpronouns
  13. indentifier.personalpronouns.singular
  14. indentifier.personalpronouns.dual
  15. indentifier.personalpronouns.plural
  16. indentifier.personalpronouns.tense
  17. firstperson
  18. secondperson
  19. thirdpersonmale
  20. thirdpersonfemale
  21. thirdpersonneutralcommon
  22. tenses
  23. tense
  24. lessons
  25. wordtypes
  26. specialwordtype hardcoded as (noun|noun/male|noun/female|noun/neutral|verb|adjective|adverb)
  27. inpractice
  28. entry
  29. entries
  30. translation
  31. text
  32. comment
  33. pronunciation
  34. example
  35. paraphrase
  36. falsefriend
  37. antonym
  38. synonym
  39. multiplechoice
  40. image
  41. sound
  42. comparison
  43. absolute
  44. comparative
  45. superlative
  46. conjugation
  47. tense
  48. singular
  49. dual
  50. plural
  51. choice
  52. grade
  53. currentgrade
  54. count
  55. errorcount
  56. date
  57. containerentry is used indirectly via inheritence of lessons and wordtype so it is not a requirement


Features
  1. Header Information
  2. Per language identifier information to setup locale, articles (definite and indefinite hardcoded) and pronouns (first, second and third person, single, dual and plural hardcoded)
  3. A list of tenses
  4. Two nesting containers: word type and lessons
  5. A marker for special hardcoded wordtypes
  6. Entries with up to 1 translation per language identifier
  7. Each translation can have an image, a sound and several types of text attachments
  8. Each translation can have up to 5 special sets (synonym, antonym, false friends, multiple choice, comparison) attached
  9. Each translation can be a verb with an attached conjugation
  10. Each translation can have a grade consisting of (currentgrade, count, errorcount, date)


Future
  1. ids are alphanumeric so they can be a) human meaningful b) stable if words/lessons/grades are in different locations.

API

Current
Future

Editor

Current
  1. supports 2 or more languages
  2. supports 1 root lesson
  3. supports nested lessons
Future

Currently Unused

These features of the current format appear to be unused

File Format

  1. information.category
  2. identifier.identifiertype - never parsed in kvocdoc
  3. identifier.sizehint - never parsed in kvocdoc
  4. entry.sizehint - never parsed in kvocdoc
  5. leitnerboxes - never used in Parley
  6. deactivated - never parsed in kvocdoc

API

Cumulative Requirements

File Format

API

Editor

Further Reading

The following projects can be interesting for designing a container file format for language learning files: