00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef MS_UMOD_XREF_HPP
00018 #define MS_UMOD_XREF_HPP
00019
00020
00021 #include <string>
00022 #include <vector>
00023
00024
00025 namespace msparser_internal {
00026 class ms_umod_xmlloader;
00027 }
00028
00029 namespace matrix_science {
00030
00031 class ms_xml_schema;
00032
00038
00039 class MS_MASCOTRESFILE_API ms_umod_xref: public ms_xml_IValidatable
00040 {
00041 friend class msparser_internal::ms_umod_xmlloader;
00042
00043 public:
00045 ms_umod_xref();
00046
00048 ms_umod_xref(const ms_umod_xref& src);
00049
00051 virtual ~ms_umod_xref();
00052
00054 void defaultValues();
00055
00057 void copyFrom(const ms_umod_xref* right);
00058
00059 #ifndef SWIG
00060
00061 ms_umod_xref& operator=(const ms_umod_xref& right);
00062 #endif
00063
00064 virtual std::string getSchemaType() const;
00065
00067 virtual std::string validateShallow(const ms_xml_schema *pSchemaFileObj) const;
00068
00070 virtual std::string validateDeep(const ms_xml_schema *pSchemaFileObj) const;
00071
00072
00074 bool haveText() const;
00075
00077 std::string getText() const;
00078
00080 void setText(const char* value);
00081
00083 void dropText();
00084
00086 std::string getTextSchemaType() const;
00087
00088
00090 bool haveSource() const;
00091
00093 std::string getSource() const;
00094
00096 void setSource(const char* value);
00097
00099 void dropSource();
00100
00102 std::string getSourceSchemaType() const;
00103
00104
00106 bool haveUrl() const;
00107
00109 std::string getUrl() const;
00110
00112 void setUrl(const char* value);
00113
00115 void dropUrl();
00116
00118 std::string getUrlSchemaType() const;
00119
00121 bool isSameAs(const ms_umod_xref& right) const;
00122
00123 private:
00124
00125 std::string _text;
00126 bool _text_set;
00127
00128 std::string _source;
00129 bool _source_set;
00130
00131 std::string _url;
00132 bool _url_set;
00133 };
00134
00136
00137 }
00138
00139 #endif // MS_UMOD_XREF_HPP
00140
00141