Exemplo n.º 1
0
    def getXmlDoc(self, indent=0):
        """Return the not-METS XML document (in string format) for this experiment."""

        from au.edu.versi.util.tools import StringUtil
        import time
        experimentXML = StringUtil.getIndentedString('<experiment>\n',
                indent)
        experimentXML += StringUtil.getIndentedString('<title>'
                + self.name + '</title>\n', indent + 2)
        experimentXML += StringUtil.getIndentedString('<createdate>'
                + time.strftime('%Y-%m-%dT%H:%M:%S+10:00',
                time.localtime(os.path.getctime(self.directory)))
                + '</createdate>\n', indent + 2)
        experimentXML += StringUtil.getIndentedString('<lastmoddate>'
                + time.strftime('%Y-%m-%dT%H:%M:%S+10:00',
                time.localtime(os.path.getmtime(self.directory)))
                + '</lastmoddate>\n', indent + 2)
        experimentXML += StringUtil.getIndentedString('<abstract>'
                + self.unknown + '</abstract>\n', indent + 2)
        experimentXML += StringUtil.getIndentedString('<organization>'
                + self.unknown + '</organization>\n', indent + 2)
        experimentXML += StringUtil.getIndentedString('<creator>'
                + globals()['__saxDataParserName'] + '</creator>\n',
                indent + 2)
        experimentXML += StringUtil.getIndentedString('<author>'
                + self.name + '</author>\n', indent + 2)

        for dataset in self.datasetList:
            experimentXML += dataset.getXmlDoc(indent + 2)

        experimentXML += StringUtil.getIndentedString('</experiment>\n'
                , indent)
        return experimentXML
Exemplo n.º 2
0
    def getXmlDoc(self, indent=0):
        """Return the not-METS XML document (in string format) for this dataset."""

        from au.edu.versi.util.tools import StringUtil
        datasetXML = StringUtil.getIndentedString('<dataset>\n', indent)
        datasetXML += StringUtil.getIndentedString('<description>'
                + self.name + '</description>\n', indent + 2)
        datasetXML += StringUtil.getIndentedString('<metadata schema="'
                + Experiment.saxDatasetSchemaNSUri + '">\n', indent + 2)

        datasetXML += \
            StringUtil.getIndentedString('<trd:saxsAutoProcessingResults xmlns:trd="'
                 + Experiment.saxDatasetSchemaNSUri + '">\n', indent
                + 4)

        datasetXML += StringUtil.getIndentedString('<trd:frqimn>'
                + self.metadataDict['FRQIMN'] + '</trd:frqimn>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frxcen>'
                + self.metadataDict['FRXCEN'] + '</trd:frxcen>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frleng>'
                + self.metadataDict['FRLENG'] + '</trd:frleng>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frwlen>'
                + self.metadataDict['FRWLEN'] + '</trd:frwlen>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frqimx>'
                + self.metadataDict['FRQIMX'] + '</trd:frqimx>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frtype>'
                + self.metadataDict['FRTYPE'] + '</trd:frtype>\n',
                indent + 6)
        datasetXML += StringUtil.getIndentedString('<trd:frycen>'
                + self.metadataDict['FRYCEN'] + '</trd:frycen>\n',
                indent + 6)

        datasetXML += \
            StringUtil.getIndentedString('</trd:saxsAutoProcessingResults>\n'
                , indent + 4)
        datasetXML += StringUtil.getIndentedString('</metadata>\n',
                indent + 2)

        for k in self.imageFilesMetadataDict.keys():
            datasetXML += StringUtil.getIndentedString('<file>\n',
                    indent + 2)
            datasetXML += StringUtil.getIndentedString('<name>' + k
                    + '</name>\n', indent + 4)

            datasetXML += StringUtil.getIndentedString('<size>'
                    + str(self.imageFilesMetadataDict[k]['Size'])
                    + '</size>\n', indent + 4)
            datasetXML += \
                StringUtil.getIndentedString('<md5>unknown</md5>\n',
                    indent + 4)

            # TODO: what should i use for this field?
            datasetXML += \
                StringUtil.getIndentedString('<path>' \
                + self.imageFilesMetadataDict[k]['Path'] \
                + '/' + k + '</path>\n',
                    indent + 4)

            datasetXML += \
                StringUtil.getIndentedString('<metadata schema="'
                    + Experiment.saxDatafileSchemaNSUri + '">\n',
                    indent + 4)
            datasetXML += \
                StringUtil.getIndentedString('<trd:datafile xmlns:trd="'
                     + Experiment.saxDatafileSchemaNSUri + '">\n',
                    indent + 6)

            datasetXML += \
                StringUtil.getIndentedString('<trd:countingSecs>'
                    + self.imageFilesMetadataDict[k]['Counting_Secs']
                    + '</trd:countingSecs>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:io>'
                    + self.imageFilesMetadataDict[k]['Io']
                    + '</trd:io>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:ioBgnd>'
                    + self.imageFilesMetadataDict[k]['Io_bgnd']
                    + '</trd:ioBgnd>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:it>'
                    + self.imageFilesMetadataDict[k]['It']
                    + '</trd:it>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:itBgnd>'
                    + self.imageFilesMetadataDict[k]['It_bgnd']
                    + '</trd:itBgnd>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:ibs>'
                    + self.imageFilesMetadataDict[k]['Ibs']
                    + '</trd:ibs>\n', indent + 8)
            datasetXML += StringUtil.getIndentedString('<trd:ibsBgnd>'
                    + self.imageFilesMetadataDict[k]['Ibs_bgnd']
                    + '</trd:ibsBgnd>\n', indent + 8)
            datasetXML += \
                StringUtil.getIndentedString('<trd:timeStampString>'
                    + self.imageFilesMetadataDict[k]['TimeStampString']
                    + '</trd:timeStampString>\n', indent + 8)
            datasetXML += \
                StringUtil.getIndentedString('<trd:positionerString>'
                    + self.imageFilesMetadataDict[k]['Positioner_String'
                    ] + '</trd:positionerString>\n', indent + 8)
            datasetXML += \
                StringUtil.getIndentedString('<trd:positionerValues>'
                    + self.imageFilesMetadataDict[k]['Positioner_Values'
                    ] + '</trd:positionerValues>\n', indent + 8)

            datasetXML += \
                StringUtil.getIndentedString('</trd:datafile>\n',
                    indent + 6)
            datasetXML += StringUtil.getIndentedString('</metadata>\n',
                    indent + 4)

            datasetXML += StringUtil.getIndentedString('</file>\n',
                    indent + 2)

        datasetXML += StringUtil.getIndentedString('</dataset>\n',
                indent)
        return datasetXML