다음을 통해 공유


IEntityResolver2.ResolveEntity(String, String, String, String) 메서드

정의

애플리케이션에서 외부 엔터티에 대한 참조를 입력 원본에 매핑하거나 파서에 기존 URI 해상도를 사용해야 한다고 알릴 수 있습니다.

[Android.Runtime.Register("resolveEntity", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xml/sax/InputSource;", "GetResolveEntity_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Org.Xml.Sax.Ext.IEntityResolver2Invoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Org.Xml.Sax.InputSource? ResolveEntity (string? name, string? publicId, string? baseURI, string? systemId);
[<Android.Runtime.Register("resolveEntity", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/xml/sax/InputSource;", "GetResolveEntity_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Ljava_lang_String_Handler:Org.Xml.Sax.Ext.IEntityResolver2Invoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member ResolveEntity : string * string * string * string -> Org.Xml.Sax.InputSource

매개 변수

name
String

확인 중인 외부 엔터티를 식별합니다. 외부 하위 집합의 경우 "[dtd]" 또는 매개 변수 엔터티를 나타내기 위해 "%"로 시작하는 이름 또는 일반 엔터티의 이름입니다. SAX2 파서에서 호출할 때는 null이 되지 않습니다.

publicId
String

참조되는 외부 엔터티의 공용 식별자(XML 사양에 따라 정규화됨) 또는 제공되지 않은 경우 null입니다.

baseURI
String

상대 systemID가 해석되는 URI입니다. Null이 아니면 항상 절대 URI입니다(XMLReader에 InputSource가 하나 없이 제공되었기 때문일 수 있음). 이 URI는 XML 사양에 의해 관련 선언을 시작하는 "<"와 연결된 URI로 정의됩니다.

systemId
String

참조되는 외부 엔터티의 시스템 식별자입니다. 상대 또는 절대 URI 중 하나. SAX2 파서에서 호출할 때는 null이 되지 않습니다. 선언된 엔터티 및 외부 하위 집합만 이러한 파서에 의해 확인됩니다.

반환

파서에서 사용할 새 입력 원본을 설명하는 InputSource 개체입니다. null을 반환하면 파서가 기본 URI에 대한 시스템 ID를 확인하고 결과 URI에 대한 연결을 열도록 지시합니다.

특성

예외

다른 예외를 래핑할 수 있는 모든 SAX 예외입니다.

새 InputStream 또는 Reader를 만들지 못했거나 잘못된 URL을 생성하지 못했음을 나타내는 것일 수 있습니다.

설명

애플리케이션에서 외부 엔터티에 대한 참조를 입력 원본에 매핑하거나 파서에 기존 URI 해상도를 사용해야 한다고 알릴 수 있습니다. 이 메서드는 올바르게 선언된 외부 엔터티에 대해서만 호출됩니다. 이 메서드는 인터페이스보다 EntityResolver 더 많은 유연성을 제공하며 OASIS XML 카탈로그 사양에 정의된 것과 같은 더 복잡한 카탈로그 구성표의 구현을 지원합니다 .</p>

이 확인자 메서드를 사용하도록 구성된 파서는 XML 텍스트의 참조로 인해 포함되는 외부 엔터티에 사용할 입력 소스를 결정하기 위해 호출합니다. 즉, 문서 엔터티 및 에서 반환된 #getExternalSubset getExternalSubset()외부 엔터티를 제외합니다. 기능 플래그를 사용하여 엔터티 클래스(매개 변수 또는 일반)를 포함하지 않도록 (유효성 검사되지 않는) 프로세서를 구성한 경우 이 메서드는 이러한 엔터티에 대해 호출되지 않습니다.

여기서 사용되는 엔터티 명명 체계는 메서드 또는 org.xml.sax.ContentHandler#skippedEntity ContentHandler.skippedEntity() 메서드에서 LexicalHandler사용되는 것과 동일합니다.

에 대한 org.xml.sax.ext.EntityResolver2.resolveEntity(java.lang.String, java.lang.String, java.lang.String, java.lang.String)Java 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

적용 대상