<commit_before>class OperationParameter
----------

```Operation```s can optionally define one or more ```OperationParameter```s. Each ```OperationParameter``` can specify the 
location of the parameter (path, query string, or body) as well as a JSON schema definition to which the parameter must conform.

All parameters defined on an ```Operation``` will be available via the ```parameters``` property of  the ```HttpRequest``` object and can be accessed as ```req.parameters[<parameter-name>]``` or ```req.parameters.<parameter-name>```.

Carbond supports both JSON and [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/) (Extended JSON, which includes support additional types such as ```Date``` and ```ObjectId```). 

Formally defining parameters for operations helps you to build a self-describing API for which the framework can then 
auto-generate API documention and interactive administration tools.

Configuration
----------

```
{
  [_type: carbon.carbond.OperationParameter,]
  [description: <string>],
  [location: <string> ('query' | 'path' | 'body')],
  [schema: <object>] // JSON Schema object (http://json-schema.org/)
  [required: <boolean]
}
```

Properties
----------

* ```description```: A description for this parameter.

* ```location```: The location in which this parameter will be passed. Can be one of ```'query'```, ```'path'```, or ```'body'```.

* ```schema```: A [JSON Schema](http://json-schema.org/) definition. If supplied Carbond will parse the parameter 
as JSON / [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/) and automaticall validate that incoming data conforms to the schema and report a 403 Error to the client if data violates the schema. If ```null``` or ```undefined``` the defined parameter will not be parsed and will be a raw ```string```. To specify this parameter as an EJSON value of any type, a schema value of ```{}``` should be supplied. 
To support [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/), we extend JSON Schema to support the following additional types: ```ObjectId```, ```Date```, ```Timestamp```, ```Regex```, ```Undefined```, ```NumberLong```. These types can be specified like other JSON Schema primitive type like so:
```
{ type: "Date" }
```

* ```required```: The parameter is considered required iff this flag is set to ```true```. 

Methods
----------

Examples
----------
<commit_msg>Update OperationParameter.md<commit_after>class OperationParameter
----------

```Operation```s can optionally define one or more ```OperationParameter```s. Each ```OperationParameter``` can specify the 
location of the parameter (path, query string, or body) as well as a JSON schema definition to which the parameter must conform.

All parameters defined on an ```Operation``` will be available via the ```parameters``` property of  the ```HttpRequest``` object and can be accessed as ```req.parameters[<parameter-name>]``` or ```req.parameters.<parameter-name>```.

Carbond supports both JSON and [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/) (Extended JSON, which includes support additional types such as ```Date``` and ```ObjectId```). 

Formally defining parameters for operations helps you to build a self-describing API for which the framework can then 
auto-generate API documention and interactive administration tools.

Configuration
----------

```
{
  [_type: carbon.carbond.OperationParameter,]
  [description: <string>],
  [location: <string> ('query' | 'path' | 'body')],
  [schema: <object>] // JSON Schema object (http://json-schema.org/)
  [required: <boolean]
}
```

Properties
----------

* ```description```: A description for this parameter.

* ```location```: The location in which this parameter will be passed. Can be one of ```'query'```, ```'path'```, or ```'body'```.

* ```schema```: A [JSON Schema](http://json-schema.org/) definition. If supplied Carbond will parse the parameter 
as JSON / [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/) and automaticall validate that incoming data conforms to the schema and report a 403 Error to the client if data violates the schema. If ```null``` or ```undefined``` the defined parameter will not be parsed and will be a raw ```string```. To specify this parameter as an EJSON value of any type, a schema value of ```{}``` should be supplied. <br/>
To support [EJSON](http://docs.mongodb.org/manual/reference/mongodb-extended-json/), we extend JSON Schema to support the following additional types: ```ObjectId```, ```Date```, ```Timestamp```, ```Regex```, ```Undefined```, ```NumberLong```. These types can be specified like other JSON Schema primitive type: ``` { type: "Date" } ```

* ```required```: The parameter is considered required iff this flag is set to ```true```. 

Methods
----------

Examples
----------

{'fraction_non_alphanumeric': 0.16652994257588188, 'fraction_numerical': 0.0012305168170631665, 'mean_word_length': 4.554669703872437, 'pattern_counts': {'":': 0, '<': 16, '<?xml version=': 0, '>': 14, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2470216', 'n_tokens_mistral': 1328, 'n_tokens_neox': 1289, 'n_words': 540}