User:Dschwen/Labelserver2 design plan

From Meta, a Wikimedia project coordination wiki

Jump to: navigation, search

[edit] main structures

Quadtree
spatial sorting of the coordinates
Quadtree MetaNode
  • a table to the actual Quadtree Nodes for each language (or null)
  • four pointers to the children (or null)
Quadtree Node
  • contains the maximum score for the entire sub-tree
  • a table of places
Place table
table of places
Place
  • pointer to a Coordinate
  • pointer to a Labelstring (may be shared between different languages if the spelling is identical)
  • a table of categories
Coordinate table
table of coordinates
Coordinate
  • lat, long
  • source language which the coordinate was extracted from

[edit] for each language

Category table
assigns a number to a category string
Reverse Category index
lists all Nodes who's subtrees contain an item of a given category