Dilib, module SxmlNode, type SxmlNode

De Wicri Outils
LogoDilib.gif
Panneau travaux.png
Bibliothèque Dilib (ressources numériques)
Module SxmlNode
 

Le type SxmlNode

Il est décrit dans le fichier SxmlNode.h

Constructeurs

Constructeur SxmlNodeCreate

Synopsis
#include "SxmlNode.h"
SxmlNode *SxmlNodeCreate(char type);
Paramètre

Le paramètre type peut prendre une des valeurs suivantes :

#define SXML_NODE_ELEMENT                 1
#define SXML_NODE_ATTRIBUTE               2
#define SXML_NODE_TEXT                    3
#define SXML_NODE_PROCESSING_INSTRUCTION  7
#define SXML_NODE_COMMENT                 8
#define SXML_NODE_DOCUMENT                9
#define SXML_NODE_DOCUMENT_TYPE          10
#define SXML_NODE_DOCUMENT_FRAGMENT      11

#define SXML_NODE_BEGIN_ELEMENT          15
#define SXML_NODE_END_ELEMENT            16

#define SXML_NODE_LIST_ATTRIBUTES        17
#define SXML_NODE_CONTAINER              18
#define SXML_NODE_NODE_LIST              19
#define SXML_NODE_NAMED_NODE_MAP         20
#define SXML_NODE_RECORD                 21
#define SXML_NODE_DILIB                  22
#define SXML_NODE_XPATH_EXPRESSION       23
#define SXML_NODE_XPATH_RESULT           24
#define SXML_NODE_PROCESSOR              25
Usage

Ce constructeur permet en fait de créer tous les types d'objets Xml :

Ce constructeur est en fait rarement utilisé au profit de constructeurs plus spécialisés comme : SxmlElementCreate.

SxmlClone

Cette fonction crée une copie complètement indépendante d'un SxmlNode. Ça signifie aussi qu'il faut désallouer le SxmlNode renvoyé par SxmlClone. La copie est une sorte de clone, c'est-à-dire que toute l'arborescence est reproduite (chaque fils du noeud racine est lui aussi un clone des fils de l'original).

SxmlFromFile

Cette fonction lit un fichier au format XML et le transforme en un SxmlNode.

SxmlFromString

Cette fonction transforme une chaîne de caractères contenant un objet XML en un SxmlNode.

Propriétés

Un ensemble de fonctions permettent d'accéder aux propriétés d'un noeud Sxml.

SxmlNodeType

Cette fonction renvoie le type d'un noeud.

SxmlIsText

Synopsis
int SxmlIsText(SxmlNode *n1);

Cette fonction retourne 1 si le nœud testé, n1, est de type Texte.

SxmlNodeName

SxmlNodeValue

Synopsis
char* SxmlNodeValue(SxmlNode *n1);

Si le nœud n1 est de type text, cette fonction retourne un pointeur vers la chaîne associée.

Fonctions de transformation

SxmlSetNodeType

Exemple (transformation d'un objet de type processing instruction en simple élément) :

nodePI=SxmlParserGetProcessingInstruction(IstexParserXml);
SxmlSetNodeType(nodePI, SXML_NODE_ELEMENT);

SxmlReplaceName