Request Transcript

This service permits an institution/organization to make a PESC Transcript Request for a particular student. The service will provide a PESC Transcript Response for every request.

This service implements support for v1.4.0 of the PESC Transcript Request and Response messages. Refer to this page (http://www.pesc.org/pesc-approved-standards.html) on the PESC website for full details on the PESC standard for this request.

An Alberta Education Transcript Request and Response PESC XML Specification document has been created that provides a detailed specification on the transcript request and response PESC messages that PASI will support. This document lays out the full details on what is expected in the request and how this service will build the response.

Internally the spec is available on the SharePoint.
Externally the spec is available on the PASI DevNet.

The APAS (ApplyAlberta) page provides the current implementation of how PASI handles incoming transcript requests from PSI through the APAS Proxy. It is being referenced here as a FYI.

See Electronic Transcript Integration (PESC Services) for an overview of how this service should be used. The following diagram shows a high level overview of how the service works:

request_transcript_overview_diagram.vsdx

Security

The service can be accessed by systems with the PESC Transcript User role.

Note: This service only appears on the IPESCService201604 endpoint.

Request Information

The following information must be provided when using this service:

This will be a single Transcript Request PESC xml message based on the v1.4.0 specification. Refer to this page (http://www.pesc.org/interior.php?page_id=174) on the PESC website for full details on the PESC standard for this request.

Request Validations (PASI Core Service Level)

The following rules are used to validate the information provided in the request:

Note: Failures from these validations will be returned as rejections in the PASI Core service response.

Note: Any validation errors returned from the Construct Document Order (System Service) service could be returned as well.

Request Validations (PESC Response Level)

Service Functionality

At a high level the service does the following:

1.

Perform a scheme check on the PESC Transcript Request. If it fails then:

  • Throw SOAP fault
  • Stop any further processing.
2.Extract all the values from the PESC Transcript Request.
3.

Determine if the Request Tracking Identifier is a duplicate for the source. If it is then:

  • Throw SOAP fault
  • Stop any further processing.
4.

Run all the other Transcript Request validation rules. If one or more fail then:

  • Create a Cancelled (Transcript Request Status) [TranscriptRequest] record.
  • Create [TranscriptRequestError] records with details on the failed validation rules.
  • Build and return a PESC Transcript Response to cancel the request and include the failed validation rules.
  • Stop any further processing.
5.Create a ReadyToValidate (Transcript Request Status) TranscriptRequest record
6.

Call the Construct Document Order (System Service) service

If it succeeds then

  • Note: The Construct Document Order stored procedure will update the TranscriptRequest record to Ordered (Transcript Request Status)
  • Build and return a PESC Transcript Response to the request

If it fails then

  • Update the TranscriptRequest to Cancelled (Transcript Request Status) and create TanscriptRequestError records with the rejections from the service
  • Build and return a PESC Transcript Response to cancel the request and include the failed validation rules
  • Stop any further processing

Determining Matching Control Schedule

If the HoldType has been supplied and is not “Now” then the SessionDesignator will be in the form (YYYY-MM) and will be used to determine the Control Schedule that the new Document Order will be created against.

Only control schedules that have a TranscriptReleaseDate (Schedule Category) will be considered. Those control schedules are linked to specific exam periods. The session designator will be converted into a specific school year and exam period to determine a matching control schedule.

The following logic will be used to determine the date to use when looking for a matching control schedule:

  • If the HoldType is “Now” or has not been provided then the transcript document order item will be considered as having a HoldType of “Now”. Essentially it will be processed as “ASAP”.
  • If the HoldType is “AfterSpecifiedTerm” then the <SessionDesignator> will be converted into a specific school year and exam period to determine a matching control schedule.
    If the month of the session designator is 09, 10, 11, or 12 then the school year will be +1 of the year in the session designator. If the month of the session designator is 01, 02, 03, 04, 05 06, 07 or 08 then the school year will be the year in the session designator.
    As an example a SessionDesignator of “2013-11” would map to a control schedule with a school year of 2014 and an exam period of November, “2014-06” would map to a control schedule with a school year of 2014 and an exam period of June.
  • If the HoldType is “AfterGradesPosted” then the <SessionDesignator> from the PESC message will be converted into a date as the 1st day of the month and year of the <SessionDesignator>. For example, a <SessionDesignator> of “2013-11” would convert to a date of “2013-11-01”.
    Once a date has been determined, the control schedule with a category of TranscriptReleaseDate (Schedule Category) and the closest Actual Date that is not prior to the date being matched will be the matching control schedule.

If there is no match found, essentially the date is so far in the future that there are no control schedules that match, then Rule 70007 - Unsupported SessionDesignator fails.

Note: If the SessionDesignator is in the past, then the transcript document order item will be considered as having no SessionDesignator and a HoldType of “Now”. Essentially it will be processed as “ASAP”.

Transcript Request Data Mapping

This section provides detail on where the various attributes that the service consumes from the transcript request pesc xml that is passed in to the service.

Note: only the “Requesting PSI” OR “Requesting Organization” will appear in a given request.

AttributePath in Transcript Request
Request Institution Identifier Requesting PSITranscriptRequest / TransmissionData / Source / APAS
Request Institution Identifier Requesting OrganizationTranscriptRequest / TransmissionData / Source / MutuallyDefined
Request Institution Name TranscriptRequest / TransmissionData / Source / OrganizationName
Request Document Type TranscriptRequest / TransmissionData / DocumentTypeCode
Request Tracking Identifier TranscriptRequest / TransmissionData / RequestTrackingID
Request ASN

TranscriptRequest / Request / RequestedStudent / Person / AgencyIdentifier / AgencyAssigned ID.
The ASN is in this path if and only if the other attributes of the AgencyIdentifier match the Transcript Request spec.
Essentially:

  • AgencyCode = “Province”
  • AgencyName = “Alberta Education”
  • CountryCode = “CA”
  • StateProvinceCode = “AB”
Birth Date (Transcript Request) TranscriptRequest / Request / RequestedStudent / Person / Birth / BirthDate
Gender (Transcript Request) TranscriptRequest / Request / RequestedStudent / Person / Gender / GenderCode
Release Authorized Indicator TranscriptRequest / Request / RequestedStudent / ReleaseAuthorizedIndicator
Hold Type TranscriptRequest / Request / Recipient / TranscriptHold / HoldType
If not supplied, then a value of “Now” will be assumed.
Session Designator TranscriptRequest / Request / Recipient / TranscriptHold / SessionDesignator
Transcript Electronic Format CodeTranscriptRequest / Request / Recipient / ElectronicDelivery / ElectronicFormat
Transcript PurposeTranscriptRequest / Request / Recipient /
ElectronicMethodTranscriptRequest / Request / Recipient / ElectronicDelivery / ElectronicMethod
RushProcessingRequestedTranscriptRequest / Request / Recipient / RushProcessingRequested

Input for Construct Document Order

This section provides detail on the inputs for the Construct Document Order service.

Document Order InputSource
Request MethodIntegrated (Order Received Method)
Order Requested ByThis will be the Requesting Organization Name Requesting Organization Name from the transcript request.
Order Placed Date/TimeCurrent date and time
Order StatusOrdered (Order Status)
Document Processing TimeframeUse RealTime (Document Processing Timeframe) if HoldType is “Now” and RushProcessingRequested is true.
Use ASAP (Document Processing Timeframe) if HoldType is “Now” and RushProcessingRequested is false
Use “ASAP” if SessionDesignator is today or in the past.
Use Scheduled (Document Processing Timeframe)“Scheduled” if HoldType is “AfterGradesPosted” and the SessionDesignator is in the future.
Document Order Education Account Organization CodeNull
Document Order Education Account IdentifierNull
Audit User Local User ID & Local User Name
Document Order Item InputSource
Document Order Item Alberta Student NumberASN from the transcript request.
Document Order Item TypeDocument Order Item Type“Transcript”
Control Schedule IdentifierNULL for if HoldType is “Now”.
The Control Schedule that was identified using the SessionDesignator from the Transcript Request if HoldType is “AfterGradesPosted”.
Document Order Item Delivery MethodElectronic (Document Delivery Method)
Document Order Item Document LanguageEN (Document Language)
Number of Copies1
Recipient Is Student0
Document Order Item Recipient NameSame as “Order Requested By” from the Document Order.
Recipient Address Details - CityThe City Name of the associated Transcript Recipient identified by the Document Order Item Recipient Institution Identifier
Recipient Address Details - ProvinceThe Region of the associated Transcript Recipient identified by the Document Order Item Recipient Institution Identifier
Recipient Address Details - CountryThe Country Name of the associated Transcript Recipient identified by the Document Order Item Recipient Institution Identifier
Provided Consent for School Release“Yes” if ReleaseAuthorizedIndicator from Transcript Request is true.
“No” if ReleaseAuthorizedIndicator from Transcript Request is not true.
Document Order Item Recipient Client IdentifierClient Id from the certificate/caller info on the request information.
Document Order Item Recipient Institution IdentifierRequesting PSI that was provided in the transcript request. Null otherwise
Transcript Request IdentifierRequestTrackingID as provided by the Transcript Request XML

Auditing

The usage of this service is audited using Service Auditing including the auditing of Caller Information.

Response Information

The following information is returned after a request has been processed:

This will be a single Transcript Response PESC xml message based on the v1.4.0 specification. Refer to this page (http://www.pesc.org/interior.php?page_id=174) on the PESC website for full details on the PESC standard for this xml message.

Data Mapping for the Response

This section provides detail on where the various attributes and sources for the generated transcript response.

Path in Transcript ResponseSource
TransmissionData / DocumentIDNewly Generated GUID
TransmissionData / CreatedDateTime Current Date & Time
TransmissionData / DocumentTypeCode The DocumentTypeCode in the transcript response will always be “Response”.
TransmissionData / TransmissionType“Original”
TransmissionData / Source / Organization / APASThis will be the APAS identifier for Alberta Education in the current environment.
TransmissionData / Source / Organization / MutuallyDefined“PASI”
TransmissionData / Source / Organization / LocalOrganizationID

If the requestion institution is a PSI, then the following segment is included in the response:

<LocalOrganizationID>
  <LocalOrganizationIDCode>AB00000000</LocalOrganizationIDCode>
  <LocalOrganizationIDQualifier>AB</LocalOrganizationIDQualifier>
</LocalOrganizationID>
TransmissionData / Source / Organization / OrganizationName“Alberta Education”
TransmissionData / Source / Organization / Contacts / Email / EmailAddress“StudentRecords@gov.ab.ca”
TransmissionData / Destination / Organization / APASRequesting PSI from the transcript request. Only appears if there is a value in the request.
TransmissionData / Destination / Organization / MutuallyDefinedRequesting Organization from the transcript request. Only appears if there is a value in the request.
TransmissionData / Destination / Organization / LocalOrganizationID

If the requestion institution is a PSI, then the following segment is included in the response:

<LocalOrganizationID>
  <LocalOrganizationIDCode>*1*</LocalOrganizationIDCode>
  <LocalOrganizationIDQualifier>AB</LocalOrganizationIDQualifier>
</LocalOrganizationID>

Where

  • *1* Requesting ApplyAlberta Institution from the ApplyAlberta Transcript Request or Document Order Item.
TransmissionData / DocumentProcessCode“PRODUCTION” if in the production env.
“TEST” otherwise.
TransmissionData / RequestTrackingIDRequestTrackingID from the transcript request.
Response / CreatedDateTime Current Date & Time
Response / RequestTrackingID RequestTrackingID from the transcript request.
Response / ResponseStatus “Canceled” if a validation rule has failed.
“Deceased” if the Student’s ‘Is Deceased’ flag = 1 (Yes)
“Hold” if a document order has successfully been created to generate the transcript based on a control schedule.
“TranscriptRequestReceived” if a document order has successfully been created to generate now.
Response / ResponseHold Will only appear in the response if the ResponseStatus is “Hold”.
Response / ResponseHold / HoldReason“Other”
Response / ResponseHold / PlannedReleaseDateThe Actual Date from the control schedule that the document order was created against.
Response / RequestedStudent / Return the <Request>.<RequestedStudent> segment from the original transcript request stored in the [TranscriptRequest] table and use that as the <Response>.<RequestedStudent>.
Response / UserDefinedExtensions / Extensions / PrimaryAlbertaStudentNumberWill be the Primary ASN of the student if validation rule 60002 failed. Do not include if the rule did not fail.
NOTE TO QA: This tag is being pulled from the transcript response for now. It will be added as a new feature to be considered when the integration effort happens with the PSIs.
Response / UserDefinedExtensions / Extensions / CanceledReasonWill only appear in the response if the ResponseStatus is “Canceled”.
There will be one of these for each validation rule that has failed.
Note: Feature 2346 references this section for creating a cancelled transcript response. The source of the cancelled reasons for that feature will come from the DocumentGenerationError table.
Response / UserDefinedExtensions / Extensions / CanceledReason / CancelReasonNumberThe # of the validation rule that failed.
Response / UserDefinedExtensions / Extensions / CanceledReason / CancelReasonMessageThe message of the validation rule that failed.
    No links found.