Freedom est une bibliothèque PHP constitués de classes permettant de générer du contenu XHTML.

But de Freedom :

Le but avoué de la librairie freedom est de pousser les concepteur web à avoir une approche sémantique.

Cette librairie facilite la tâche de ceux qui considèrent que les pages web sont des documents ayant une division sémantique et donc que l'affichage est secondaire par rapport au contenu.

La spécification des différents éléments constituant le document prend tout son sens avec cette approche, le rôle des feuilles de styles devient claire : mettre en forme les différentes parties sémantiques d'un document.

Fonctionnement :

La librairie freedom est constituée d'une série de classes décrivant les différents éléments du DOM.

La super-classe Node (noeud) étend toutes ces classes qui sont considérées comme des noeuds de type spécialisés (donc des sous-classes de Node).

Cette super-classe est le principal élément du moteur freedom : elle génére la hiérarchie de noeuds, gère les erreurs de conception des noeuds (compatibilité xhtml, message de conseil, etc...),elle permet via des méthodes propres de déboguer la génération des noeuds ou de manipuler les noeuds (fusion, déplacement,supression...)

Le moteur freedom peut être couplé à n'importe quel gestionnaire de contenu (CMS), par exemple pour Joomla 1.5xx !

Freedom permet de créer de nouvelles classes de noeuds, par exemple une classe "Menu" peut être définie et étendre Node, ce qui permet de créer des méthodes propres à Menu mais aussi de béneficier de toutes les méthodes de Node...

Liens utiles :

Exemple 1, www.alterechos.be :

Les pages du site alterechos.be sont entièrement écrites via Freedom :

  1. la page d'accueil (sans débogueur)
  2. avec le débogueur de noeuds
  3. avec le débogueur de la création de noeuds

Exemple : ce site !

La page que vous voyez est créée à partir du moteur freedom, pour le constater vous pouvez activer les débogueurs du moteur :

map4use.be

accueil - projets - freedom library