latest pushes

This commit is contained in:
2024-12-31 17:10:43 -05:00
parent d02d3071e7
commit 1610cd8095
8 changed files with 863 additions and 163 deletions

196
README.md
View File

@@ -1,49 +1,179 @@
# Bellande Format
## Bellande File Format is a file format that that can be used as any file type.
## Data Types Support
1. Basic Types
- Strings (with intelligent quoting)
- Integers
- Floating point numbers
- Booleans
- Null
2. Advanced Types
- Decimal (high-precision numbers)
- Dates and Times
- Binary Data (base64 encoded)
- File Paths
- Regular Expressions
- Complex Numbers
- Sets
- URLs
- Timedeltas
- Version Numbers
- Custom Types (user-definable)
- Indentation-based structure
- Simple key-value pair syntax
- Support for lists and nested structures
- Basic data types (strings, numbers, booleans, null)
- Comment support
## Structure Features
1. Hierarchical Data
- Nested Objects
- Arrays/Lists
- Mixed Nesting
- Unlimited Depth
2. References
- Internal References
- Cross-file References
- Circular Reference Detection
- Reference Validation
## Data Integrity
1. Validation
- Schema Validation
- Type Checking
- Pattern Matching
- Required Fields
- Value Ranges
- Custom Validators
2. Security
- Built-in Encryption (AES)
- Custom Encryption Support
- Checksum Verification
- Data Integrity Checks
3. Version Control
- Change Tracking
- Version History
- Author Attribution
- Modification Timestamps
## Data Processing
1. Compression
- Built-in Huffman Compression
- Multiple Compression Algorithms
- Streaming Support
- Chunk Processing
2. Transformation
- Custom Type Transformers
- Data Filters
- Value Processors
- Format Converters
## Advanced Features
1. Search and Query
- Path-based Queries
- Pattern Matching
- Index Creation
- Search Optimization
2. Document Operations
- Merging
- Diffing
- Conflict Resolution
- Patch Generation
3. Metadata Support
- Document Properties
- Field Annotations
- Custom Metadata
- Tracking Information
## Format Characteristics
1. Syntax
- Human-readable
- Clean Indentation
- Comment Support
- Clear Structure
2. Compatibility
- UTF-8 Support
- Platform Independent
- Language Agnostic
- Extensible Format
3. Performance
- Streaming Parser
- Efficient Memory Usage
- Optimized Processing
- Large File Support
## Development Features
1. Error Handling
- Detailed Error Messages
- Line Number References
- Error Recovery
- Validation Reports
2. Debugging
- Debug Mode
- Verbose Logging
- Trace Information
- Performance Metrics
## Export/Import
1. Format Conversion
- JSON Export/Import
- YAML Export/Import
- XML Export/Import
- CSV Export/Import
- INI Export/Import
2. Integration
- Command Line Interface
- API Support
- Library Integration
- Tool Ecosystem
## Example of Bellande File Format
```
# This is a Bellande file
# Configuration file
name: "Project X"
version: 1.0
created_at: date:2024-03-15T10:30:00
settings:
debug: true
max_retries: 3
timeout: decimal:30.5
secret_key: base64:SGVsbG8gV29ybGQ=
user:
name: John Doe
age: 30
is_active: true
# Custom types example
locations:
office: type:point2d:40.7128,-74.0060
warehouse: type:point2d:34.0522,-118.2437
preferences:
theme: dark
notifications: true
# Reference example
company:
name: "Acme Corp"
address: "123 Main St"
skills:
- Python
- JavaScript
- "C++"
branch:
name: "Acme East"
address: ref:company.address
address:
street: 123 Main St
city: Anytown
country: USA
# Arrays with nested objects
users:
- name: "John Doe"
role: "admin"
active: true
login_times:
- date:2024-03-14T09:00:00
- date:2024-03-15T08:45:00
additional_info: null
projects:
- name: Project A
status: in_progress
team_size: 5
- name: Project B
status: completed
team_size: 3
- name: "Jane Smith"
role: "user"
active: true
permissions:
- "read"
- "write"
```