Spec-Zone.ru › OpenJDK 25

Интерфейс LSInput

public interface LSInput
Этот интерфейс представляет источник входных данных.

Этот интерфейс позволяет приложению инкапсулировать сведения об источнике входных данных в одном объекте, который может включать публичный идентификатор, системный идентификатор, поток байтов (возможно, с указанной кодировкой), базовый URI и/или символьный поток.

Точные определения потока байтов и символьного потока зависят от привязки.

Предполагается, что приложение будет предоставлять объекты, реализующие этот интерфейс, всякий раз, когда такие объекты необходимы. Приложение может предоставить собственные объекты, реализующие этот интерфейс, или воспользоваться универсальным фабричным методом DOMImplementationLS.createLSInput() для создания объектов, реализующих этот интерфейс.

LSParser будет использовать объект LSInput, чтобы определить способ чтения данных. LSParser будет проверять различные входные данные, указанные в LSInput, в следующем порядке, чтобы определить, из какого источника читать; будет использован первый источник, значение которого не равно null и не является пустой строкой:

  1. LSInput.characterStream
  2. LSInput.byteStream
  3. LSInput.stringData
  4. LSInput.systemId
  5. LSInput.publicId

Если все входные данные равны null, LSParser сообщит об ошибке DOMError, установив для DOMError.type значение "no-input-specified", а для DOMError.severity — значение DOMError.SEVERITY_FATAL_ERROR.

Объекты LSInput принадлежат приложению. Реализация DOM никогда не будет изменять их (хотя при необходимости может создавать копии и изменять их).

См. также Спецификацию объектной модели документа (DOM) уровня 3: загрузка и сохранение.

Начиная с:
1.5

Краткое описание методов

Модификатор и тип Метод Описание
String getBaseURI()
Базовый URI, используемый (см. раздел 5.1.4 в [IETF RFC 2396]) для преобразования относительного systemId в абсолютный URI.
InputStream getByteStream()
Атрибут типа, зависящего от языка и привязки, который представляет поток байтов.
boolean getCertifiedText()
Если значение равно true, при разборе [XML 1.1] считать, что входные данные сертифицированы (см. раздел 2.13 в [XML 1.1]).
Reader getCharacterStream()
Атрибут типа, зависящего от языка и привязки, который представляет поток 16-разрядных единиц.
String getEncoding()
Кодировка символов, если она известна.
String getPublicId()
Публичный идентификатор этого источника входных данных.
String getStringData()
Строковые данные для разбора.
String getSystemId()
Системный идентификатор — ссылка URI [IETF RFC 2396] для этого источника входных данных.
void setBaseURI(String baseURI)
Базовый URI, используемый (см. раздел 5.1.4 в [IETF RFC 2396]) для преобразования относительного systemId в абсолютный URI.
void setByteStream(InputStream byteStream)
Атрибут типа, зависящего от языка и привязки, который представляет поток байтов.
void setCertifiedText(boolean certifiedText)
Если значение равно true, при разборе [XML 1.1] считать, что входные данные сертифицированы (см. раздел 2.13 в [XML 1.1]).
void setCharacterStream(Reader characterStream)
Атрибут типа, зависящего от языка и привязки, который представляет поток 16-разрядных единиц.
void setEncoding(String encoding)
Кодировка символов, если она известна.
void setPublicId(String publicId)
Публичный идентификатор этого источника входных данных.
void setStringData(String stringData)
Строковые данные для разбора.
void setSystemId(String systemId)
Системный идентификатор — ссылка URI [IETF RFC 2396] для этого источника входных данных.

Подробное описание методов

getCharacterStream

Reader getCharacterStream()
Атрибут типа, зависящего от языка и привязки, который представляет поток 16-разрядных единиц. Приложение должно кодировать поток в UTF-16 (определённую в [Unicode] и [ISO/IEC 10646]). При использовании символьных потоков наличие объявления XML не является обязательным. Если объявление XML присутствует, значение атрибута encoding игнорируется.

setCharacterStream

void setCharacterStream(Reader characterStream)
Атрибут типа, зависящего от языка и привязки, который представляет поток 16-разрядных единиц. Приложение должно кодировать поток в UTF-16 (определённую в [Unicode] и [ISO/IEC 10646]). При использовании символьных потоков наличие объявления XML не является обязательным. Если объявление XML присутствует, значение атрибута encoding игнорируется.

getByteStream

InputStream getByteStream()
Атрибут типа, зависящего от языка и привязки, который представляет поток байтов.
Если приложению известна кодировка символов потока байтов, следует задать атрибут encoding. Указанная таким образом кодировка переопределяет любую кодировку, заданную в объявлении XML данных.

setByteStream

void setByteStream(InputStream byteStream)
Атрибут типа, зависящего от языка и привязки, который представляет поток байтов.
Если приложению известна кодировка символов потока байтов, следует задать атрибут encoding. Указанная таким образом кодировка переопределяет любую кодировку, заданную в объявлении XML данных.

getStringData

