Workday errors in plain English.

Submit an Error
errors / extend / extend-app-studio-xslt-content-not-allowed-in-prolog-job-description-html

Extend App Job Requisition Retrieval Fails with "Content Is Not Allowed in Prolog" XSLT Error

✓ Verified Workday Extend 3 lookups
The error STUDIO ERROR: Content is not allowed in prolog.

What it means

A manager submits a Job Requisition for an Existing Position through an Extend app, which writes the request into a custom object that a Studio integration later reads to generate the real Job Requisition XML. That XSLT transformation intermittently fails with a generic XML parsing error, even though the exact same XSLT works fine for New Position requests built the same way.

Troubleshooting

  1. Confirm the failure is specific to Existing Position job requisitions and does not affect New Position ones, even though both use the same XSLT and SOAP structure. This narrows the cause to something in the Existing Position data path specifically.
  2. Check the Job Description field on the failing custom object record for embedded HTML tags (common when text is pasted in from a rich-text source). Raw HTML mixed into an XML payload without proper escaping can break XSLT's ability to produce valid XML.
  3. Re-run the same XSLT transformation against a copy of the input data in a standalone tool like Oxygen XML. If it succeeds there but fails inside Studio, the problem is in how Studio is sourcing or passing the raw field data, not in the transformation logic itself.
  4. Check the custom object's own Status or Error field. A leftover error message from a prior failed run can itself become invalid content that breaks the prolog the next time the integration runs.
⚡ Quick fix

In the Extend app's custom object record, clear the Error or Status field value and save it without changing any other data, then re-run the Studio integration.

✓ Permanent fix

Sanitize or strip HTML tags out of the Job Description field before it is written into the custom object the Studio integration reads, and automatically clear any error or status field at the start of each new submission so a prior failure's leftover value cannot corrupt the next run's generated XML.

Was this helpful?

Related errors