6 dépôts
The technical process of resolving internal and external pointers within a schema definition.
Distinct from API Reference Resolution: More specific than general API reference resolution by focusing on the JSON Schema $ref mechanism.
Explore 6 awesome GitHub repositories matching software engineering & architecture · Schema Reference Resolution. Refine with filters or upvote what's useful.
Ce projet est une bibliothèque et un framework de validation JSON Schema utilisés pour vérifier que les instances de données sont conformes aux définitions déclaratives. Il fonctionne comme un moteur de validation qui applique des contraintes structurelles et des types de données, tout en servant également de méta-validateur pour garantir que les définitions de schéma elles-mêmes sont syntaxiquement correctes par rapport aux méta-schémas officiels. La bibliothèque est conçue pour l'extensibilité, permettant aux utilisateurs de définir une logique de validation personnalisée en mappant les mots-clés de schéma à des fonctions appelables spécialisées. Elle inclut un résolveur de références basé sur un registre pour gérer les références URI internes et externes afin de réutiliser des sous-schémas à travers différents documents. Le système couvre un large éventail de capacités de validation, y compris la vérification du type de données, la vérification du format de chaîne pour des types comme les emails et les UUIDs, et un rapport d'erreurs complet. Les outils de diagnostic fournissent un suivi des erreurs imbriquées et un filtrage heuristique pour identifier les échecs les plus pertinents au sein d'une structure de données.
Resolves internal and external pointers within schema definitions using a registry-based system.
Ce projet est une implémentation Python de la spécification JSON Schema, fournissant une bibliothèque pour vérifier que les instances de données sont conformes aux schémas définis. Il sert de framework de validation de données capable de valider à la fois les données elles-mêmes et les schémas par rapport aux méta-schémas officiels pour assurer l'exactitude structurelle. La bibliothèque dispose d'un résolveur de références de schéma qui mappe les URIs aux définitions, permettant la résolution de références internes et distantes pour une gestion modulaire des schémas. Elle est conçue pour l'extensibilité, permettant la définition de mots-clés personnalisés, une logique de vérification de type personnalisée et l'enregistrement de nouvelles fonctions de validation pour des formats de chaîne spécialisés. Le système fournit un rapport d'erreurs complet qui identifie toutes les violations dans une instance de données et les organise dans une hiérarchie structurée en arbre. Cela permet l'interrogation programmatique des échecs de validation, l'extraction de métadonnées de diagnostic et l'identification des erreurs primaires basées sur la hiérarchie des données. L'implémentation prend en charge plusieurs brouillons de spécifications via des classes de validation spécifiques à la version et des spécifications de dialecte de schéma.
Maps unique identifiers to schema definitions to resolve internal and remote references during validation.
JSON Editor est un framework d'interface utilisateur piloté par schéma et un éditeur basé sur le web utilisé pour générer des formulaires interactifs et valider des données JSON. Il traduit les spécifications JSON Schema en une hiérarchie d'éléments de formulaire HTML, permettant aux utilisateurs de manipuler des structures JSON complexes via une interface structurée plutôt que par du texte brut. Le framework se distingue par un système d'extension basé sur des plugins qui prend en charge des fonctions de résolution personnalisées et l'intégration d'éditeurs spécialisés, tels que WYSIWYG, Markdown et des éditeurs de code avec coloration syntaxique. Il emploie une résolution de schéma récursive pour gérer les définitions imbriquées et implémente une validation conditionnelle basée sur l'état en utilisant une logique if-then-else. Le projet fournit un large éventail de capacités, y compris la liaison de données bidirectionnelle, la gestion de la mise en page des tableaux et des objets pour les grilles et les onglets, et la synchronisation dynamique des champs via l'interpolation de template. Sa bibliothèque de composants couvre les entrées standard aux côtés d'outils spécialisés comme les sélecteurs de couleur, les sélecteurs de date-heure, les composants d'autocomplétion et les interfaces de téléchargement de fichiers. L'interface prend en charge la localisation des chaînes d'interface utilisateur et s'intègre à divers frameworks CSS pour découpler la génération de formulaires structurels du style visuel.
Resolves internal and external JSON pointers to load schema definitions from remote URLs or local sources.
fast-json-stringify is a high-performance JSON serialization library that uses JSON Schema to compile optimized functions for converting JavaScript objects into strings. It serves as a schema-based JSON serializer that generates specialized serialization logic to outperform standard stringification methods. The project provides capabilities to export standalone serialization code to files for direct execution and supports schema reference resolution to eliminate logic duplication. It allows for the deactivation of character escaping for trusted data to reduce overhead and includes specific op
Supports resolving internal and external pointers within JSON schemas to eliminate logic duplication.
Cette bibliothèque est un outil basé sur Java pour appliquer des contraintes de structure de données et vérifier les formats techniques par rapport aux spécifications de schéma définies. Elle fonctionne comme un utilitaire de traitement qui analyse des structures de données complexes tout en gérant les références de schéma externes et les dépendances circulaires. Le moteur se distingue par une conception de processeur immuable qui permet une validation concurrente et thread-safe sans nécessiter de synchronisation externe. Il utilise l'arithmétique à précision arbitraire pour évaluer les contraintes numériques, empêchant les erreurs d'arrondi courantes en virgule flottante, et utilise un traitement au niveau des caractères pour garantir une validation de chaîne sensible à Unicode pour les symboles complexes. Les développeurs peuvent étendre le pipeline de base en enregistrant des mots-clés personnalisés et des gestionnaires de format pour implémenter une logique métier spécialisée. Le projet fournit une gestion complète des schémas, y compris la vérification de la conformité structurelle par rapport aux méta-schémas, la résolution de dépendances basée sur URI et le chargement de schéma configurable. Il prend en charge des rapports d'erreur détaillés qui poursuivent la validation sur les éléments enfants même après des échecs parents, et inclut une interface en ligne de commande pour la vérification des données basée sur le terminal.
Fetches and processes external schema definitions using various URI schemes while managing custom handlers and detecting circular dependencies.
Ce projet est une bibliothèque Java conçue pour valider des documents JSON par rapport à des spécifications de schéma définies. Il fonctionne comme un moteur conforme aux normes qui garantit l'intégrité des données en vérifiant la conformité structurelle et en appliquant des règles métier au sein des applications Java. La bibliothèque se distingue par ses stratégies de validation flexibles, permettant aux développeurs d'injecter une logique personnalisée et des moteurs de correspondance de motifs pour gérer des formats de données spécialisés. Elle prend en charge des modes d'exécution configurables, permettant aux utilisateurs soit d'arrêter la validation immédiatement dès la première erreur, soit de collecter toutes les violations pour un rapport complet. De plus, le moteur inclut des capacités intégrées pour la coercition de type et l'injection de valeurs par défaut, ce qui aide à normaliser les données entrantes pendant le processus de validation. Au-delà des contrôles structurels standard, le système fournit des fonctionnalités avancées pour gérer les dépendances de données complexes et les contraintes de sécurité. Il inclut un registre local pour résoudre les références de schéma sans accès réseau et prend en charge l'application de modèles d'accès en lecture seule ou en écriture seule. La bibliothèque offre également des outils d'observabilité, tels que des hooks pilotés par les événements qui permettent aux systèmes externes de surveiller le processus de validation interne.
Manages relative identifiers and external dependencies through a local registry to resolve complex data structures without network access.