Class Environment
				
				
			
				
				
				
					
Defined in:  jsv.js.
				
			
| Constructor Attributes | Constructor Name and Description | 
|---|---|
| An Environment is a sandbox of schemas thats behavior is different from other environments. | 
| Method Attributes | Method Name and Description | 
|---|---|
| clone()
								 Returns a clone of the target environment. | |
| Creates an empty schema. | |
| createInstance(data, uri)
								 Returns a new JSONInstance of the provided data. | |
| createSchema(data, schema, uri)
								 Creates a new JSONSchema from the provided data, and registers it with the environment. | |
| findSchema(uri)
								 Returns the schema registered with the provided URI. | |
| Returns the default fragment delimiter of the environment. | |
| Returns the default schema of the environment. | |
| getOption(name)
								 Returns the specified environment option. | |
| Sets the default fragment delimiter of the environment. | |
| setDefaultSchemaURI(uri)
								 Sets the URI of the default schema for the environment. | |
| setOption(name, value)
								 Sets the specified environment option to the specified value. | |
| validate(instanceJSON, schemaJSON)
								 Validates both the provided schema and the provided instance, and returns a Report. | 
					Class Detail
				
				
				
						Environment()
				
				
				
					An Environment is a sandbox of schemas thats behavior is different from other environments.
					
				
				
				
				
				
					
					
					
					
					
					
					
			
					Method Detail
				
				
					 
					
					
					{Environment}
					clone()
					
					
					
						Returns a clone of the target environment.
						
						
					
					
					
					
						
						
						
						
						
							- Returns:
- {Environment} A new Environment that is a exact copy of the target environment
					
					{JSONSchema}
					createEmptySchema()
					
					
					
						Creates an empty schema.
						
						
					
					
					
					
						
						
						
						
						
							- Returns:
- {JSONSchema} The empty schema, who's schema is itself.
					
					{JSONInstance}
					createInstance(data, uri)
					
					
					
						Returns a new JSONInstance of the provided data.
						
						
					
					
					
					
						
							- Parameters:
- {JSONInstance|Any} data
- The value of the instance
- {String} uri Optional
- The URI of the instance. If undefined, the URI will be a randomly generated UUID.
- Returns:
- {JSONInstance} A new JSONInstance from the provided data
					
					{JSONSchema}
					createSchema(data, schema, uri)
					
					
					
						Creates a new JSONSchema from the provided data, and registers it with the environment.
						
						
					
					
					
					
						
							- Parameters:
- {JSONInstance|Any} data
- The value of the schema
- {JSONSchema|Boolean} schema Optional
- The schema to bind to the instance. If undefined, the environment's default schema will be used. Iftrue, the instance's schema will be itself.
- {String} uri Optional
- The URI of the schema. If undefined, the URI will be a randomly generated UUID.
- Throws:
- {InitializationError}
- If a schema that is not registered with the environment is referenced
- Returns:
- {JSONSchema} A new JSONSchema from the provided data
					
					{JSONSchema|undefined}
					findSchema(uri)
					
					
					
						Returns the schema registered with the provided URI.
						
						
					
					
					
					
						
							- Parameters:
- {String} uri
- The absolute URI of the required schema
- Returns:
- {JSONSchema|undefined} The request schema, or undefinedif not found
					
					{String}
					getDefaultFragmentDelimiter()
					
					
					
						Returns the default fragment delimiter of the environment.
						
						
					
					
					
					
						
						
							- Deprecated:
- Use Environment#getOption with option "defaultFragmentDelimiter"
- Returns:
- {String} The fragment delimiter character
					
					{JSONSchema}
					getDefaultSchema()
					
					
					
						Returns the default schema of the environment.
						
						
					
					
					
					
						
						
						
						
						
							- Returns:
- {JSONSchema} The default schema
					
					{Any}
					getOption(name)
					
					
					
						Returns the specified environment option.
						
						
					
					
					
					
						
							- Parameters:
- {String} name
- The name of the environment option to set
- Returns:
- {Any} The value of the environment option
					
					
					setDefaultFragmentDelimiter(fd)
					
					
					
						Sets the default fragment delimiter of the environment.
						
						
					
					
					
					
						
							- Parameters:
- {String} fd
- The fragment delimiter character
- Deprecated:
- Use Environment#setOption with option "defaultFragmentDelimiter"
					
					
					setDefaultSchemaURI(uri)
					
					
					
						Sets the URI of the default schema for the environment.
						
						
					
					
					
					
						
							- Parameters:
- {String} uri
- The default schema URI
- Deprecated:
- Use Environment#setOption with option "defaultSchemaURI"
					
					
					setOption(name, value)
					
					
					
						Sets the specified environment option to the specified value.
						
						
					
					
					
					
						
							- Parameters:
- {String} name
- The name of the environment option to set
- {Any} value
- The new value of the environment option
					
					{Report}
					validate(instanceJSON, schemaJSON)
					
					
					
						Validates both the provided schema and the provided instance, and returns a Report. 
If the schema fails to validate, the instance will not be validated.
						
						
					
					
					
					
						
							- Parameters:
- {JSONInstance|Any} instanceJSON
- The JSONInstance or JavaScript value to validate.
- {JSONSchema|Any} schemaJSON
- The JSONSchema or JavaScript value to use in the validation. This will also be validated againt the schema's schema.
- Returns:
- {Report} The result of the validation