Faculty Profile Web Service Instructions

Instructions

Individual Faculty Data by uNID

https://faculty.utah.edu/{unid}/ws.hml.

Faculty Directory List by Department

faculty.utah.edu/facultylist/ws_list.hml

We use Basic HTTP Authentication (http://en.wikipedia.org/wiki/Basic_access_authentication) to determine your level of access, i.e. a user authorized for the College of Engineering can only retrieve data through this web service for faculty who have an appointment in the College of Engineering and sub-departments. Please see the Code Samples section below the Data Dictionary for implementations in various languages to show how to access this web service.

Formatting Note: Many data elements follow the “<items><item></item></items>” pattern (e.g. “<patents><patent></patent></patents>”.

Date Note: Dates may be approximations and are printed with as much precision as we know. Because of this, one “date” type field may have “03/21/2009”, when another may just have “2008”. The date formats to expect are “MM/dd/yyyy”, “MM/yyyy”, and “yyyy”.

Rich Text Note: Fields with the “Rich Text” type may contain markup (notably markup from MS word) caused by copy/pasting into a rich text editor, and are typically BLOBs or CLOBs in the database with no maximum length. The data will be contained in one (or more than one, depending on size) CDATA tags.

Code Samples

Java

String auth = “myuser:mytoken”;

String authToken = new sun.misc.BASE64Encoder().encode(auth.getBytes());

String unid = “u0123456”;

java.net.URL url = new java.net.URL(“https://faculty.utah.edu/” + unid + “/ws.hml”);

java.net.HttpURLConnection conn = (java.net.HttpURLConnection)url.openConnection();

conn.setRequestProperty(“Authorization”, “Basic ” + authToken); //Don’t forget the space after Basic

if(java.net.HttpURLConnection.HTTP_UNAUTHORIZED == conn.getResponseCode()) {

//Error, check conn.getResponseMessage()

} else {

//Success, can read from connection via conn.getInputStream()

}

 

PHP

<?php

 

$unid = ‘u0123456’;

$username = ‘myuser’;

$password = ‘mypassword’;

 

$url = ‘https://faculty.utah.edu/’ . $unid . ‘/ws.hml’;

 

$options = array(

‘http’ => array(

‘method’ => “GET”,

‘header’ => “Authorization: Basic ” . base64_encode( $username . ‘:’ . $password ) . “\r\n”

)

);

 

$context = stream_context_create($options);

$file = file_get_contents($url, false, $context);

 

?>