API Request: hierarchical R/K/V data structure

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: あ 

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

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.

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.

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).