Paikallinen asiakirja voi silti aiheuttaa 407:n muunnoksen aikana. Sen XML voi nimetä DTD:n, skeeman tai entiteetin, ja renderöijä voi hakea tyylejä tai kuvia. Epäonnistuva asiakasohjelma voi olla kyseisen jäsentimen sisällä sen jälkeen, kun alkuperäinen lataus on päättynyt.

Säilytä poikkeuspino ja pyydetty URI ja vertaa niitä syötedeklaatioihin tai resurssiviittauksiin. DTD-pyyntö vakioisäntään on eri toimenpide kuin sivupyyntö. HTML:n muuntaminen PDF:ksi voi myös epäonnistua, kun etäresursseja haetaan.

Käytä .NET XmlReader -syötteelle, jonka sopimus kieltää DTD:t ja ulkoisen ratkaisun:

var settings = new XmlReaderSettings
{
    DtdProcessing = DtdProcessing.Prohibit,
    XmlResolver = null
};

Välitä nämä asetukset komponentille, joka todella jäsentää asiakirjan. DtdProcessing valitsee, miten DTD:tä käsitellään; XmlResolver hallitsee ulkoista käyttöä. Prohibit hylkää asiakirjan, jossa on DTD—se ei poista deklaraatiota. Jos työnkulku vaatii sellaisen, valitse hyväksytty paikallinen ratkaisu tai eksplisiittisesti ohjattu resolver.

Pidä oletusarvot API:n/ajoympäristön sidoksissa. XmlReaderSettings käyttää oletuksena Prohibit-asetusta, ja sen oletusresolver muutettiin nulliksi .NET Framework 4.5.2:sta alkaen. Kolmannen osapuolen muunnin voi ohittaa ne tai käyttää toista jäsennintä.

XHTML-deklaraation muuttaminen HTML-doctypeksi voi vaikuttaa yhteen muuntimeen, mutta se ei määritä sen välityspalvelinta. Määritä tarvittavat resurssit ja niiden latauskäytäntö; alkusivun asiakasohjelman todennus ei todenna tätä toista asiakasohjelmaa.

Aiheeseen liittyvät artikkelit