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

Save mindmaps #13

Open
lolagarden opened this issue Aug 25, 2020 · 1 comment
Open

Save mindmaps #13

lolagarden opened this issue Aug 25, 2020 · 1 comment
Labels
backend Backend related issue epic A large user story

Comments

@lolagarden
Copy link
Collaborator

lolagarden commented Aug 25, 2020

Epic
As a user, I'd like to create mindmaps using my data and save mindmaps so I can access them again

Acceptance Criteria

  • SQL database table exists to store JabMap data
  • Users are able to re-access their mindmap

User Stories

Notes

Since the native FileFormat of JabRef is BibTeX, also the nodes in the mindmap should be stored as BibTeX:

@mindmapnode{node0,
  text = {...},
  cildren = {node1,node5,node2}
}
   
@mindmapnode{node1,
  test = {**markdown**},
  icons = {exlamation,note},
  bibentry = {ukl09},
  collapsed = {true}
}
  • bibentry allows liking of one entry - multiple ones have to go to seperate nodes
  • children: Order is stored in the array
    • no parent pointer not to duplicate information
    • BAD: parent to keep data structure lean + order has to be given as numbers
  • Mindmaps flow from left to right
  • Multiple root nodes could be possible -- all nodes without parent are root nodes -- mindmap selection possible
  • File attachment only via BibTeX
  • Future work: arrow
@lolagarden lolagarden added backend Backend related issue epic A large user story labels Aug 25, 2020
@lolagarden lolagarden changed the title SQL Data Management Save mindmaps Aug 25, 2020
@koppor
Copy link
Collaborator

koppor commented Aug 26, 2020

Sketch refs koppor#433.

The SQL database is maintained by JabRef.

Rough idea:

  1. JabMap sends JSON to JabRef (refs [8pt] Add (basic) REST-interface to JabRef #23 and [1pt] MindMap data model #41)
  2. JabRef REST PUT endpoint replaces MindMap in the currently opened database by mindmap sent from JabMap
  3. JabRef maps the JSON to a Java data structure (refs [1pt] MindMap data model #41 and [4pt] Make BibTeX to MindMap parser #38)
  4. JabRef internally stores the nodes in the database associated with the currently opened mindmap (file system or database) - no action required at your side. This already has happened

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Backend related issue epic A large user story
Projects
None yet
Development

No branches or pull requests

2 participants