Convert nested XML file to some kind of database format and displaying on website - database

Heyos!
I am in sincere need of help and advice with a project I have to work on.
Let me give you a brief overview:
Context:
MeSH-Browser is a website used for displaying "[...] hierarchically-organized terminology for indexing and cataloging of biomedical information [...]" (see: https://www.nlm.nih.gov/mesh/).
The MeSH-data can be downloaded from here: https://www.nlm.nih.gov/mesh/download_mesh.html
What is the task:
Displaying MeSH-data on a website.
What is given:
MeSH-data as mentioned above (see: https://www.nlm.nih.gov/mesh/download_mesh.html).
What is the catch:
I have no experience in developing a back- and frontend.
What I have come up so far:
I figured out that I need to develop a back- and frontend as well as the communication between those.
Convert given MeSH-data in .xml format to database input format.
Create a server running a database fed with the converted MeSH-data.
Communication between database and website.
A website for displaying the data stored in the database.
After googling I found a GitHub project with "Code and documentation for the release of MeSH in RDF format" (see: https://github.com/HHS/meshrdf/).
Hence I set up a virtual machine running an ubuntu server and installed OpenLink's Virtuoso software (see: https://virtuoso.openlinksw.com/), which can be used for querying the resulting RDF.
What has to be done next is integrating the converted MeSH-data in RDF into the Virtuoso database (have not looked into this yet).
Considering the communication with the frontend, I was thinking about using one of the libraries mentioned on https://www.w3.org/community/rdfjs/wiki/Comparison_of_RDFJS_libraries and query the data with the help of SPARQL.
As frontend I would use ReactJS as I find it appealing to me.
That is all for now, what are your opinions?
Please do note that this is only for educational purposes.

Related

Is it alright to write a software creates a roster for a restaurant with JAVA language?

I need some advice on the project im working for fun during the summer. Say im writing a software that helps creating the roster base on the availiabilities of the staffs. I need some advice on how to implement these items below:
A database that holds the infomation of the staffs (ie.
availiabilities, minimum hours, maximum hours).
The core of the software where the process of arranging staffs on a day base on the database.
A GUI that displays the final version of roster after step 2 above so it can be printed out by the manager.
Im thinking of using Java but not sure how i to implement and connect the database, the core and the GUI together? Can i do everything listed using Java?Can anyone please suggest me a solution or an article for this?
There are many different paths you could follow, depending on what your end goals are.
DO you want to learn Java or are you just trying to practice application development ? I am assuming you are interested in an application that runs on the web.
For me, the best choices are either Java or PHP, but this is largely based on my own experiences. Others might argue that Python or Ruby would be a better to start.
For a Java based solution, you would use: Java JSPs with HTML for the front end (Javascript and JQuery optional); Java (Servlets) for the middle tier; JDBC, JPA, Spring, and/or Hybernate to connect to the DB; MySQL is a good candidate for the DB, but there are other options.
For a PHP based solution, you would use: PHP, HTML for the frond end (Javascript and JQuery optional); PHP for the middle tier (there are frameworks you coulse here as well); PHP to connect to the DB; MySQL is a good candidate for the DB, but there are other options.
If you dont know either, I think PHP is easier to setup and run for beginners, and is the basis for many open source and commercial web applications (e.g., WordPress); but Java is used for most large scale applications.

How to integrate Solr with Web Application

After reading many Solr books and article all over on the net, now I have an idea of the power of this server.
But... how to integrate it in a real application? For example: a web site written in PHP, etc.
Right now, I understand that Solr produces XML, JSON etc results... so to integrate this in a web application, the "simple" work is to convert this information for render in a page or there are other technique to avoid this?
I'm my case, I have to develop a search engine to scan many documents and find result.
My idea was:
Use Solr to build an index and search documents
Use a web application to show the result
Looking on the net I haven't find anything that explains how to integrate Solr in a real application, all the reading are about "How to use Solr... with Solr..." Anything about a real integration.
Does someone have some useful resource how to integrate Solr in a real application, with some clean examples?
Edit: It looks like Apache maintains their own list of recommended
client APIs, and their recommended tool for PHP is Google's
library (though they refer to it as SolPHP). Given this, I imagine that this is the best place
to start.
A Solr library for the programming language you're using could save you some of the trouble in implementing the integration. For instance, if your site is written in PHP, you could try Google's Solr library for PHP.
I have done most of my Solr work in Java, so I have used SolrJ quite a bit. This is a well supported tool because it comes from Apache in parallel with the Solr product itself.
If you are doing work in any other languages, you are likely to find libraries available for them. The amount of time they save you may vary according to the quality of the library itself.
When I was using Solr in my project, only my application server (that is Tomcat) was communicating with Solr server. I wrote a class, which executes GET requests to Solr server based on input provided by end user. When Solr returns XML/JSON back to an application server you may parse it and process as every other bussiness data (render an *.html). So, summing up, Web Browser never communicates directly with Solr, all goes through an application server:
WebBrowser -> GET to application server -> GET to Solr server
show *.html <- parse XML/JSON, render *.html <- return XML/JSON

From Excel to WordPress site app

I am searching for the proper way to build an online database application to behave similar to an Excel datasheets that I have.
I have a working excel file with many calculations, and I need to port this to my WordPress website as a service.
My clients would be able to log into the web app section in WordPress, and manipulate their own data sheet, and get results from all the calculations.
Any idea or direction regarding recommended platform or programming language that can do that ?
Sincerely
Dan
If you want to create a web calculators based on an Excel file I would recommend you to take a look at “Appizy”. It converts instantly a spreadsheet into a standalone web calculation tool (HTML+CSS+JAVASCRIPT). You don’t need to hardcode the whole interface and calculation formulas!
As your Excel file is converted in HTML you can download it and paste it in your WP installation.
If you want to include database you might need to had a bit of PHP on top...
Let me know if it helped you!

Create a back-end database for ios & web apps using filemaker

I'm need to create an ipad app that has access to a relational database as well a lot of images (which should be hosted on the web). My boss suggested that I use Filemaker, as he has a license for one of the versions.
I searched the web for information on what is the best way to do this but I'm not 100% sure I got it right.
Is it possible to use Filemaker for the following?
Create a relational database
'Host' images
Run custom scripts (optional but not strictly required)
Publish all of the above to the web, to be accessed by an ios app (and later an web app) through an API.
I understand the the first three points can be done but couldn't find much on how to publish everything and then access it securely later.
Are there better alternatives?
Thank you in advance
FileMaker Server has a fairly good XML API that supports all operations, including FileMaker scripts. It can be used as is or through the official PHP client. There's also an unofficial Python client for it.

Flash and database integration

I recently had a couple of flash products to do, which basically were a clients for some database (online games, movie players). In all of them I used PHP + MySQL as the server database and then made the flash client application work with those databases.
This was ok, but I'm somewhat interested if there is some other choice except PHP + SQL database for the server backend, which would be, like, more Flash-oriented or something (easier to deploy, etc).
Does someone know what can I use for that?
Thank you.
Any server script & database will work with flash. The URLLoader works with any HTTP request. All it's doing is making a request to the server for data.
IMHO PHP + MySQL is the way to go, but you could choose Python or Perl or ASP.net, with Oracle, or DBase, or whatever.
Flash has a nice implementation of XML, so passing data via XML works great. If your data doesn't change very much/often (or even if it does) you can generate static XML files for the flash player to hit. If it's content that changes often, then you'll want to request data directly from the server script.
Just make sure that you send the correct mime type from the server, so that the flash script will know what to do with the data.
I've personally really liked using PHP and MySQL as the backend for a lot of the mom and pop applications/websites I've done, and it serves it's purpose. XML is after all pretty easy to read so debugging is generally not too troublesome.
I think what you're after though is AMF (actionscript message format) this is the serialized version (if you're unfamiliar with the term basically the binary form of the object) of plain old actionscript objects, you can use BlazeDS (free from Adobe) as a component to the server. In big projects I've used some sort of J2EE server (like Websphere or Apache Tomcat), BlazeDS, Spring, and iBatis (Teradata DB sitting behind it but who cares :) ) with some pretty awesome success (setting up this sort of environment isn't trivial though... taken piece by piece it can be done and using build tools like maven makes life easier).
If you've got the gut for it I would recommend this route:
http://code.google.com/p/maven-blazeds-spring-archetype/
Alternatively check out amfphp a php backend that supports AMF or other AMF libraries for your language of choice, it's all very decoupled and each piece can be chosen based on what suits your needs best.

Resources