;+
; FUNCTION:
;   iug_parsexml_mddb
;
; PURPOSE:
;   Parses XML file and extract information.
;
; KEYWORDS:
;   filename: filename of the XML file.
;   tag: tag name to extract information. 
;
; EXAMPLE:
;   iug_parsexml_mddb, filename='tmp.xml', tag='ResourceID'
;
; Written by Y.-M. Tanaka, Feb. 13, 2010 (ytanaka at nipr.ac.jp)
;-

function iug_parsexml_mddb, filename=filename, tag=tag

output=''

if ~keyword_set(filename) then begin
    print, 'No input argument: filename.'
    return, output
endif

;----- parse XML and get URL -----;
oDoc = OBJ_NEW('IDLffXMLDOMDocument', filename=filename, $
		schema_checking=0)  ; Create IDLffXMLLOM objects
; oDoc->Load, filename=filename   ; Load XML
; oPlugin = oDoc->GetFirstChild()
; oNodeList = oPlugin->GetElementsByTagname('dc:identifier')

oNodeList = oDoc->GetElementsByTagname(tag)
n = oNodeList->GetLength()

if n gt 0 then begin        
    output=strarr(n)
    for i=0, n-1 do begin
        oName = oNodeList->Item(i)

        if OBJ_VALID(oName) then begin
            oNameText = oName->GetFirstChild()
            output[i]=oNameText->GetNodeValue()
        endif
    endfor
endif

OBJ_DESTROY, oDoc

return, output

end