# Interface SchemaReader

All Known Implementing Classes:
  `AbstractSchemaReader`, `AutoSchemaReader`, `CompactSchemaReader`, `SAXSchemaReader`, `com.thaiopensource.validate.rng.impl.SchemaReaderImpl`

public interface SchemaReader
A SchemaReader object is immutable and can thus be safely accessed concurrently from multiple threads.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`BASE_URI`

## Method Summary

Modifier and Type
Method
Description
`Schema`
`createSchema(SAXSource source, PropertyMap properties)`
`Schema`
`createSchema(InputSource source, PropertyMap properties)`
Creates a `Schema` by reading it from an `InputSource`.
`Option`
`getOption(String uri)`

## Field Details

### BASE_URI

static final String BASE_URI

See Also:
  - Constant Field Values

## Method Details

### createSchema

Schema createSchema(InputSource source, PropertyMap properties) throws IOException, SAXException, IncorrectSchemaException
Creates a `Schema` by reading it from an `InputSource`.

Parameters:
  `source` -
  `properties` - a `PropertyMap` to control the schema creation; must not be `null` @return a newly created `Schema`, never `null`
Throws:
  `IOException` - if an I/O error occurs
  `SAXException`
  `IncorrectSchemaException`
See Also:
  - `ValidateProperty`

### createSchema

Schema createSchema(SAXSource source, PropertyMap properties) throws IOException, SAXException, IncorrectSchemaException

Throws:
  `IOException`
  `SAXException`
  `IncorrectSchemaException`

### getOption

Option getOption(String uri)