Deprecated: Return type of YDataTable::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/bdavid/prod/georef/yamldoc/ydclasses/ydata.inc.php on line 428

Deprecated: Return type of YamlDataTable::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/bdavid/prod/georef/yamldoc/ydclasses/yamldata.inc.php on line 295
yaml pub]
Menu : html yaml json edit check reindex dump unset
* 

file

name ydata.inc.php
title ydata.inc.php - sous-classes YData et YDataTable pour la gestion des données
journal

5/11/2020: - modif YData::checkSchemaConformity() pour renvoyer un JsonSchStatus 3-5/1/2019: - correction affichage - ajout test de conformité d'une table à son schéma - traitement du ypath 29/7/2018: - mécanismes d'accès de base - manque projection, sélection - manque json-schema

classes

YData

name class YData
title gestion des données structurées en tables
doc

Un document YData correspond à un ensemble de tables, chacune composée d'un ensemble de lignes appelées n-uplets, qui doivent tous respecter un schéma JSON commun défini pour la table.
Chaque n-uplet est identifié par un champ particulier noté _id comme dans MongoDB.
Cette structuration homogène des n-uplets permet de leur appliquer des traitements, comme de sélectionner uniquement certains champs dans les n-uplets.
Chaque table comporte des métadonnées.

Cette classe remplace la classe YamlData, elle utilise les schémas JSON et hérite de YamlDoc.

Un document YData contient une liste de tables stockée dans une structure Yaml tables: {nomtable}: title: titre de la table data: enregistrements contenus dans la table

Une version serialisée du doc est enregistrée pour accélérer la lecture des gros documents.

prototype de Ydata: http://georef.eu/yamldoc/?doc=dublincore

Le ypath peut prendre une des formes suivantes:

  • métadonnée du document, ex
  • une table, renvoie la table y compris ses MD, ex
  • métadonnée d'une table dont le nom de MD ne correspond pas à un identifiant de tuple, ex
  • métadonnée d'une table dont le nom de MD correspond à un identifiant de tuple, ex
  • un tuple d'une table identifié par sa clé, ex
  • valeur d'un champ d'un tuple d'une table, tuple identifié par sa clé, ex
  • valeur d'un sous-champ d'un tuple d'une table, tuple identifié par sa clé, ex, ex
  • valeur d'un champ d'un tuple d'une table, tuple identifié par une valeur qqc, ex
  • valeur d'un champ des tuples d'une table, ex
  • valeurs de champs des tuples d'une table, ex, ex, ex ex

YDataTable

title stockage des données contenues dans une table, classe utilisée par YData
doc