Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Universal Translator for Hyperglyphs - aka: templates #291

Open
saxondigital opened this issue Aug 21, 2020 · 3 comments
Open

Universal Translator for Hyperglyphs - aka: templates #291

saxondigital opened this issue Aug 21, 2020 · 3 comments

Comments

@saxondigital
Copy link
Contributor

saxondigital commented Aug 21, 2020

Directly support 3rd party data (of specific formats) with templates based on a set of tables:

  • User domains (organization, group, team, individual) with access control and selective sharing.
  • Map external attribute(s) to node attributes, (similar to OSC, channel map and globals tables).
    • Import, Export and Update both static and near/real-time data.
    • Support external data relationships mapped to native hyperglyphs:
      • 3rd party hierarchy (tables linked by foreign keys) mapped to a hyperglyph.
      • Single table row being mapped to multiple nodes within a hyperglyph.
      • Predefined methods and custom (Python) scripts.
    • Combine templates (merge) with template inheritance (hierarchy).
    • Map external (query) selection sets to native selection sets and vice versa.
    • Reorganize entire viz (or specific subset) based on user modification, ie: user wants to separate out all females age 24-32 onto a new forest of hyperglyphs.
  • Transcoders for format conversion (ie: range, average, etc).
    • Many to many mapping (ie: single value -> scale_x/y/z).
      • Records that span tables (and trees) mapped to a hyperglyph forest (of multiple species).
    • Multiplex components (ie: 3 external attributes mapped to 2 node attributes).
    • Format conversion:
      • Predefined C methods, (ie: slope intercept, log, tailor series, age to color.)
      • Custom Python scripts and/or (compiled) plugins.
      • Create, delete or modify node based on a threshold condition, ie: add a node if person has a pet, use topo=X if child_count >= Y.
      • Aggregate values from multiple records, ie: a fileviz node (folder) that has a size based on the size/number of all subfolders.
  • Planned (core) Formats:
    • CSV provides the least structure, but is the most common data type, (requires manually defining the structure sand meaning).
    • SQL (MySQL/PostgreSQL), slightly more structure (foreign key, defined data type: int, float, string).
    • JSON (REST), significant structure (trees, field metadata, common for online data and DB transfer).
    • OSC for (local) realtime IO, has little structure.
  • Possible additional formats:
    • MQTT for IoT devices, similar to JSON/XML data.
    • PostGIS (for PostgreSQL) provides standardized GIS data types.
    • Graph DB (Neo4J/Tinkerpop), has defined graph relationships.
    • glTF, portable 3D model format for WebGL, 3D modelers, has bones (akin to topos) and tracks.
  • Use cases:
    • Tables linked with foreign keys, ie: people, organizations, address, income, etc.
    • GraphDB, ie: social media graph.
    • Large tree, ie: FileViz, SNMP schema, EOL, SDG, etc.

*Note that creating the templates (glyph building), is a separate processs. This issue is focused on a narrower scope, the raw method of which a hyperglyph forest can be generated via a set of template tables.

@saxondigital
Copy link
Contributor Author

@saxondigital
Copy link
Contributor Author

Universal API

@saxondigital
Copy link
Contributor Author

@saxondigital saxondigital changed the title Universal Translator - aka: hyperglyph templates Universal Translator for HyperGlyphs - aka: templates Feb 1, 2021
@saxondigital saxondigital changed the title Universal Translator for HyperGlyphs - aka: templates Universal Translator for Hyperglyphs - aka: templates Feb 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant