Menu : html yaml json edit check reindex dump unset
* 

title gestion des classes de documents YamlDoc (ydclasses)
abstract

Définition de classes de documents

Une classe de documents correspond à:

  • un schéma défini par un schéma JSON,
  • une classe Php implémentant:
    • des méthodes de consultation interactive du document,
    • une API de consultation en machine to machine,
    • une API Php d'utilisation du document en interne à YamlDoc.
spec

A une classe {yamlClass} correspond:

  • un éventuel fichier ~/html/yamldoc/ydclasses/{yamlClass}.sch.yaml définissant le schéma JSON
  • une classe Php {yamlClass} définie dans un fichier {yamlClassInt}.inc.php où {yamlClassInt} est un nom interne utilisé pour le fichier Php

Le fichier {yamlClassInt}.inc.php est inclus dans différent script, notamment le viewer, il doit:

  • définir une entrée de la variable globale $phpDocs pour la valeur {yamlClassInt}.inc.php qui doit comprendre :
    • une entrée file fournissant une documentation texte sur le fichier Php
    • une entrée classes avec une entrée par classe définie fournissant une documentation texte sur la classe Php

La classe Php {yamlClass}:

  • doit hériter de la classe YamlDoc, sauf les classes OdtDoc et PdfDoc qui héritent de la classe Doc.
uriUrl

Définition des URI et URL

  • http://ydclasses.georef.eu/{yamlClass} est l'URI d'une classe de documents YamlDoc,
    exemple: http://ydclasses.georef.eu/YData,
    cet URI est utilisé dans le champ $schema d'un document pour définir sa classe
  • la résolution de l'URI d'une classe fournit:
    • comme doc HTML une documentation de la classe
    • sinon la description de l'API REST en OAI Yaml
  • les URL suivantes sont déduites de l'URI d'une classe:
    • http://ydclasses.georef.eu/{yamlClass}/schema fournit le schéma de la classe par défaut en JSON
    • http://ydclasses.georef.eu/{yamlClass}/schema.json fournit le schéma de la classe en JSON
    • http://ydclasses.georef.eu/{yamlClass}/schema.yaml fournit le schéma de la classe en Yaml
    • http://ydclasses.georef.eu/{yamlClass}/api décrit l'API REST de la classe en OAI et en Yaml
  • ces résolutions sont mises en oeuvre par un résolveur exposé sur ~/html/yamldoc/ydclasses.php
liste

Les classes générales définies sont les suivantes:

Les classes spécifiques à la gestion de l'information géographique sont les suivantes: