Интерфейс LSInput

public interface LSInput

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

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

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

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

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

  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, предполагается, что входной данные сертифицированы (см. раздел 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, который будет использоваться (см. раздел 5.1.4 в [IETF RFC 2396]) для преобразования относительного systemId в абсолютный URI.

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). XML-декларация не обязательна при использовании stringData. Если XML-декларация присутствует, значение атрибута encoding будет проигнорировано.

setStringData

void setStringData(String stringData)

Данные строки для разбора. Если предоставлены, они всегда будут интерпретироваться как последовательность 16-битовых единиц (символы, закодированные в UTF-16). XML-декларация не обязательна при использовании stringData. Если 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-декларации или Text-декларации, или кодировку, полученную от протокола более высокого уровня, такого как HTTP [IETF RFC 2616].

setEncoding

void setEncoding(String encoding)

Кодировка символов, если она известна. Кодировка должна быть строкой, приемлемой для XML-декларации кодировки ([XML 1.0] раздел 4.3.3 "Кодировка символов в сущностях").
Этот атрибут не имеет эффекта, когда приложение предоставляет поток символов или строковые данные. Для других источников входных данных, кодировка, заданная с помощью этого атрибута, переопределит любую кодировку, указанную в XML-декларации или Text-декларации, или кодировку, полученную от протокола более высокого уровня, такого как 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, 2020, 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/11/docs/api/java.xml/org/w3c/dom/ls/LSInput.html

Spec-Zone .ru
спецификации, руководства, описания, API