Integrating related articles from MrDlib into JabRef

recommender-system

(Stefan Feyer) #1

We from MrDlib are on it to integrate related article recommendation into JabRef.
Since our first suggestion for the related article area (raa) was misplaced, we here introduce two design alternatives for that.

In the first suggestion the raa was placed as a tab in the “edit bibtex file” area, reachable by double clicking an item:

This implicitly associate the possibility to edit the recommendations and maybe also they are fixed or self set. This is why we introduce here two design alternatives.

The first is located directly beside the detail view of the selected database entry:

SEE FIGURE 2 edit: i am a new user and i cant put more than one image in the post. please have a look in the next entry to find the image.

This view can be toggled via a button in the very top, beside the toggle button for the detail view. They could be both or single visible. For introducing the new feature we would suggest to have it open for the first startup after the update.
To place it here overcomes also a drawback of the detail view. The view is imo to wide to read the abstract properly. Which could then be read more easily.

The second suggestion for the raa is placing a button in the detail view:

SEE FIGURE 3 edit: i am a new user and i cant put more than one image in the post. please have a look in the next entry to find the image

With this button pressed a window pops up showing the related articles:

SEE FIGURE 4 edit: i am a new user and i cant put more than one image in the post. please have a look in the next entry to find the image

In total I discussed over 13 different alternatives, leading at the very end to this two, as being accomplishable and and proper.

We are looking forward for your comments!

i.A. Team MrDilb, Stefan Feyer


From which source would JabRef users like to receive article-recommendations?
(Stefan Feyer) #2

figure 2


(Stefan Feyer) #3

figure 3


(Stefan Feyer) #4

figure 4


(Qi) #5

This looks interesting to me. Question: when one finds related articles, would it be nice to have some kind of Select boxes to let the user download the BibTex source code and files by selecting some of them? Or, how do you manage the auto-downloading case?

Just a little off-topic comment, I appreciate your efforts on the Docear project which has the recommendation and mindmap systems intergrated all together. Would it be possible to have the latest version of JabRef included in Docear as a submodule? This might be easier for you guys to use the latest version of JabRef to avoid formatting problems for users. I looked at your repo, but it seems more complicated than I thought. Alternatively, you may also be able to include Freeplane into JabRef for the mindmap system as well. I think only when those systems integrated together, the Reference management system will become powerful enough to compete with Mendeley, Zotero and others.


(Joeran) #6

so, if nobody disagrees we go for the draft in Figure 2.

would it be nice to have some kind of Select boxes to let the user download the BibTex source code and files by selecting some of them?

That’s a good idea for a future version. For the first version we want it as simple (and easy to implement) as possible.

About combining Docear & JabRef: That’s something that might happen somewhen in the future, when we have more manpower.


(Qi) #7

Yeah, Figure 2 is my favorite one. Thank you for the efforts.


(Matthias Geiger ) #8

A single opinion from one of the developers:
Personally I would prefer another tab in the editor showing the related articles. I barely use the entry preview but the editors the most time.
And I don’t think that it is a problem that editing is not possible in this tab.

Figure 2 would be okay for me as well. Just a question: What would happen if I try to edit an entry? Will the “related articles” be replaced as the preview with editor, or will it be visible next to the editor?

Regards
Matthias


(Tobias Diez) #9

I also would prefer a special tab. It is also the way I decided to go for showing additional information from MathSciNet, see below.

Maybe combining Figure 2 with the extra tab might be a good compromise. Next to the entry preview you show a few articles from the bib file which are related to the selected one and you add a “more…” button which jumps to the tab. What do you think about this idea?

As for the implementation, you can try to reuse code from the importer dialog. So you would receive the recommendations from MrDlib in BibTeX format, parse these to BibEntries and then display them in a list.


#10

@tobiasdiez Wouldn’t it make JabRef interface more consistent if the preview was also a tab?


(Tobias Diez) #11

I think this is indeed a good idea. Now we just need someone with the time to implement it :slight_smile: . I created a new issue to keep track of your suggestion.


(Dellu) #12

Picture 1 is my favorite.

But, isn’t there any way to remove some of the fields there: the “deprecated” column, for example, seems to do not much a use. Its sub-fields can also be incorporated into the “general field”. So, it would make sense if there is way to customize these columns (fields) so that the Suggestion field [your new field] could come to the center (prominent position).


(Joeran) #13

Personally I would prefer another tab in the editor showing the related articles.

Wouldn’t it make JabRef interface more consistent if the preview was also a tab?

ok, we agree that maybe the original option might be the best choice. especially if some day the preview was integrated as tab (which i advocate), then the related articles obviously should also be a tab.

in addition, the original suggestion is probably easiest to implement :slight_smile:


(Joeran) #14

ok, we will beginn then with the original proposal, i.e. the recommendations in a separate tab :slight_smile:


(Oliver Kopp) #15

Don’t forget that we also offer JavaFX support. Just continue at the javafx branch. I seems that developing UIs with JavaFX is simpler. @tobiasdiez or Tobias Boceck can support?


(Tobias Diez) #16

Yes, just have a look at https://github.com/JabRef/jabref/pull/1378 where the tab content was designed in JavaFX. If you have any questions regarding the implementation, feel free to ask here or at github (probably better suited to discuss code details).


(Stefan Feyer) #17

I implemented the basic functionality:
Created a new tab with (basic) loading animation, get server connection (in a thread), and as soon the result is received, they are displayed. The titles are clickable and open a new browser tab.
Last big Bug: Its only loaded once, while the other tabs get updated, had not really time to figure out why, but maybe here is a smart guy who can tell me where the mistake in my approach is.

Request is only an example and does not relate to the selected bibtexitem. The request handling on the server-side needs to be implemented. The visuals are also up to change.

If you have any recommendation or feedback, please let us know.


(joerg.lenhard) #18

@feyer: The chance of someone looking at your code in your fork and digging for the stuff you wrote is, let us say, not too big. If we review code, then we need to see the diff to master, there is simply too much reviewing to be done to afford the time to look at other forks.

So if you want code related feedback, a pull request would be the place for discussion. If it is just about UI design, this thread here and screenshots are also fine of course.


(Sara Yousif) #19

Hello everybody,

Your project is very interesting to me.
I would like to share with you some of my thoughts and questions regarding the interface of the Mr. DLib tab in JabRef:

First of all, should the tab follow the style of JabRef so that it will be consistent with rest of the program? (which is colorless with only bold and italic styles)
I think it will look like:


(Sara Yousif) #20

Secondly, I thinks it is good to have annotation color following the logo colors of Mr. DLib (Blue, green, yellow, orange and brown) for (title, authors, publisher and year.
it may look something like: