One of the most powerful and exciting trends in technology is the emergence of “web services.” This technology trend allows computers to talk to each other to accomplish tasks in ways that are transparent to us end users. The way this works is that one computer acts as the server and other computers request help from the server, which responds to their requests. That way the functionality can be implemented on one computer and made available to many other computers without burdening those other computers with the resource constraints required to perform the function.
The most famous example of web services is Google’s API. It has taken years of software development and crawling the web to build a massive index of the entire Internet. None of us could afford to duplicate that functionality nor the terabytes of disk storage required to hold that index data. However, Google now allows virtually any website (under specific license restrictions) to search their index and present the search results within the independent website.
We will look for similar opportunities to enable many websites to add functionality without burdening themselves with the resources required for that functionality. Our first such capability is Bible searching and passage lookup. It takes several megabytes of disk space to store the text of any one translation of the Bible. Since most web hosting services charge based on the amount of disk space you use, this alone can prevent you from adding Bible tools to your website. We also know from experience that although Open Source tools are available for your website, these can be a challenge to implement and to customize to your website’s look and feel.
Therefore, we have implemented a web service for any website to be able to search any of three Bible translations that are in the public domain (KJV, AKJV, ASV) and to lookup passages from those translations. While most web services use a standard called XML (eXtensible Markup Language) over SOAP (Service Oriented Architecture Protocol) to communicate between servers, we have chosen to use a more lightweight markup language and a technique called REST (REpresentational State Transfer). What this means is that your web server merely sends a message to our web server that looks just like an HTTP GET request and our server sends your server back a message that can easily be parsed to pull out the information you need to present the results.
This is a whole lot easier to demonstrate than explain. Try it out here.
Leave a Reply