Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

# DOMImplementationLS

` public interface DOMImplementationLS `   
` `

|---|
| org.w3c.dom.ls.DOMImplementationLS |

<br />

*** ** * ** ***

`DOMImplementationLS` contains the factory methods for creating Load and Save objects.

The expectation is that an instance of the `DOMImplementationLS` interface can be obtained by using binding-specific casting methods on an instance of the `DOMImplementation` interface or, if the `Document` supports the feature `"Core"` version `"3.0"` defined in \[[DOM Level 3 Core](http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407)\] , by using the method `DOMImplementation.getFeature` with parameter values `"LS"` (or `"LS-Async"`) and `"3.0"` (respectively).

See also the [Document Object Model (DOM) Level 3 Load and Save Specification](http://www.w3.org/TR/2004/REC-DOM-Level-3-LS-20040407).

## Summary

| ### Constants ||
|---|---|
| `short` | `https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#MODE_ASYNCHRONOUS` Create an asynchronous `LSParser`. |
| `short` | `https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#MODE_SYNCHRONOUS` Create a synchronous `LSParser`. |

| ### Public methods ||
|---|---|
| ` abstract https://developer.android.com/reference/org/w3c/dom/ls/LSInput` | ` https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#createLSInput()() ` Create a new empty input source object where `LSInput.characterStream`, `LSInput.byteStream` , `LSInput.stringData` `LSInput.systemId`, `LSInput.publicId`, `LSInput.baseURI`, and `LSInput.encoding` are null, and `LSInput.certifiedText` is false. |
| ` abstract https://developer.android.com/reference/org/w3c/dom/ls/LSOutput` | ` https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#createLSOutput()() ` Create a new empty output destination object where `LSOutput.characterStream`, `LSOutput.byteStream`, `LSOutput.systemId`, `LSOutput.encoding` are null. |
| ` abstract https://developer.android.com/reference/org/w3c/dom/ls/LSParser` | ` https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#createLSParser(short,%20java.lang.String)(short mode, https://developer.android.com/reference/java/lang/String schemaType) ` Create a new `LSParser`. |
| ` abstract https://developer.android.com/reference/org/w3c/dom/ls/LSSerializer` | ` https://developer.android.com/reference/org/w3c/dom/ls/DOMImplementationLS#createLSSerializer()() ` Create a new `LSSerializer` object. |

## Constants

### MODE_ASYNCHRONOUS

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final short MODE_ASYNCHRONOUS
```

Create an asynchronous `LSParser`.

<br />

Constant Value: 2 (0x00000002)

### MODE_SYNCHRONOUS

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final short MODE_SYNCHRONOUS
```

Create a synchronous `LSParser`.

<br />

Constant Value: 1 (0x00000001)

## Public methods

### createLSInput

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract LSInput createLSInput ()
```

Create a new empty input source object where `LSInput.characterStream`, `LSInput.byteStream` , `LSInput.stringData` `LSInput.systemId`, `LSInput.publicId`, `LSInput.baseURI`, and `LSInput.encoding` are null, and `LSInput.certifiedText` is false.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/org/w3c/dom/ls/LSInput` | The newly created input object. <br /> |

### createLSOutput

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract LSOutput createLSOutput ()
```

Create a new empty output destination object where `LSOutput.characterStream`, `LSOutput.byteStream`, `LSOutput.systemId`, `LSOutput.encoding` are null.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/org/w3c/dom/ls/LSOutput` | The newly created output object. <br /> |

### createLSParser

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract LSParser createLSParser (short mode, 
                String schemaType)
```

Create a new `LSParser`. The newly constructed parser may then be configured by means of its `DOMConfiguration` object, and used to parse documents by means of its `parse` method.

<br />

| Parameters ||
|---|---|
| `mode` | `short`: The `mode` argument is either `MODE_SYNCHRONOUS` or `MODE_ASYNCHRONOUS`, if `mode` is `MODE_SYNCHRONOUS` then the `LSParser` that is created will operate in synchronous mode, if it's `MODE_ASYNCHRONOUS` then the `LSParser` that is created will operate in asynchronous mode. <br /> |
| `schemaType` | `String`: An absolute URI representing the type of the schema language used during the load of a `Document` using the newly created `LSParser`. Note that no lexical checking is done on the absolute URI. In order to create a `LSParser` for any kind of schema types (i.e. the LSParser will be free to use any schema found), use the value `null`. **Note:** For W3C XML Schema \[[XML Schema Part 1](http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/)\] , applications must use the value `"http://www.w3.org/2001/XMLSchema"`. For XML DTD \[[XML 1.0](http://www.w3.org/TR/2004/REC-xml-20040204)\], applications must use the value `"http://www.w3.org/TR/REC-xml"`. Other Schema languages are outside the scope of the W3C and therefore should recommend an absolute URI in order to use this method. |

| Returns ||
|---|---|
| `https://developer.android.com/reference/org/w3c/dom/ls/LSParser` | The newly created `LSParser` object. This `LSParser` is either synchronous or asynchronous depending on the value of the `mode` argument. **Note:** By default, the newly created `LSParser` does not contain a `DOMErrorHandler`, i.e. the value of the "[error-handler](http://www.w3.org/TR/DOM-Level-3-Core/core.html#parameter-error-handler)" configuration parameter is `null`. However, implementations may provide a default error handler at creation time. In that case, the initial value of the `"error-handler"` configuration parameter on the new `LSParser` object contains a reference to the default error handler. |

| Throws ||
|---|---|
| `https://developer.android.com/reference/org/w3c/dom/DOMException` | NOT_SUPPORTED_ERR: Raised if the requested mode or schema type is not supported. |

### createLSSerializer

Added in [API level 8](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract LSSerializer createLSSerializer ()
```

Create a new `LSSerializer` object.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/org/w3c/dom/ls/LSSerializer` | The newly created `LSSerializer` object. **Note:** By default, the newly created `LSSerializer` has no `DOMErrorHandler`, i.e. the value of the `"error-handler"` configuration parameter is `null`. However, implementations may provide a default error handler at creation time. In that case, the initial value of the `"error-handler"` configuration parameter on the new `LSSerializer` object contains a reference to the default error handler. |