/** * Creates the descriptive metadata section of a mets document. * * @param id the id of this dmd element * @param modsType */ public void createDmdSec(ModsType modsType, String id) { this.dmdSec = this.mets.addNewDmdSec(); this.dmdSec.setID(id); // MODS Data MdWrap wrap = this.dmdSec.addNewMdWrap(); wrap.setMIMETYPE("text/xml"); wrap.setMDTYPE(MdWrap.MDTYPE.MODS); XmlData xml = wrap.addNewXmlData(); this.mods = modsType; this.modsDoc.setMods(this.mods); xml.set(this.modsDoc); wrap.setXmlData(xml); this.dmdSec.setMdWrap(wrap); }
/** * Creates the administrative metadata section of a mets document. * * @param id the id of this amdSec * @param owner the rights owner of the item * @param logo the logo of the organization * @param url the url of the organization * @param reference the items url */ public void createAmdSec(String id, String owner, String logo, String url, String reference) { this.amdSec = this.mets.addNewAmdSec(); this.amdSec.setID(id); // DVRights MdSecType rightsMD = this.amdSec.addNewRightsMD(); rightsMD.setID("rights" + id); MdWrap wrap = rightsMD.addNewMdWrap(); wrap.setMIMETYPE("text/xml"); wrap.setMDTYPE(MdWrap.MDTYPE.OTHER); wrap.setOTHERMDTYPE("DVRIGHTS"); XmlData xml = wrap.addNewXmlData(); XmlObject dvrights = XmlObject.Factory.newInstance(); XmlCursor cur = dvrights.newCursor(); cur.toNextToken(); cur.beginElement("rights", "http://dfg-viewer.de/"); cur.insertElementWithText("owner", "http://dfg-viewer.de/", owner); cur.insertElementWithText("ownerLogo", "http://dfg-viewer.de/", logo); cur.insertElementWithText("ownerSiteURL", "http://dfg-viewer.de/", url); cur.insertElementWithText("contact", "http://dfg-viewer.de/", "*****@*****.**"); cur.dispose(); xml.set(dvrights); wrap.setXmlData(xml); rightsMD.setMdWrap(wrap); this.amdSec.setRightsMDArray(0, rightsMD); // DVLinks MdSecType digiprovMD = this.amdSec.addNewDigiprovMD(); digiprovMD.setID("digiprov" + id); MdWrap dpWrap = digiprovMD.addNewMdWrap(); dpWrap.setMIMETYPE("text/xml"); dpWrap.setMDTYPE(MdWrap.MDTYPE.OTHER); dpWrap.setOTHERMDTYPE("DVLINKS"); XmlData dpXml = dpWrap.addNewXmlData(); XmlObject dvdigiprov = XmlObject.Factory.newInstance(); XmlCursor dpCur = dvdigiprov.newCursor(); dpCur.toNextToken(); dpCur.beginElement("links", "http://dfg-viewer.de/"); dpCur.insertElementWithText("reference", "http://dfg-viewer.de/", reference); dpCur.insertElementWithText( "presentation", "http://dfg-viewer.de/", "http://vm38.mpdl.mpg.de:8080/dlib-journals/"); dpCur.dispose(); dpXml.set(dvdigiprov); dpWrap.setXmlData(dpXml); digiprovMD.setMdWrap(dpWrap); this.amdSec.setDigiprovMDArray(0, digiprovMD); }