Show the structure of an object format list with the optional mediaType information for V2.
Note: This code uses a current beta branch of the version 2.0 d1_common_python source located at https://repository.dataone.org/software/cicore/branches/d1_common_python_v2_vieglais
In [15]:
from d1_common.types import dataoneTypes
object_format_list = dataoneTypes.objectFormatList(start=0)
object_format = dataoneTypes.objectFormat()
object_format.formatId = "eml://ecoinformatics.org/eml-2.0.0"
object_format.formatName = "Ecological Metadata Language, version 2.0.0"
object_format.formatType = "METADATA"
object_format.mediaType = dataoneTypes.mediaType(name='text/xml')
object_format.extension = "xml"
object_format_list.append(object_format)
#
# Note the following object format does not exist in DataONE, it is used as an example
# of a complete media type
#
object_format = dataoneTypes.objectFormat()
object_format.formatId = "video/H264"
object_format.formatName = "H264 encoded video"
object_format.formatType = "DATA"
object_format.mediaType= dataoneTypes.mediaType(name="video/H264")
object_format.mediaType.property_.append( dataoneTypes.MediaTypeProperty("H44I", name="profile-level-id") )
object_format.mediaType.property_.append( dataoneTypes.MediaTypeProperty("6F", name="max-recv-level") )
object_format.mediaType.property_.append( dataoneTypes.MediaTypeProperty("255", name="sar-supported") )
object_format.extension = "avc"
object_format_list.append(object_format)
object_format_list.count = len(object_format_list.objectFormat)
object_format_list.total = len(object_format_list.objectFormat)
dom = object_format_list.toDOM(None)
xml = dom.toprettyxml(indent=" ")
print xml
In [ ]: