Spec-Zone.ru › OpenJDK 21

Интерфейс 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 Level 3.

С:
1.5

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

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

setSystemId

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

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, предположить, что входной источник сертифицирован (см. раздел 2.13 в [XML 1.1]) при парсинге [XML 1.1].

setCertifiedText

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

© 1993, 2023, 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/21/docs/api/java.xml/org/w3c/dom/ls/LSInput.html

Spec-Zone.ru

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