본문으로 바로가기

인텔리제이(IntelliJ IDEA)에서 아래와 같이 유효한 문서타입정의(DTD)를 맵핑하지 못하여 에디터에서 오류가 뜨는 경우가 있습니다. 

 

DTD(Document Type Definition)  XML 문서의 유효성을 체크하기 위하여 사용할 수 있는 적합한 요소와 속성을 정의되어 있는 문서입니다. 그리고 XSD(XML Schema Definition)를 통해서도 동일하게 XML 문서가 유효한 관계를 갖는지 정의할 수 있습니다.

 

이를 위해 URI를 통해 정의된 정보를 맵핑해서 가져오거나 로컬 파일을 통해 직접 스키마를 등록할 수 있는데 인텔리제이에서 이를 찾지 못해 발생하는 오류 인데 인텔리제이에서는 Preferences > Languages and Frameworks > Schemas and DTDs 에서 관련 설정을 등록하거나 무시할 수 있습니다.

| External Schemas and DTDs

 XML 파일의 유효성을 검사하기 위해 사용되는 XML스키마(XSD) 및 DTD 파일의 목록입니다. 각 항목은 XML파일에서 참조 할 수있는 URI를 통해 적절한 로컬 스키마 또는 DTD 파일로 매핑 되어 있습니다.

 

| Ignored Schemas and DTDs

무시된 스키마 및 DTD에 대한 URI의 목록입니다. 해당 항목에 나열된 uri를 사용하는 경우 IntelliJ IDEA의 에디터에서 위와 같이 오류로 표시하지 않습니다. 서비스에는 지장이 없으나 적절한 URI를 fetch할 수 없는 경우 사용해 주시면 됩니다.

 

 설정메뉴 뿐만 아니라 아래와 같이 간단하게 에디터에서 intention actions(⌥ + Enter)를 추천받아 빠르게 처리 할 수도 있습니다. 오류로 뜨는 스키마에서 단축키를 눌러보면 아래와 같은 제안을 받을 있는데 여기서 Fetch external resource 통해 내려받거나 Ignore external resource 통해 무시할 있습니다.

Add Xsi schema location for external resource
Fetch external resource
Ignore external resource
Manually setup external resource

| Reference

 

Schemas and DTDs - Help | IntelliJ IDEA

 

www.jetbrains.com