API Request: hierarchical R/K/V data structure


#1

In another thread about radical consistency, I thought it would be handy to be able to visualise the WK objects hierarchically. To make this easier, what we’d really need is a way to pull this info from the API.

Here’s some examples of what I think would be useful info:

Radicals

  • Meaning: CHILD
  • Character: 子
  • Image: null
  • Level: 2
  • Sub-radicals: GROUND, BARB
  • Sub-kanji: null
  • Meaning: DEVIL
  • Character: 反
  • Image: null
  • Level: 9
  • Sub-radicals: null
  • Sub-kanji: 反
Kanji
  • Meaning: CORRECT
  • Character:正
  • Level: 2
  • Radicals: GROUND, STOP
  • Onyomi: せい, しょう
  • Kunyomi: ただ
Vocab:
  • Character: 出合う
  • Kana: であう
  • Meaning: To Meet By Chance, To Meet Unexpectedly, To Come Across, To Encounter
  • Kanji: 
    • Character: 出
      • Reading: で
    • Character: 合
      • Reading: あ 

#2

As a computer science student, i sure love consistency and hierarchies, but do you have any specific use-cases in mind for this?


#3

Firstly, I’d love to see something like a ‘technology tree’ a la strategy games for the items; to see what leads to what, when, and be able to filter/organise it in various ways. Combining it with personal data would be interesting, too.

Secondly, I think it would be useful for a proper representation of how WK is organised, to get a high-level view of where everything is and rebalance it if required. I’d also like to refactor the radical combinations to eliminate the use of sub-radicals where a super-radical already exists.


#4

I know I say this a lot, but… I’m working on it.  This is a part of my WK Data Framework, which I’m slowly making progress on.  I’m using the dependency tree to extract relationships between kanji to help generate quizzes for distinguishing similar kanji.


#5

That idea for a technology tree is indeed very interesting. Reminds me of the knowledge map for math by Khan Academy.

I also read up on your Data Framework @rfindley. Not sure if it really aligns with @rosyatrandom’s proposal though, or that it’s even the job of us users to even make such a thing. I thought this was more about an API addition/database restructuring, both things we aren’t able to do ourselves. On the other hand, i doubt that something like this is high on Viet’s priority list. So i guess we’ll have to do with what we’ve got (aka @rfindley’s framework).