Opération de chargement d'un fichier XML et de sélection d'opération en fonction du type de document. More...
#include "cogitant/inputxml.h"
Public Member Functions | |
OperationInputXmlSelector (Environment *env) | |
Constructeur. More... | |
void | addStandard (OperationCoGXMLInput *cogxml1, OperationRdfsXmlInput *rdfxml) |
Ajoute les opérations de chargement des formats spécifiques. More... | |
void | add (std::string const &root, OperationInputXml *ope) |
Ajoute un format et une opération de chargement de ce format. More... | |
Public Member Functions inherited from cogitant::OperationInputXml | |
void | setParamStream (std::istream *stream, std::string const &streamname) |
Choix du flux (C++) de lecture et de son nom. More... | |
void | run () |
Lancement de l'opération. More... | |
IStream const * | currentStream () const |
Méthode abstraite retournant le flux en cours de lecture. More... | |
void | setParamIgnoreUnknownElements (bool iue) |
Configure la lecture stricte ou relachée. More... | |
void | copyConfig (OperationInputXml const &src) |
Copie la configuration de l'opération passée en paramètre dans la configuration de l'opération courante. More... | |
OperationInputXml (Environment *env) | |
Constructeur. More... | |
~OperationInputXml () | |
Destructeur. More... | |
Public Member Functions inherited from cogitant::OperationInput | |
Error | check () |
Vérification des paramètres. More... | |
void | run () |
Lancement de l'opération. More... | |
std::string | streamName () const |
Nom du flux. More... | |
IStream const * | currentStream () const |
Méthode abstraite retournant le flux en cours de lecture. More... | |
OperationInput (Environment *env) | |
Constructeur. More... | |
OperationInput (OperationInput const &o) | |
Constructeur par recopie. More... | |
~OperationInput () | |
Destructeur. More... | |
void | setParamReadSupport (bool support) |
void | setParamReadObjects (bool objects) |
void | setParamInEnvironment (bool inenvironment) |
void | setParamConvertCgtInterface (bool c) |
void | setParamGraphObjectIdentifiers (bool c) |
Choix de la conservation des identificateurs des objets du graphes. More... | |
void | setParamAutoCreateTypes (bool a) |
Accepte des types de concepts, relations, emboîtements inconnus lors du chargement d'un graphe. More... | |
void | setParamAutoCreateIndividuals (bool a) |
Accepte des marqueurs individuels inconnus lors du chargement d'un graphe. More... | |
void | setParamIgnoreRedeclarationIndividuals (bool r) |
Accepte (et ignore) la redéclaration de marqueurs individuels. More... | |
void | setParamForceDestinationGraph (iSet dg=ISET_NULL) |
Force la lecture des connaissances graphe dans un objet Graph bien précis. More... | |
void | setParamPropertyFilter (PropertySet::Filter *f) |
Fixe le filtre de propriétés. More... | |
void | setParamBaseIds (std::string const &b) |
Fixe la base des identificateurs relatifs. More... | |
void | setParamResultEnvironmentIds (std::vector< iSet > *resultenvironmentids) |
void | setParamResultObjects (Set< EnvironmentObject *> *resultobjects) |
void | copyConfig (OperationInput const &src) |
Copie la configuration de l'opération passée en paramètre dans la configuration de l'opération courante. More... | |
std::vector< iSet > * | getResultEnvironmentIds () const |
Set< EnvironmentObject * > * | getResultObjects () const |
Public Member Functions inherited from cogitant::OperationIO | |
virtual bool | binaryFile () const |
Les fichiers gérés par cette opération doivent-ils être ouverts en mode binaire. More... | |
OperationIO (Environment *env) | |
Constructeur. More... | |
~OperationIO () | |
Destructeur. More... | |
Public Member Functions inherited from cogitant::Operation | |
Environment * | environment () const |
Environnement. More... | |
void | setEnvironment (Environment *env) |
Modification de l'environnement sur lequel est défini l'opération. More... | |
Operation (Environment *env) | |
Constructeur. More... | |
Operation (Operation const &o) | |
Constructeur par recopie. More... | |
~Operation () | |
Destructeur. More... | |
Public Member Functions inherited from cogitant::OperationBase | |
void | stop () |
Stopper l'opération dès que possible. More... | |
bool | isStopped () const |
Est-ce que l'opération a été stoppée. More... | |
OperationBase () | |
Constructeur. More... | |
OperationBase (OperationBase const &o) | |
Constructeur par recopie. More... | |
~OperationBase () | |
Destructeur. More... | |
Public Member Functions inherited from cogitant::ObservableObject | |
ObservableObject () | |
Constructeur. More... | |
ObservableObject (ObservableObject const &o) | |
Constructeur par recopie. More... | |
~ObservableObject () | |
Destructeur. More... | |
ObserverSet const & | observers () const |
Accès à l'ensemble des observateurs. More... | |
bool | hasObservers () const |
Existence d'observateurs. More... | |
bool | hasObservers (ObserverMessage::Type mt) const |
Existence d'observateurs qui écoutent le type de message passé. More... | |
void | attachObserver (Observer *obs) |
Ajoute un nouvel observateur à l'objet. More... | |
void | detachObserver (Observer *obs) |
Supprime le lien entre l'observateur et l'objet. More... | |
void | notifyObservers (ObserverMessage const *msg) |
Envoie le message de modification à tous les observateurs. More... | |
Public Member Functions inherited from cogitant::CogitantObject | |
CogitantObject () | |
Constructeur. More... | |
CogitantObject (CogitantObject const &o) | |
Constructeur par recopie. More... | |
virtual | ~CogitantObject () |
Destructeur. More... | |
PropertySet * | properties () |
Accès à l'ensemble des propriétés. More... | |
virtual std::string | toString () const |
Transformation en chaîne de caractères. More... | |
std::string | className () const |
Nom de la classe. More... | |
PropertySet const * | properties () const |
Accès en lecture seule à l'ensemble des propriétés. More... | |
bool | hasProperties () const |
Existence de propriétés. More... | |
CogitantObject & | operator= (CogitantObject const &ob) |
Affectation. More... | |
Public Member Functions inherited from cogitant::IStreamReader | |
virtual | ~IStreamReader () |
Destructeur. More... | |
Protected Member Functions | |
ExceptionInput * | createWarning (unsigned int code, std::string const &streamname, unsigned int line, std::string const &msg) const |
Crée une exception non fatale. More... | |
XmlInput::ContentHandler * | createXmlContentHandler () |
Méthode devant créer une sous-classe de XmlInput::ContentHandler pour gérer le contenu du flux lu. More... | |
void | runBegin (XmlInput &xi) |
Méthode appelée au début de l'analyse (juste après la détection du format). More... | |
OperationInputXml * | operationFor (std::string const &root, std::string const &formatname) |
Retourne l'opération gérant le format identifié par la racine passée et le nom de format passé. More... | |
void | setDoctype (XmlDocument const &doc, XmlDocument::DoctypeDeclaration const *dt) |
Méthode appelée par le ContentHandler et signalant à l'opération le DOCTYPE du document. More... | |
void | setRootElement (XmlDocument const &doc, XmlDocument::Element const *root) |
Méthode appelée par le ContentHandler et signalant à l'opération la racine du document. More... | |
void | selectOperation (OperationInputXml *ope) |
Sélectionne l'opération passée pour la suite du chargement . More... | |
Protected Member Functions inherited from cogitant::OperationInputXml | |
IStream::Line | currentLine () const |
Retourne la ligne en cours d'analyse. More... | |
std::string | currentStreamName () const |
Retourne le nom du flux en cours d'analyse. More... | |
void | assertParent (XmlDocument const &doc, XmlDocument::Node const *el, std::string const &parentname) |
Vérification que l'élément parent du noeud passé est bien du bon intitulé. More... | |
virtual void | runEnd () |
Méthode appelée à la fin de l'analyse. More... | |
virtual void | runException () |
Méthode appelée en cas d'exception levée dans l'analyse. More... | |
Protected Member Functions inherited from cogitant::OperationInput | |
IStream::LexemeType | assertLexeme (IStream::Lexeme &s, IStream::LexemeType l1, wchar_t sc1=0, IStream::LexemeType l2=IStream::LEX_UNKNOWN, wchar_t sc2=0, IStream::LexemeType l3=IStream::LEX_UNKNOWN, wchar_t sc3=0, IStream::LexemeType l4=IStream::LEX_UNKNOWN, wchar_t sc4=0, IStream::LexemeType l5=IStream::LEX_UNKNOWN, wchar_t sc5=0) |
Lit le lexème suivant qui doit être d'un des types donnés. More... | |
IStream::LexemeType | assertLexeme (IStream::Lexeme &s, IStream::LexemeType ltypes[], wchar_t lchars[]) |
Lit le lexème suivant qui doit être d'un des types donnés. More... | |
IStream::LexemeType | verifyLexeme (IStream::Lexeme const &l, IStream::LexemeType l1, wchar_t sc1=0, IStream::LexemeType l2=IStream::LEX_UNKNOWN, wchar_t sc2=0, IStream::LexemeType l3=IStream::LEX_UNKNOWN, wchar_t sc3=0, IStream::LexemeType l4=IStream::LEX_UNKNOWN, wchar_t sc4=0, IStream::LexemeType l5=IStream::LEX_UNKNOWN, wchar_t sc5=0) |
Vérifie si un lexème est d'un des types donnés. More... | |
IStream::LexemeType | verifyLexeme (IStream::Lexeme const &l, IStream::LexemeType ltypes[], wchar_t lchars[]) |
Vérifie si un lexème est d'un des types donnés. More... | |
virtual _NO_RETURN_PRE void | throwException (unsigned int code, std::string const &streamname, unsigned int line, std::string const &msg="") const _NO_RETURN_POST |
Lève une exception du type correspondant à une erreur d'analyse du flux d'entrée. More... | |
virtual _NO_RETURN_PRE void | throwExceptionCurrent (unsigned int code, std::string const &msg="") const _NO_RETURN_POST |
Lève une exception (par appel à throwException()) sur la ligne courante sur le flux courant. More... | |
void | throwWarningCurrent (unsigned int code, std::string const &msg="") |
Lève une exception non fatale. More... | |
void | convertCgtInterface (Graph *g) |
Conversion du codage des propriétés graphiques de cgtinterface/CoGui. More... | |
iSet | findConceptType (std::string const &i, bool throwifnotfound) const |
Raccourci pour chercher un type de concept dans le support, et qui le crée éventuellement à l'occasion, selon le réglage de l'opération. More... | |
iSet | findConceptOrDataType (std::string const &i) const |
Raccourci pour chercher un type de concept ou de données dans le support. More... | |
iSet | findRelationType (std::string const &i, bool throwifnotfound) const |
Raccourci pour chercher un type de relation dans le support, et qui le crée éventuellement à l'occasion, selon le réglage de l'opération. More... | |
iSet | findNestingType (std::string const &i, bool throwifnotfound) const |
Raccourci pour chercher un type d'emboîtement dans le support, et qui le crée éventuellement à l'occasion, selon le réglage de l'opération. More... | |
iSet | findIndividual (std::string const &i, bool throwifnotfound) const |
Raccourci pour chercher un marqueur individuel dans le support, et qui le crée éventuellement à l'occasion, selon le réglage de l'opération. More... | |
iSet | findDatatype (std::string const &i, bool throwifnotfound) const |
Raccourci pour chercher un Datatype dans le support, et qui le crée éventuellement à l'occasion, selon le réglage de l'opération. More... | |
iSet | findConceptTypeById (std::string const &id, bool throwifnotfound) const |
Retourne l'iSet du type de concept dont l'identificateur (ConceptType::identifier()) est passé en paramètre. More... | |
iSet | findConceptOrDataTypeById (std::string const &id) const |
Retourne l'iSet du type de concept ou de données dont l'identificateur (ConceptType::identifier()) est passé en paramètre. More... | |
iSet | findRelationTypeById (std::string const &id, bool throwifnotfound) const |
Retourne l'iSet du type de relation dont l'identificateur (RelationType::identifier()) est passé en paramètre. More... | |
iSet | findNestingTypeById (std::string const &id, bool throwifnotfound) const |
Retourne l'iSet du type d'emboîtement dont l'identificateur (NetingType::identifier()) est passé en paramètre. More... | |
iSet | findIndividualById (std::string const &id, bool throwifnotfound) const |
Retourne l'iSet du marqueur individual dont l'identificateur (Individual::identifier()) est passé en paramètre. More... | |
void | previouslyReadClear () |
Efface la mémorisation des intitulés et identifiants déjà lus. More... | |
bool | previouslyReadHas (bool id, std::string const &s) const |
Est-ce que que l'identifiant ou l'intitulé a déjà été lu. More... | |
void | previouslyReadAdd (bool id, std::string const &s) |
Ajoute un identifiant ou un intitulé à l'ensemble des chaînes déjà lues. More... | |
bool | previouslyReadAddVerify (bool id, std::string const &s) |
Ajoute un identifiant ou un intitulé si celui-ci ne figure pas déjà dans l'ensemble des chaînes déjà lues. More... | |
void | previouslyReadInit (bool label, bool id, int s) |
Construit les structures de données prévues pour tester si un intitulé ou un identificateur a déjà été lu. More... | |
bool | propertyAccept (Property::Type p, iSet sub=ISET_NULL) const |
La propriété doit-elle être acceptée. More... | |
bool | propertyAccept (std::string p, iSet sub=ISET_NULL) const |
La propriété doit-elle être acceptée. More... | |
Protected Member Functions inherited from cogitant::OperationIO | |
virtual Property::Type | stringToPropertyType (std::string const &s, iSet *sub=NULL, std::string *nomprop=NULL) const |
Type de propriété représenté par une chaîne. More... | |
virtual std::string | propertyTypeToString (Property::Type p, iSet sub=ISET_NULL) const |
Chaîne de caractères représentant une propriété. More... | |
void | throwExceptionIO (std::string const &what, unsigned int code=0, unsigned int line=0) |
Levée d'une exception de type ExceptionIO. More... | |
Protected Member Functions inherited from cogitant::Operation | |
void | setProgress (unsigned int current, unsigned int max) |
Progression actuelle de l'opération. More... | |
Protected Member Functions inherited from cogitant::ObservableObject | |
virtual ObserverSet * | allocObservers () const |
Fonction créant l'instance d'une sous classe de ObserverSet pour la représentation de l'ensemble des observateurs de l'objet. More... | |
ObserverSet & | observers () |
Accès à l'ensemble des observateurs. More... | |
Protected Member Functions inherited from cogitant::CogitantObject | |
virtual PropertySet * | allocProperties () const |
Fonction créant l'instance d'une sous classe de PropertySet pour la représentation des propriétés de l'objet. More... | |
Friends | |
class | ContentHandlerSelector |
Additional Inherited Members | |
Public Types inherited from cogitant::OperationBase | |
typedef unsigned int | Error |
Résultat de la vérification des arguments d'une opération. More... | |
Static Public Member Functions inherited from cogitant::OperationIO | |
static Property::Type | stringToPropertyTypeDefault (const std::string &s) |
Type de propriété représenté par une chaîne (nom de stockage) Cette méthode (de classe) permet la correspondance entre types et chaînes pour les propriétés standard. More... | |
static std::string | propertyTypeToStringDefault (Property::Type p) |
Chaîne de caractères (nom de stockage) représentant une propriété. More... | |
Static Public Attributes inherited from cogitant::Operation | |
static const Error | PROJBACKTRACKCHOICE_EMPTYLIST |
Impossible d'enlever un élément à une liste vide. More... | |
static const Error | OBJECTTYPE |
Un (identifiant d') objet parmi les paramètres n'est pas du bon type. More... | |
static const Error | WRONGEDGES |
Un graphe parmi les paramètres de l'opération possède des arêtes pendantes. More... | |
Static Public Attributes inherited from cogitant::OperationBase | |
static const Error | CHECKOK |
Pas d'erreur. More... | |
static const Error | ARGUMENTS |
Certains paramètres de l'opération n'ont pas été fixés. More... | |
static const Error | UNUSED |
Symbole d'erreur inutilisé. More... | |
Protected Attributes inherited from cogitant::OperationInputXml | |
std::istream * | i_stream |
Flux de lecture. | |
bool | i_ignoreunknownelements |
Ignore les éléments inconnus. | |
std::string | m_streamname |
Nom du flux. | |
XmlInput::IStreamXml const * | m_streamxml |
Flux XML utilisé par l'opération de lecture XML (utilisé pour récupérer nom et position dans le flux en cas de levée d'exception). | |
Protected Attributes inherited from cogitant::OperationInput | |
IStream * | m_stream |
Flux de lecture. | |
bool | i_support |
Lecture d'un support autorisée. | |
bool | i_objects |
Lecture d'EnvironmentObject autorisée. | |
bool | i_inenvironment |
Les objets lus sont-ils stockés dans l'environnement (true ) ou dans le résultat de l'opération (false ). | |
bool | i_convertcgti |
Conversion des propriétés graphiques des fichiers générés par cgtinterface/CoGui. | |
bool | i_graphobjectidentifiers |
Conservation des identificateurs des objets lus dans le fichier dans les graphes. More... | |
bool | i_autocreatetypes |
Création automatique de types dans le support quand des graphes/règles/contraintes sont lus. | |
bool | i_autocreateindividuals |
Création automatique de marqueurs individuels quand des graphes/règles/contraintes sont lus. | |
bool | i_ignoreredeclarationindividuals |
Ignore les déclarations de marqueurs individuels existants. | |
iSet | i_forcegraph |
Graphe destination des connaissances lues. | |
PropertySet::Filter * | i_propfilter |
Filtre pour la lecture de propriétés. More... | |
std::string | i_baseids |
Base pour les identifiants relatifs. More... | |
std::vector< iSet > * | io_resultenvironmentids |
Si les objets lus sont stockés dans l'environnement, contient en sortie les identificateurs des objets lus. | |
Set< EnvironmentObject * > * | io_resultobjects |
Si les objets lus sont stockés dans le résultat de l'opération, contient en sortie des pointeurs vers les objets lus. | |
EnvironmentObject * | m_object |
Objet (Graph ou Rule) en cours de lecture. | |
MapIdentISet | m_formatid |
Correspondances identificateurs du format (CoGXML, BCGCT, etc.) - identificateurs internes à l'objet en cours de lecture. More... | |
std::set< std::string > | m_previouslyreadlabels |
Intitulés (labels) déjà lus. More... | |
std::set< std::string > | m_previouslyreadids |
Identificateurs déjà lus. More... | |
bool | m_supportadd |
Est-ce que le support en cours de lecture est un ajout au support précédent ( true ) ou un nouveau support ( false ). More... | |
Protected Attributes inherited from cogitant::OperationBase | |
bool | m_stop |
Arrêt de l'exécution de l'opération demandé. More... | |
Static Protected Attributes inherited from cogitant::OperationIO | |
static const char * | c_standardproperties_label [] |
static const Property::Type | c_standardproperties_id [] |
Opération de chargement d'un fichier XML et de sélection d'opération en fonction du type de document.
Cette classe est utilisée pour gérer les fichiers rédigés en XML, dont l'extension (.xml par exemple) ne permet pas de détecter le format. Elle se charge de commencer l'analyse du fichier, puis passe la main à la sous-classe d'OperationInputXml gérant le format.
cogitant::OperationInputXmlSelector::OperationInputXmlSelector | ( | Environment * | env | ) |
Constructeur.
void cogitant::OperationInputXmlSelector::add | ( | std::string const & | root, |
OperationInputXml * | ope | ||
) |
Ajoute un format et une opération de chargement de ce format.
root | nom de l'élément racine du format. |
ope | opération prenant en compte le format. |
void cogitant::OperationInputXmlSelector::addStandard | ( | OperationCoGXMLInput * | cogxml1, |
OperationRdfsXmlInput * | rdfxml | ||
) |
Ajoute les opérations de chargement des formats spécifiques.
|
protectedvirtual |
Crée une exception non fatale.
Implements cogitant::OperationInput.
|
protectedvirtual |
Méthode devant créer une sous-classe de XmlInput::ContentHandler pour gérer le contenu du flux lu.
Implements cogitant::OperationInputXml.
|
protected |
Retourne l'opération gérant le format identifié par la racine passée et le nom de format passé.
|
protectedvirtual |
Méthode appelée au début de l'analyse (juste après la détection du format).
Par défaut, ne fait rien.
Reimplemented from cogitant::OperationInputXml.
|
protected |
Sélectionne l'opération passée pour la suite du chargement .
|
protected |
Méthode appelée par le ContentHandler et signalant à l'opération le DOCTYPE du document.
|
protected |
Méthode appelée par le ContentHandler et signalant à l'opération la racine du document.