Student Systems Support Centre
Accessing the OSS Student Data Feed: Notes for IT Officers
The OSS Student Data Feed can be accessed via the Data Warehouse or the Web Service, as described below.
- Accessing the OSS Student Data Feed via the Data Warehouse
- Accessing the OSS Student Data Feed via the Web Service
- User names and password
- Technical documentation
- Setting up access to the OSS Student Data Feed via the Web Service
- Support
Accessing the OSS Student Data Feed via the Data Warehouse
To request a username and password to allow access to the Data Feed tables in the Data Warehouse, please email: sdma@admin.ox.ac.uk.
The Data Warehouse is accessed through ODBC-link using the instructions below. The server is bids.uas.ox.ac.uk and the database is an SQL Server Database called STUPROD.
Set up an ODBC connection (Start - Settings - Control Panel - Administrative tools - Data Sources) under the System DSN tab. Click Add and select SQL Server (or SQL Server Native Client 10.0). Add whatever Name and Description you want but the server setting should be bids.uas.ox.ac.uk. On the next screen select 'With SQL Server authentication...' and enter your user name and password. On the next screen make sure that the database field is pointing to STUPROD. Click Finish and Test Data Source.
Accessing the OSS Student Data Feed via the Web Service
An OSS Student Data Feed account is provided on email requested by the college, division or departmental Information Custodian to the OSS Support Centre. Please provide the name of the IT Support Officer and the organisation unit(s) that IT Officer supports. A new account will be created specifically for your college or department in order for your IT Officer to access the Feed. Please note: this responsibility will not be added to the IT Support Officer's individual OSS access account. Please refer to the instructions below.
User names and password
As the IT Support Officer, you will be provided with a username for your college or department, and an initial password, which you will need to change by logging into OSS directly using this link (ie not via Single Sign-on). Please note: The only reason you need to log-in to OSS is to change your password. The XXIGS Student Data Feed responsibility that you can see will not provide access to the Student Data Feed itself. The OSS Student Data Feed account password will expire after 180 days. The XML message returned each time the web service is queried will warn you how many days remain until a password change is required (this is contained in the 'message' element, as an attribute called 'passwordDaysLeft'). Once in OSS, go to: Edit > Preferences > Change Password. If the password has already expired, you will be prompted to update it when you log in.
Technical documentation
Web service technical and user documentation is available from the Student Systems Weblearn space at: https://weblearn.ox.ac.uk/portal/hierarchy/central/aad/systems/datafeed. These items provide all the information needed to access the OSS Student Data Feed. The web service receives instructions, and returns data, in XML format.
A section has been created on the ITSS Wiki for users of the OSS Student Data Feed to share information about successful methods of accessing the data. The page can be found here: https://wiki.oucs.ox.ac.uk/itss/DataFeedsDiscussion (webauth authentication and ITSS membership required).
Setting up access to the OSS Student Data Feed via the Web Service
The OSS Student Data Feed uses 'web services' technology. Web services are designed to operate machine-to-machine using open standards. Our service uses a protocol called SOAP to exchange data in XML format. The reason we are using this technology is that it allows for the choice of client software (used to extract and interpret the XML) to be made independently by each end user.
With a web service, the service provider (OSS, in this case) provides the user with a web services description file (known as a WSDL) which a SOAP client can read. The WSDL contains information about the kind of message you need to send to the service, and an 'endpoint' URL to send it to. The only reason you need to log in to OSS is to change your password - besides that, there won't be anything in OSS for you to see.
It may also be helpful for you to know that our staff have been using a free tool called soapUI to access the service, and Oxygen XML editor to view the data. If you use soapUI, there are additional instructions below - do bear in mind that you can use any available method you wish to access a web service, and that as a result we do not support specific software packages (though will of course assist you where possible). The service has been stress tested using a simple bash/unix script and curl - this is probably the simplest client from which to build from and is listed below after the soapUI guide.
Getting started with soapUI
Open soapUI. Go to File > New WSDL project. Name your project and then enter the following URL for the WSDL: https://bspibm07x.bsp.ox.ac.uk:3443/StudentDataFeed/studentDataFeedSoapHttpPort?WSDL. Leave the tickboxes in their default state, and click 'OK'. The software will download the information contained in the WSDL. Once this is done, look on the left of the screen, and open up the + until you see 'Request 1'. Double click to open it:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:uk="http://uk.ac.ox.ws/">
<soapenv:Header/>
<soapenv:Body>
<uk:studentDataFeed>
<versionId></versionId>
<username>?</username>
<password>?</password>
<personNumber>?</personNumber>
<stdntSurname>?</stdntSurname>
<stdntDob>?</stdntDob>
<programmeCode>?</programmeCode>
<programmeType>?</programmeType>
<deptCode>?</deptCode>
<collegeCode></collegeCode>
<studentOrApplicant></studentOrApplicant>
</uk:studentDataFeed>
</soapenv:Body>
</soapenv:Envelope>
You need to delete all the ? marks and replace them as required:
Valid values for versionId:
- The string "current" - Date Feed responds with XML conforming to the current schema definition
- The string "previous" - Data Feed responds with XML conforming to the previous schema definition
- Empty string - equivalent to "current"
- A decimal number (for example 1.08) - Data Feed responds with XML conforming to given versioned schema definition
Username will be XXIGS_DF_etc, and the password will be as you reset it through OSS. (If you make three attempts with the wrong password you'll be frozen out for about 15 mins). The remaining parameters can then be used as required. You must request at least a person number, program, dept, or college. Surname permits wildcards (%) in conjunction with other parameters. To run the request, you'll then need to click on the green arrow at the top of the window. A list of parameter codes is available on our weblearn space: https://weblearn.ox.ac.uk/portal/hierarchy/central/aad/systems/datafeed. There is also a list of error messages which can be returned by the service, and an XML schema, which models the structure of the data which will be returned.
A simple client using curl
Copy the sample XML SOAP request above to file, fill in the parameters as required, save to file myreq.dat. Run the following curl command to send the request and capture the response to myreq.res:
- curl -k --sslv3 -d @myreq.dat -H "Content-Type: text/xml;charset=UTF-8" "https://bspibm07x.bsp.ox.ac.uk:3443/StudentDataFeed/studentDataFeedSoapHttpPort" >myreq.res
- Do not ignore SSL errors - remove the '-k' switch (you may need to update the server's list of CA certificates).
- Parse the resulting SOAP response (remove the wrapping element and unescape its content. E.g. using awk:
gawk '/[<]/ {next} {gsub("[&]lt;","<");gsub("[&]gt;",">");gsub("[&]amp;"," \&");print $0;}' < myreq.res
Support
Contact OSS Support for help with web service account creation, password maintenance, and any technical problems with the web service's or Data Warehouse's functionality and provide the following details:
- Your OSS Student Data Feed account name
- The parameters which you used in your query, if applicable
- The XML error message returned by the service, or a description of the problem you are encountering if you are not receiving messages from the server.