String getStringData()
Строковые данные для разбора. Если эти данные предоставлены, они всегда будут рассматриваться как последовательность 16-разрядных единиц (символов в кодировке UTF-16). При использовании stringData наличие объявления XML не является обязательным. Если объявление XML присутствует, значение атрибута encoding игнорируется.

setStringData

void setStringData(String stringData)
Строковые данные для разбора. Если эти данные предоставлены, они всегда будут рассматриваться как последовательность 16-разрядных единиц (символов в кодировке UTF-16). При использовании stringData наличие объявления XML не является обязательным. Если объявление XML присутствует, значение атрибута encoding игнорируется.

getSystemId

String getSystemId()
Системный идентификатор — ссылка URI [IETF RFC 2396] для этого источника входных данных. Системный идентификатор необязателен, если указан поток байтов, символьный поток или строковые данные. Тем не менее его полезно указать, поскольку приложение будет использовать его для разрешения относительных URI и сможет включать его в сообщения об ошибках и предупреждения. (LSParser будет пытаться получить ресурс, указанный ссылкой URI, только если в источнике входных данных отсутствуют другие доступные входные данные.)
Если приложению известна кодировка символов объекта, на который указывает системный идентификатор, её можно задать с помощью атрибута encoding.
Если указанный системный идентификатор является относительной ссылкой URI (см. раздел 5 в [IETF RFC 2396]), реализация DOM попытается разрешить относительный URI, используя baseURI в качестве базового URI; если это не удастся, поведение зависит от реализации.

setSystemId

void setSystemId(String systemId)
Системный идентификатор — ссылка URI [IETF RFC 2396] для этого источника входных данных. Системный идентификатор необязателен, если указан поток байтов, символьный поток или строковые данные. Тем не менее его полезно указать, поскольку приложение будет использовать его для разрешения относительных URI и сможет включать его в сообщения об ошибках и предупреждения. (LSParser будет пытаться получить ресурс, указанный ссылкой URI, только если в источнике входных данных отсутствуют другие доступные входные данные.)
Если приложению известна кодировка символов объекта, на который указывает системный идентификатор, её можно задать с помощью атрибута encoding.
Если указанный системный идентификатор является относительной ссылкой URI (см. раздел 5 в [IETF RFC 2396]), реализация DOM попытается разрешить относительный URI, используя baseURI в качестве базового URI; если это не удастся, поведение зависит от реализации.

getPublicId

String getPublicId()
Публичный идентификатор этого источника входных данных. С помощью зависящего от реализации механизма (например, каталогов или других сопоставлений) ему может быть сопоставлен источник входных данных. Если публичный идентификатор указан, он также может включаться в сведения о местоположении при сообщении об ошибках.

setPublicId

void setPublicId(String publicId)
Публичный идентификатор этого источника входных данных. С помощью зависящего от реализации механизма (например, каталогов или других сопоставлений) ему может быть сопоставлен источник входных данных. Если публичный идентификатор указан, он также может включаться в сведения о местоположении при сообщении об ошибках.

getBaseURI

String getBaseURI()
Базовый URI, используемый (см. раздел 5.1.4 в [IETF RFC 2396]) для преобразования относительного systemId в абсолютный URI.
Если при использовании базовый URI сам является относительным URI, пустой строкой или null, поведение зависит от реализации.

setBaseURI

void setBaseURI(String baseURI)
Базовый URI, используемый (см. раздел 5.1.4 в [IETF RFC 2396]) для преобразования относительного systemId в абсолютный URI.
Если при использовании базовый URI сам является относительным URI, пустой строкой или null, поведение зависит от реализации.

getEncoding

String getEncoding()
Кодировка символов, если она известна. Кодировка должна быть строкой, допустимой в объявлении кодировки XML ([XML 1.0], раздел 4.3.3 «Кодировка символов в сущностях»).
Этот атрибут не действует, если приложение предоставляет символьный поток или строковые данные. Для других источников входных данных кодировка, указанная с помощью этого атрибута, переопределяет любую кодировку, заданную в объявлении XML или текстовом объявлении, а также кодировку, полученную по протоколу более высокого уровня, например HTTP [IETF RFC 2616].

setEncoding

void setEncoding(String encoding)
Кодировка символов, если она известна. Кодировка должна быть строкой, допустимой в объявлении кодировки XML ([XML 1.0], раздел 4.3.3 «Кодировка символов в сущностях»).
Этот атрибут не действует, если приложение предоставляет символьный поток или строковые данные. Для других источников входных данных кодировка, указанная с помощью этого атрибута, переопределяет любую кодировку, заданную в объявлении XML или текстовом объявлении, а также кодировку, полученную по протоколу более высокого уровня, например HTTP [IETF RFC 2616].

getCertifiedText

boolean getCertifiedText()
Если значение равно true, при разборе [XML 1.1] считать, что входные данные сертифицированы (см. раздел 2.13 в [XML 1.1]).

setCertifiedText

void setCertifiedText(boolean certifiedText)
Если значение равно true, при разборе [XML 1.1] считать, что входные данные сертифицированы (см. раздел 2.13 в [XML 1.1]).

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её дочерних компаний в США и других странах.
Авторское право © 1993, 2025, Oracle и/или её дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/org/w3c/dom/ls/LSInput.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API