How would I add XMP metadata to a PDF using PDFNet?

Q: How would I add XMP metadata to a PDF using PDFNet?

// Using C# - Add XMP metadata to document catalog
StdFile xmp_file = new StdFile("myxmp.xml",
StdFile.OpenMode.e_read_mode);
FilterReader reader = new FilterReader(xmp_file);
Obj xmp_stm = pdfdoc.CreateIndirectStream(reader));
xmp_stm.Put("Subtype", Obj.CreateName("XML"));
xmp_stm.Put("Type", Obj.CreateName("Metadata"));
pdfdoc.GetRoot().Put("Metadata", xmp_stm);

You can use the same approach to add XMP streams to any other object in
PDF.
For example, the following code associates XMP metadata with an image
object:

// ...if element type is Element.Type.e_image...
Obj image_dict = element.GetXObject());
image_dict.Put("Metadata", xmp_stm);

or

Obj image_dict = image.GetSDFObj());
image_dict.Put("Metadata", xmp_stm);

...
A: You can embed PDF document XMP metadata as follows :