import(methods)
import(XML)
import(RCurl)
import(plyr)

exportClasses(
	SDMX,
	SDMXSchema,
	SDMXHeader,
  SDMXFooterMessage,
  SDMXFooter,
	SDMXType,
  SDMXStructureType,
	SDMXGenericData,
  SDMXCompactData,
  SDMXUtilityData,
  SDMXMessageGroup,
  SDMXConcept,
  SDMXConceptScheme,
  SDMXConcepts,
  SDMXCode,
  SDMXCodelist,
  SDMXCodelists,
  SDMXDimension,
  SDMXTimeDimension,
  SDMXPrimaryMeasure,
  SDMXAttribute,
  SDMXComponents,
  SDMXDataStructure,
  SDMXDataStructures,
  SDMXDataStructureDefinition
)

export(
	SDMX,
	SDMXSchema,
	SDMXHeader,
  SDMXFooterMessage,
  SDMXFooter,
	SDMXType,
  SDMXStructureType,
	SDMXGenericData,
  SDMXCompactData,
  SDMXUtilityData,
  SDMXMessageGroup,
  SDMXConcept,
  SDMXConceptScheme,
  SDMXConcepts,
  SDMXCode,
  SDMXCodelist,
  SDMXCodelists,
  SDMXDimension,
  SDMXTimeDimension,
  SDMXPrimaryMeasure,
  SDMXAttribute,
  SDMXComponents,
  SDMXDataStructure,
  SDMXDataStructures,
  SDMXDataStructureDefinition,
	version.SDMXSchema,
  namespaces.SDMX,
  findNamespace,
  type.SDMXType,
  type.SDMXStructureType,
  concepts.SDMXConcepts,
  conceptSchemes.SDMXConcepts,
  codelists.SDMXCodelists,
  dimensions.SDMXComponents,
  timedimension.SDMXComponents,
  primarymeasure.SDMXComponents,
  attributes.SDMXComponents,
  datastructures.SDMXDataStructures,
  class.SDMXMessageGroup,
	readSDMX
)

exportMethods(
	getSDMXType,
	getType,
  getStructureType,
	getSDMXSchema,
	getVersion,
	getSDMXHeader,
  getSDMXFooter,
  getNamespaces,
	as.XML
	
)

S3method(as.data.frame, SDMXGenericData)
S3method(as.data.frame, SDMXCompactData)
S3method(as.data.frame, SDMXUtilityData)
S3method(as.data.frame, SDMXMessageGroup)
S3method(as.data.frame, SDMXConcepts)
S3method(as.data.frame, SDMXCodelists)