What is Swoogle?

Swoogle is often called a Semantic Web search engine.

To understand what swoogle is, we need to know how Swoogle sees the world of the Semantic Web.

For Swoogle, the Semantic Web is a web of Semantic Web documents (SWDs).

An SWD is defined by Swoogle as an online document written in either RDF or OWL, which then has either .rdf or .owl as its extension. Swoogle also considers other files as SWDs if they have some other acceptable extensions, such as rss, n3, or daml, to name just a few.

The key point is that the Semantic Web, as…


In this article, I am going to discuss what is a web API and how it works.

What is a web API?

API stands for Application Programming Interface which is an interface that provides a set of functions for the users where the underlying mechanism is hidden from the users.

Web API is an API that travels through the internet. A web API can be accessed using HTTP (HyperText Transfer Protocol) over the web.

When we consider client server architecture, client is the caller of the API and the server is the respondent of the API.

Client creates the request and send it to the…


In this article, I am going to show how we can set up a sample environment for a web application in Azure cloud platform.

I am writing this article as a requirement of course SENG 41283: Distributed and cloud computing which has the content as here.

Introduction to Azure

Microsoft Azure is a cloud computing service for building, testing, deploying, and managing applications and services through Microsoft-managed data centers.

Azure provides Software as a service (Saas), Platform as a service (Paas), and Infrastructure as a service (Iaas) and supports many different programming languages, tools, and frameworks.

There are over 600 azure services available…


Message Digest functions also known as Hash functions or Hashing algorithms generally take an arbitrary amount of data, apply a mathematical formula and produce a fixed length product called the hash value or message digest.

Hashing is mostly used as a secure way of storing data.

Message digests are also called as one-way hash functions because they produce values that are difficult to invert, resistant or attack, effectively unique, and widely distributed.

There are couple of key principles in hashing.

01. Hashes are one way

You can use the hash and the data to create the hash value, but you…


Public key algorithms are also known as Asymmetric Key Algorithms.

Each party that combines with asymmetric key algorithms has pair of keys as public key and private key.

Public key: may be known by anyone who asks for it and enables people to encrypt message and verify signatures.

Private key: remains private and cannot be given out. Private key decrypts the message and generates the signature.

Asymmetric key algorithms are not quite as fast as symmetric key algorithms. This is partially due to the fact that asymmetric key algorithms are generally more complex, using a more sophisticated set of functions.


Secret key algorithms also known as symmetric key algorithms use one key that is kept secret by the systems engaged in the encryption and decryption processes.

This single shared key is used for encryption of plain text and decryption of cipher text between sender and receiver.

Some symmetric key algorithms are considered as virtually unbreakable and also these algorithms are very fast.Therefore, secret key algorithms are often used when there is a lot of data needs to be encrypted.

Symmetric key encryption can be either stream ciphers or block ciphers.

Stream ciphers encrypt the message bit by bit.

For examples…


Message queues are an important category of indirect communication systems.

In indirect communication, both time and space are uncoupled. That means, sender and receiver don’t need to exist at the same time to communicate and sender doesn’t know receivers identity vice versa.

Since message queues belong to indirect communication, message queues provide a point-to-point service achieving the particular properties. They are point-to-point in that the sender places the message into a queue, and it is then removed by a single process.

Message queues avoid doing a resource-intensive task immediately and wait for it to complete. …


Remote Method invocation (RMI) is an API which allows an object to invoke a method on an object that exists in another address space, which could be on the same machine or on a remote machine.

RMI defines an infrastructure allowing the invocation of methods on objects that are located on different java virtual machines (JVMs) residing either on the local node or on a remote one.

RMI creates a public remote server object that enables client and server side communications through simple method calls on the server object.

RMI provides remote communication between the applications using two objects, stub…


In this article, I am going to show how Remote Procedure Call works.

Remote Procedure Call (RPC) provides a different paradigm for accessing network services of interprocess communication in distributed computing.

In particular, in RPC, instead of accessing remote services by sending and receiving messages, a client invokes services by making a local procedure call.

The underlying RPC system then hides important aspects of distribution, including the encoding and decoding of parameters and results, the passing of messages and the preserving of the required semantics for the procedure call.

The main goal of RPC is to hide the existence of…


External Data Representation

An agreed standard for the representation of data structures and primitive values is called an external data representation.

The information stored in running programs is represented as data structures whereas the information in messages consists of sequence of bytes. Irrespective of the form of communication used, the data structured must be flattened (converted to a sequence of bytes) before transmission and rebuilt on arrival. The individual primitive data items transmitted in messages can be data values of many different types, and not all computers store primitive values such as integers in the same order. …

Mahesha Muthumala

Software Engineering Undergraduate | University of Kelaniya, Sri Lanka.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store