를 통해 닷넷의 공공 외부 DTD를 처리 지정된 URL을 통해 DTD를 사용할 수 없지만이를 디스크에 다운로드 할 수 있습니다. DTD를로드하기 위해 사용자 지정 XmlResolver를 구현하려고했지만 작동하지 않습니다. GetEntity를 구현하고 디버거를 통해 나는 다음과 같은 호출에오고 볼 수 XmlResolver에 내 사용자 정의 :내 XML이 같은 DTD를 참조하는 XmlResolver를
- 요청 된 URI를로드 할 XML 문서입니다. 이 문서의 스트림을 열고 반환합니다. 그건 잘 작동합니다.
- DTD는 "file : ///absolut/path/to.xml/-//OWNER//NAME//EN"형식의 URI로 요청됩니다. 정규식을 사용하여 - //. *? //를 확인하고 있지만 제대로 작동하지는 않습니다. 그러나 DTD가 자체 포함되면 작동합니다.
- DTD가 modules.ent를 참조하고 있습니다. 결과적으로 URI는 "file : ///absolut/path/to.xml/-//OWNER//NAME//modules.ent"인 GetEntity를 호출합니다. 분명히 이제는 경로의 의도를 재구성하는 것이 아주 이상합니다.
올바른 방법으로 구현하는 방법에 대한 힌트가 있습니까? 공공 부문의 DTD는 출판 분야에서 매우 일반적이므로 깨끗한 솔루션이 있어야한다고 생각합니다.
환호 아힘