// Copyright (C) 2004 Intel Corporation #ifndef __DESERIALIZABLE_H #define __DESERIALIZABLE_H #include "XMLUtils.h" using namespace CimXMLUtilsNamespace; using namespace std; namespace CimClassNamespace { class DeSerializable { private: string deSerializableName; string dsUri; virtual void ClearValues() = 0; virtual void SetValue(const XMLElement& elem) = 0; // If a schema exists, Desrialize function will perform schema validation virtual bool GetSchema(string& xsdFile); public: DeSerializable(const string& deSerializableName, const string& ns = ""); virtual ~DeSerializable(); void Deserialize(const string& xml); void Deserialize(const XMLElement& elem); }; } // CimClassNamespace #endif