private boolean loadInformation() {

		Document doc = null;
		try {
			doc = Jsoup.connect(url).get();
		} catch (IOException e) {
			e.printStackTrace();
			return false;
		}

		// If a title has not been set, retrieving the title of the item.
		if (this.title == null) {
			Elements title = doc
				.select("td.bibInfoLabel:matches(Title):not(:contains(Alternate)):not("
						+ ":contains(Uniform)) + td.bibInfoData");

			// Split the string in order to just get the name of the movie and not
			// the rest of the information attached with the title.
			String splitTitleString[] = title.text().split("\\[");
			splitTitleString = splitTitleString[0].split("/");
			this.title = splitTitleString[0];
		}
		// Retrieving summary.
		Elements summary = doc
				.select("td.bibInfoLabel:matches(Summary) + td.bibInfoData");
		this.summary = summary.text();

		// Retrieving language.
		Elements language = doc.select("td.bibInfoLabel:matches(Language) + td.bibInfoData");
		this.language = language.text();
		
		// Retrieving performer.
		Elements performer = doc.select("td.bibInfoLabel:matches(Performer) + td.bibInfoData");
		this.performer = performer.text();
		
		// Retrieving rating.
		Elements rating = doc.select("td.bibInfoLabel:matches(Audience) + td.bibInfoData");
		this.rating = rating.text();
		
		// Retrieves the table on the webpage that displays the type of media, call number and 
		// availability.
		Elements table = doc.select("tr.bibItemsEntry");
				
		// If a table is not empty then retrieve the information.
		if (!table.isEmpty()){
			// Retrieves each row of table and saves the information.
			this.typeOfMedia = new ArrayList<String>();
			this.callNumberString = new ArrayList<String>();
			this.status = new ArrayList<String>();
			
			for (int i = 0; i < table.size(); i++) {
				// Retrieves the HTML for the row specified.
				Element row = table.get(i);
				
				// Retrieving Status.
				String stat = row.child(2).text()
						.replace(String.valueOf((char) 160), " ").trim();
				
				// If the status is "LIBRARY HAS" then we don't want to display it. It's extra 
				// information that's not necessary.
				if (stat.equals("LIBRARY HAS"))
					continue;
				
				this.status.add(stat);
				
				// Retrieving Type (Jones Media DVD/ Jones Media VHS/ other type of media).
				this.typeOfMedia.add(row.child(0).text()
						.replace(String.valueOf((char) 160), " ").trim());
				
				// Retrieving Accession Number.
				this.callNumberString.add(row.child(1).ownText()
						.replace(String.valueOf((char) 160), " ").trim());
			}
		} else {
			return false;
		}
		
		// If item is part of the Jones Media Collection, then its accession number is retrieved. 
		// If it is not part of the collection the accession number is set to -1. Have to check 
		// each row because the item might have multiple things associated with it and the first 
		// one listed may not be a Jones Media DVD or VHS.
		this.jonesAccesionNum = -1;
		for (int i = 0; i < typeOfMedia.size(); i++){	
			if (typeOfMedia.get(i).equals("Jones Media DVD")
				|| typeOfMedia.get(i).equals("Jones Media Video tape")) {
			String[] splitCallNumString = callNumberString.get(i).split(" ");
			this.jonesAccesionNum = Integer.parseInt(splitCallNumString[0]);
			}
		}
		
		return true;
	}