print "about to re-load package" p = Package(package_filename) # ensure that backend has changed assert p._backend is not bw() print "package loaded" #trace_wrap_all (p._backend) l = list (p.own.annotations) #print [a._id for a in p.own.annotations] a1 = p.get_element ("a1") a2 = p.get_element ("a2") print id(a1) == id(p.get_element ("a1")) print a1.content_data print p.meta[dc_creator] print p.get_meta(advene_ns % "meta/main_media") print a1.begin, a1.duration, a1.end print a1.meta[dc_creator] print a2.meta[advene_ns % "meta/created_from"] a2.del_meta(advene_ns % "meta/foo") print list(a2.iter_meta()) p.create_resource("eraseme", "text/plain").delete() print list(p.own.resources) fname=join(base, 'test1.bxp') print "Saving as ", fname if exists (fname): unlink (fname) p.save_as(fname) l = None; a1 = None; a2 = None; p.close(); p = None
frame_of_reference = FOREF_PREFIX + "ms;o=0" # This demonstrates how to create and save a package # create a package with a relative URL # NB: this is a *URL*, not a filename (that could be http://...) # so use "/" as a separator, even in MS Windows p = Package("examples/example1.bxp", create=True) # add a resource to that package, # the content is given by a URL, relative to the package's URL r = p.create_resource("r", "text/x-python", url="example1.py") # we save the current state of our package to another file # NB: this is a filename, the separator is OS dependant p.save_as("examples/example1-sav.bxp", erase=True) # we now add a media m = p.create_media("m", "dvd://", frame_of_reference) p.save() # we now save under a new name, and work on the new file p.save_as("examples/example1-new.bxp", erase=True, change_url=True) a = p.create_annotation("a", m, 0, 60, "text/plain") p.save() # Don't forget to close your package once you are done p.close() # We now load an existing package