Home IfKeyword Class
IfKeyword Class
Cancel

IfKeyword Class

Namespace: Json.Schema.Keywords

Inheritance: IfKeyword 🡒 object

Implemented interfaces:

  • IKeywordHandler

Handles if.

Remarks

This keyword is used to conditionally apply subschemas. If the instance is valid against this schema, then the then schema is applied. Otherwise, the else schema is applied. Its subschema does not directly affect the validation result, meaning that its subschema can fail while the host subschema still passes.

Properties

NameTypeSummary
InstanceIfKeywordGets the singleton instance of the Json.Schema.Keywords.IfKeyword.
NamestringGets the name of the handled keyword.

Methods

BuildSubschemas(KeywordData keyword, BuildContext context)

Builds and registers subschemas based on the specified keyword data within the provided build context.

Declaration

1
public virtual void BuildSubschemas(KeywordData keyword, BuildContext context)
ParameterTypeDescription
keywordKeywordDataThe keyword data used to determine which subschemas to build. Cannot be null.
contextBuildContextThe context in which subschemas are constructed and registered. Cannot be null.

Evaluate(KeywordData keyword, EvaluationContext context)

Evaluates the specified keyword using the provided evaluation context and returns the result of the evaluation.

Declaration

1
public virtual KeywordEvaluation Evaluate(KeywordData keyword, EvaluationContext context)
ParameterTypeDescription
keywordKeywordDataThe keyword data to be evaluated. Cannot be null.
contextEvaluationContextThe context in which the keyword evaluation is performed. Cannot be null.

Returns

A KeywordEvaluation object containing the results of the evaluation.

ValidateKeywordValue(JsonElement value)

Validates the specified JSON element as a keyword value and optionally returns a value to be shared across the other methods.

Declaration

1
public virtual object ValidateKeywordValue(JsonElement value)
ParameterTypeDescription
valueJsonElementThe JSON element to validate and convert. Represents the value to be checked for keyword compliance.

Returns

An object that is shared with the other methods. This object is saved to Json.Schema.KeywordData.Value.

Contents