Adds Docs for Array, Bool and Numeric

This commit is contained in:
2025-06-20 23:12:33 -03:00
parent 249195ff26
commit b92cf37145
4 changed files with 242 additions and 1 deletions

View File

@@ -0,0 +1,86 @@
Array Type
=================
The Array type has the following required properties:
- items: Schema for the items in the array, which can be a type or a schema object.
And the additional supported properties:
- maxItems: Maximum number of items in the array.
- minItems: Minimum number of items in the array.
- uniqueItems: If true, all items in the array must be unique.
And the additional generic properties:
- default: Default value for the array.
- description: Description of the array field.
Examples
-----------------
1. Basic Array with maxItems and minItems:
.. code-block:: python
from jambo import SchemaConverter
schema = {
"title": "ArrayExample",
"type": "object",
"properties": {
"tags": {
"type": "array",
"items": {"type": "string"},
"minItems": 1,
"maxItems": 5,
},
},
"required": ["tags"],
}
Model = SchemaConverter.build(schema)
obj = Model(tags=["python", "jambo", "pydantic"])
print(obj) # Output: ArrayExample(tags=['python', 'jambo', 'pydantic'])
try:
obj = Model(tags=[]) # This will raise a validation error
except ValueError as e:
print("Validation fails as expected:", e) # Output: Validation fails as expected: 1 validation error for ArrayExample
2. Array with uniqueItems:
.. code-block:: python
from jambo import SchemaConverter
schema = {
"title": "UniqueArrayExample",
"type": "object",
"properties": {
"unique_tags": {
"type": "array",
"items": {"type": "string"},
"uniqueItems": True,
},
},
"required": ["unique_tags"],
}
Model = SchemaConverter.build(schema)
obj = Model(unique_tags=["python", "jambo", "pydantic"])
print(obj) # Output: UniqueArrayExample(unique_tags={'python', 'jambo', 'pydantic'})
try:
obj = Model(unique_tags=["python", "jambo", "python"]) # This will raise a validation error
except ValueError as e:
print("Validation fails as expected:", e) # Output: Validation fails as expected: 1 validation error for UniqueArrayExample