CollegeSource Logo

Support Center
Formerly redLantern® Support Center


u.select Home

Popular Pages

Skip to end of metadata
Go to start of metadata

External Degree Audit Guide Interface

This page contains information about u.select and its support of the External Degree Audit Guide Interface.

What is EDAG?

u.select is degree audit-agnostic and works with any degree audit system that offers an interface which implements one of the supported PESC version 1.0 Degree Audit request and reply specifications. This interface is characterized by the exchange of XML documents over HTTP (or HTTPS) and is commonly referred to as an External Degree Audit Guide (aka EDAG).

See School EDAG settings in u.select for instructions on defining your school's EDAG settings in u.select.

Supported PESC Degree Audit request and reply schemas

At one time, the schemas were accessible from the PESC www.fsaxmlregistry.ed.gov site, but no longer.

u.select supports the following PESC Degree Audit request and reply schema versions.

PESC Degree Audit request schema versions

* RequestDA 1.5 - http://www.transfer.org/xsd/RequestDA/RequestDA-1.5.xsd
RequestDA_s1h - http://www.transfer.org/xsd/RequestDA_s1h.xsd
RequestDA_s1i - http://www.transfer.org/xsd/RequestDA_s1i.xsd
RequestDA_s1g - http://www.transfer.org/xsd/RequestDA_s1g.xsd
RequestDA_s1ga - http://www.transfer.org/xsd/RequestDA_s1ga.xsd
RequestDA_s1f - http://www.transfer.org/xsd/RequestDA_s1f.xsd

* indicates most current schema version

PESC Degree Audit reply schema versions

* ReplyDA 1.5 - http://www.transfer.org/xsd/ReplyDA/ReplyDA-1.5.xsd
ReplyDA_s1h - http://www.transfer.org/xsd/ReplyDA_s1h.xsd
ReplyDA_s1i - http://www.transfer.org/xsd/ReplyDA_s1i.xsd
ReplyDA_s1g - http://www.transfer.org/xsd/ReplyDA_s1g.xsd
ReplyDA_s1ga - http://www.transfer.org/xsd/ReplyDA_s1g.xsd.oracle
ReplyDA_s1f - http://www.transfer.org/xsd/ReplyDA_s1f.xsd

* indicates most current schema version

See XML Document Handling for tips.

u.select and EDAG document exchange

The next sections describe the three steps involved with the u.select and EDAG document exchange process. The process is triggered by a u.select user requesting a planning guide from a school which is defined in u.select as an EDAG interface. See School EDAG settings in u.select for instructions on defining a school's EDAG settings in u.select.

Step #1 - u.select builds XML document

u.select builds the Degree Audit request XML document based on the format defined by the receiving (i.e. target) school's Planning Guide Request Code setting in u.select. See the PESC Degree Audit request versions for the specific elements and attributes within the XML document. u.select provides a return url address in the <PartyId> element. Element data values wrapped with double quotes identify static content.

Step #2 - u.select posts XML request document to EDAG Url

u.select then attempts to open an HTTP (or HTTPS) connection to the defined EDAG Url. The EDAG Url must specify the correct protocol (HTTP or HTTPS) for u.select to use. If the connection is successful, u.select then posts the XML document.
After the post, u.select waits for an acknowledgment that the EDAG has either accepted or rejected the planning guide request.

EDAG Accept Acknowledgment

To accept the planning guide request, the EDAG must send the following accept acknowledgment XML document on the existing open connection:

<response status="0"/>

With u.select 4.2, u.select will automatically clear (i.e. stop sending) EDAG Error emails to your EDAG notification contact as long as your school's EDAG sends the accept acknowledgment on the existing open connection.

EDAG Reject Acknowledgment

To reject the planning guide request, the EDAG should send the following reject acknowledgment XML document on the existing open connection:

<response status="1">descriptive error message</<response>

Note: any non zero status indicates the planning guide request was rejected.

If u.select receives the non zero status, other XML, malformed XML or u.select doesn't receive the expected response within 60 seconds, u.select marks the request as failed and schedules it for a retry. u.select uses an increasing retry delay (i.e. doubled between each failed attempt 5 minutes, 10 minutes, 20 minutes...), with a maximum delay of 12 hours between retries. u.select will retry the post until it is successfully sent.

Step #3 - EDAG posts XML reply document to u.select

Once the EDAG completes the planning guide, the EDAG must post the planning guide content within a Degree Audit reply XML document back to u.select. The EDAG opens an HTTP (or HTTPS) connection to the return Url, provided earlier by u.select in the <PartyId> element of the request. The EDAG must use the protocol (HTTP or HTTPS) provided by u.select in the <PartyId> element. The EDAG should follow the XML over HTTP conventions. If the reply document contains well formed XML, u.select will send the following success acknowledgment XML document on the existing open connection:

<response status="0"></response>

Once u.select sends the success acknowledgment, the audit is immediately available for viewing by the u.select user that requested the planning guide.

If u.select encountered an error while saving the document, a failure acknowledgment (non zero status) will be sent on the existing open connection with an error message in the response element. An example failure acknowledgment is shown below;

<response status="1">Non existent or empty, userid or PersonIdCode element for jobId=2007091014514555</response>

Example DegreeAuditRequest Document

The follow shows an example request document, that contains one course taken by the student.

<RequestDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.transfer.org/xsd/RequestDA_s1h.xsd">
    <Envelope>
        <RequestType>CAS</RequestType>
        <TransactionType>Request Degree Audit</TransactionType>
        <DocumentNumber>2009052712405402</DocumentNumber>
        <PartyId>https://www.transfer.org/uselect/service/xml</PartyId>
    </Envelope>
    <RequestDetail>
        <Control>
            <ControlBatchId>2009052712405402</ControlBatchId>
            <ControlRequestServerName>miamix</ControlRequestServerName>
            <ControlRecord>ASC</ControlRecord>
            <ControlRequestType>A</ControlRequestType>
        </Control>
        <RequestData>
            <Person>
                <PersonID>
                    <PersonIdCodeQualifier>CAS</PersonIdCodeQualifier>
                    <PersonIdCode>student123@MIAMI</PersonIdCode>
                </PersonID>
                <PersonName>
                    <NameType>CAS</NameType>
                    <NameFirst>CAS</NameFirst>
                    <NameLast>Student</NameLast>
                </PersonName>
                <StudentType>
                    <StudentTypeStatus>CAS Student</StudentTypeStatus>
                </StudentType>
            </Person>
            <PersonControl>
                <BatchId>2009052712405402</BatchId>
                <ControlRecord>ASC</ControlRecord>
            </PersonControl>
            <DegreeProgram>
                <Institution>
                    <Entity>
                        <EntityIDCodeQualifier>72</EntityIDCodeQualifier>
                        <EntityIDCode>1592</EntityIDCode>
                        <EntityIDCodeGroup/>
                    </Entity>
                </Institution>
                <AcademicProgram>
                    <ProgramType>Program</ProgramType>
                    <ProgramCode>825   44GEC</ProgramCode>
                    <ProgramCatalogYear>99983</ProgramCatalogYear>
                </AcademicProgram>
            </DegreeProgram>
            <CourseInstitution>
                <Institution>
                    <Entity>
                        <EntityIDCodeQualifier>72</EntityIDCodeQualifier>
                        <EntityIDCode>1643</EntityIDCode>
                        <EntityIDCodeGroup/>
                    </Entity>
                </Institution>
                <Course>
                    <CourseSubjectAbbreviation>ENG</CourseSubjectAbbreviation>
                    <CourseNumber>130</CourseNumber>
                    <CourseTitle>Intro to Technical Comm</CourseTitle>
                    <CourseSession>20083</CourseSession>
                    <CourseCreditValue>03.00</CourseCreditValue>
                    <CourseAcademicGrade>F</CourseAcademicGrade>
                    <CoursePseudoCode>N</CoursePseudoCode>
                </Course>
            </CourseInstitution>
        </RequestData>
    </RequestDetail>
</RequestDocument>

PartyId

This is the URL the EDAG must connect to, when sending the DegreeAuditReply XML document to u.select.

DegreeProgram

This element's children specify the audit's target school and program chosen by student.
Institution - School Id
AcademicProgram - Program

CourseInstitution

The children of this optional element specify the student's coursework.
Institution - School Id
Course - Course

DegreeAuditReply Document

The various ReplyDA_s1 PESC schemas define numerous elements in the document, however u.select only extracts element content from the following elements:
DegreeAuditResult.DegreeProgram.AcademicProgram.DegreeAuditReport.Report.DegreeAuditBody
Envelope.DocumentNumber
DegreeAuditResult.Person.PersonID.PersonIdCode

x.y.z syntax
The above elements are shown with x.y.z syntax. This is short hand to remove the need for "the z child element of y that is the child element of x".

DegreeAuditBody

This element is the planning guide content that will be displayed to the student. It is normal for this content to contain Html, however the following html elements must be avoided <html> and <body>. Additionally, the <head> and it's child elements must be avoided with exception of the <style> element. To ensure the plans are correctly stored in u.select and shown correctly by u.select keep these in mind:

  • Use either an XML CDATA section or the standard escaping for XML predefined entities. See Html in XML for further information.
  • CSS styling must be inline via either style attributes for each html element or an inline style sheet element.

DocumentNumber

This element is one of the two fields that uniquely identify the student's planning guide request. u.select will use the element content to locate the request in u.select.

PersonIdCode

This element is the other field that uniquely identify the student's planning guide request. u.select will use the element content to locate the request in u.select.

Example DegreeAuditReply Document

The follow shows an example reply document.

<DegreeAuditReply>
   <Envelope>
      <DocumentNumber>2009052712405402</DocumentNumber>
   </Envelope>
   <DegreeAuditResult>
      <Person>
         <PersonID>
            <PersonIdCode>student123@MIAMI</PersonIdCode>
         </PersonID>
      </Person>
      <DegreeProgram>
         <AcademicProgram>
            <ProgramCode>ACCTBA</ProgramCode>
            <DegreeAuditReport>
               <Report>
                  <DegreeAuditBody><![CDATA[<div>Html of resulting plan...</div>]]>
                  </DegreeAuditBody>
               </Report>
            </DegreeAuditReport>
         </AcademicProgram>
      </DegreeProgram>
   </DegreeAuditResult>
</DegreeAuditReply>
Enter labels to add to this page:
Please wait 
Tip: Looking for a label? Just start typing.