10 repository-uri
Validation logic that recursively traverses nested object hierarchies and collections to enforce structural correctness.
Distinct from Object Shape Validation: Distinct from Object Shape Validation by specifically handling recursive traversal of nested classes and arrays rather than just flat property checks.
Explore 10 awesome GitHub repositories matching software engineering & architecture · Recursive Object Validation. Refine with filters or upvote what's useful.
class-validator is a TypeScript class validation library that uses decorators to define constraints and rules for object properties. It functions as a decorator-based schema validator that ensures data integrity and structural correctness through a combination of synchronous checks and promise-based asynchronous rules. The library provides a recursive validation system for checking complex data hierarchies, including nested classes and individual elements within collections. It includes an object property whitelist utility capable of stripping undocumented properties or blocking unknown field
Implements a recursive validation system for verifying complex data hierarchies, including nested classes and collections.
FluentValidation is a .NET validation library used to define strongly-typed validation rules for objects. It utilizes a fluent interface API and lambda expressions to ensure data integrity for classes and properties within the .NET type system. The library separates validation logic from business entities to keep domain models focused on core functionality. This approach enables the enforcement of business logic and the sanitization of input data or API payloads through a sequence of logic checks. The system supports complex validation surface areas, including the ability to nest validators
Provides recursive validation of complex object graphs to ensure structural integrity across nested class hierarchies.
async-validator este o bibliotecă JavaScript de validare a schemelor și un motor de validare asincronă a datelor. Verifică structurile complexe de obiecte și array-urile imbricate prin aplicarea de reguli recursive și execuție non-blocking bazată pe promise-uri pentru a asigura integritatea datelor. Biblioteca funcționează atât ca un validator de constrângeri de obiecte, cât și ca un pipeline de transformare a datelor. Permite sanitizarea, constrângerea și formatarea valorilor de input printr-o secvență de funcții care rulează înainte și după procesul principal de validare. Motorul acoperă o gamă de capabilități, inclusiv validarea recursivă imbricată, aplicarea constrângerilor standard de schemă și integrarea logicii de business personalizate prin funcții de validare bespoke. De asemenea, oferă instrumente pentru personalizarea mesajelor de eroare și localizarea prin șiruri statice sau funcții dinamice.
Recursively traverses nested object hierarchies and arrays to enforce structural correctness across deep data structures.
Hamcrest PHP is a declarative assertion framework and matcher library used for unit testing in PHP. It provides a set of flexible matchers to verify object states, data types, and collection contents. The library includes specialized tools for XML verification using XPath expressions to analyze document structures and element content. It also allows for the creation of complex validation rules by combining multiple independent matchers through logical operators. The framework covers a broad range of validation primitives, including string content inspection, numeric comparison, and object pr
Checks class inheritance, object properties, and the contents of traversable collections or arrays.
prop-types este un validator de obiecte JavaScript și un type checker la runtime. Servește drept instrument de dezvoltare pentru verificarea faptului că proprietățile obiectelor corespund specificațiilor predefinite, fiind utilizat în principal pentru a asigura că datele transmise către componentele React se aliniază cu tipurile așteptate. Utilitarul detectează inconsistențele datelor prin logarea avertismentelor în consolă atunci când apar nepotriviri, în loc să arunce excepții. Utilizează un cache de avertismente stateful pentru a preveni log-urile duplicate și restricționează logica de validare la mediile non-producție pentru a evita overhead-ul de performanță în build-urile lansate. Proiectul acoperă validarea datelor prin parcurgerea recursivă a obiectelor și potrivirea bazată pe specificații. Oferă, de asemenea, instrumente pentru dezvoltatori pentru a reseta istoricul avertismentelor în timpul ciclurilor de testare.
Provides recursive traversal of nested object hierarchies to enforce structural type correctness.
Acest proiect este un plugin de validare a protocol buffer-elor și un generator de cod care creează o logică de validare consistentă în mai multe limbaje de programare. Funcționează ca o extensie de compilator pentru toolchain-ul Protocol Buffer, permițând dezvoltatorilor să definească constrângeri semantice direct în fișierele de schemă pentru a asigura consistența datelor. Instrumentul utilizează opțiuni personalizate pentru a încorpora reguli de validare în definițiile mesajelor, mapând aceste constrângeri de schemă la tipare de implementare specifice limbajului. Utilizează verificarea constrângerilor bazată pe predicate și parcurgerea recursivă pentru a impune reguli în ierarhiile de mesaje imbricate. Suprafața de validare acoperă intervale și valori numerice, tipare și formate de șiruri, constrângeri de secvențe de octeți și impunerea enum-urilor. De asemenea, gestionează dimensiunile colecțiilor și câmpurilor repetate, validarea tipurilor complexe pentru timestamp-uri și durate, precum și cerințele pentru selecția câmpurilor de tip union.
Implements depth-first traversal of nested message fields to enforce constraints across the entire data hierarchy.
ozzo-validation is a programmable data validation library for Go that verifies structs, maps, and primitive types using a declarative, rule-based approach. It functions as an interface-based validator, allowing for the recursive checking of nested data structures and custom types without the use of struct tags. The framework distinguishes itself as a context-aware validation engine, supporting the propagation of request-scoped data to rules that depend on external state. It provides extensive extensibility through custom rule definitions and the ability to override default failure text with l
Uses Go interfaces to recursively traverse and validate nested data structures and custom types.
Dataclasses-json is a library designed to facilitate the bidirectional conversion between Python data classes and JSON formats. It serves as a serialization tool that populates structured objects from raw data and transforms object instances into JSON strings, utilizing Python type hints to automate the mapping process. The library distinguishes itself by providing mechanisms for schema validation and runtime type coercion, ensuring that incoming data adheres to predefined model structures. It supports complex data requirements through recursive object traversal, which allows for the processi
Recursively traverses nested object hierarchies to process and validate complex data structures.
Hibernate Validator este o implementare de referință a specificației Jakarta Validation, servind drept framework pentru impunerea integrității datelor în aplicațiile Java. Funcționează ca un motor de validare declarativ care procesează constrângerile obiectelor pentru a se asigura că starea aplicației rămâne consistentă. Utilizând reguli bazate pe metadate, biblioteca validează proprietățile obiectelor, parametrii metodelor și colecțiile imbricate pentru a menține standardele de date în toate straturile unei aplicații. Biblioteca se distinge prin capacitatea de a efectua analize statice asupra configurațiilor de validare, identificând erorile structurale înainte de runtime. Suportă cerințe complexe de integritate a datelor permițând dezvoltatorilor să definească logica de validare personalizată și să se integreze cu sistemele de dependency injection. Motorul dispune, de asemenea, de un sistem de interpolare a mesajelor care oferă raportarea erorilor localizate, asigurându-se că feedback-ul este adaptat mediilor specifice ale utilizatorilor. Dincolo de validarea de bază, proiectul include utilitare de diagnosticare pentru benchmarking-ul performanței și profilarea execuției pentru a monitoriza throughput-ul și utilizarea resurselor. Oferă opțiuni de configurare flexibile, permițând definirea regulilor prin adnotări sau descriptori externi, și include adaptoare specializate pentru extragerea valorilor din diverse surse de date.
Ensures application state remains consistent by enforcing data integrity constraints on object properties and method parameters.
Fluent-validator is a Java validation framework designed to enforce data integrity through declarative constraints and automated service-layer checks. It provides a structured environment for defining validation logic that integrates with the JSR 303 specification, allowing developers to maintain consistent data quality across complex object hierarchies and application boundaries. The framework distinguishes itself through a fluent interface that enables the orchestration of validation chains, allowing for readable and maintainable rule sequences. It supports advanced execution control, inclu
Performs cascaded validation by recursively checking nested fields and collections to ensure deep data integrity.