2. Goal
A module for the Minrva app that searches for articles
and papers on the internet.
Use EBSCO API to access the articles.
Display list of articles related to the user’s search query.
When an article on the list is clicked, display relevant
details about it.
3. Academic Search Premier
Academic Search Premier is
an online database for
thousands of journals. It is
supported by database
service EBSCO Host.
Some of these journals are
fully digitalized, meaning you
can get the entire text of
each article.
Others are only indexed, so
you can get details like date
and title of an article, but
you’ll need to find a print
copy of it.
4. EBSCO API to gather information
Conduct search on EBSCO Host.
Break down URL to see what its made up of.
Review documentation for API and construct URL that will
change according to user’s search query.
Use JSoup to extract and manipulate data (title, authors,
abstract etc.) from modified URL.
Jsoupscrapes and parses HTML from URL, file or string.
6. JSoup
Java library for working with real world HTML and XML.
Parses XML from URL, file or string
Manipulates the XML elements, attributes and text.
Cleans user submitted content against a safe white list to
prevent XSS attacks.
Outputs tidy XML.
7. Tomcat Apache
Open source web server and web container
Provides a pure Java HTTP environment for Java code to
run.
8. Why JSON?
The JSON (Java Script Object Notation) format is often
used for serializing and transmitting structured data over
a network connection.
In our case, we need to transmit data between our server
and the web.
Java Object -> JSON
Json can easily be combined with REST to produce clear
and easy to use API’s.
9. Gson Library
For the mobile application, JSON parsing needs to be
done. For this, we use the Gson library.
It is a Java library that can be used to convert Java
objects into their Gson representation. It can also be
used to convert a JSON String into an equivalent Java
Object.
JSON->Java Object
First we perform an HTTP GET request and retrieve the
resource as a string. We create a Gson instance and use
it to perform the JSON parsing and retrieve our model
object with all its fields populated.
11. Layout
The information gathered from the web service is
displayed on the phone using ListViewLayout in Android.
When an item on the list is clicked, its unique id is taken to
a second server which then gathers information about
the particular article using this id.
The next three slides show snap shots of the app:
12.
13.
14.
15. In the future…
Patron API available?
Make log in interface in order to allow only UIUC students to access
articles.
Suggestion module for journals and articles – similar to Amazon.
Include other databases into the app.
Make an icon that will allow users to send articles to an email
address.
Include other databases such as PubMed into the Minrva app.