$xmlDoc = new xmddoc(explode("\n", $mdStore->mds_get($eid = EID_TYPE . '.1003'))); if ($xmlDoc->error) { give_up($xmlDoc->error); } $map_lang = 'string/@language'; $dcmap_e_kwplace = 'metadata/lom/general'; $dcmap_e_kwelem = 'keyword'; $dcmap_e_keyword = $dcmap_e_kwplace . '/' . $dcmap_e_kwelem; $mda = $mdObj->mdo_dcmap_v['Description'] . '=Nouvelle description' . "\n" . $mdObj->mdo_dcmap_e['Coverage'] . "~" . "\n" . $dcmap_e_kwplace . '!' . $dcmap_e_kwelem . "\n" . $dcmap_e_keyword . "[-1]!string=afrique" . "\n" . $dcmap_e_keyword . "[-1]/" . $map_lang . "=en" . "\n" . $mdObj->mdo_dcmap_e['Title'] . ',' . $mdObj->mdo_dcmap_e['Description'] . ',' . $dcmap_e_keyword . ";" . $map_lang . "=fr" . ""; // update metadata of 'Document.1003' - see md_funcs // note we don't go far with IEEE independence... $mdt = $mdStore->mds_update_xml_and_mdt($mdObj, $xmlDoc, $mda, $eid, $trace); echo htmlspecialchars($trace), '<br><br>'; // The simplest API calls: store and fetch DC metadata element values: $mdObj = new mdobject($_course, '1003'); $mdStore->mds_put_dc_elements($mdObj, array('Coverage' => 'broad...', 'Type' => 'aggressive text')); // Coverage won't work, because that element has been removed above... $dcelem = $mdStore->mds_get_dc_elements($mdObj); foreach (array('Identifier', 'Title', 'Language', 'Description', 'Coverage', 'Type', 'Date', 'Creator', 'Format', 'Rights') as $dce) { echo $dce, '= ', htmlspecialchars($dcelem[$dce]), '<br>'; } echo '<br>'; $mdObj = new mdobject($_course, '1002'); $mdStore->mds_put_dc_elements($mdObj, array('Coverage' => 'broad...')); $dcelem = $mdStore->mds_get_dc_elements($mdObj); foreach (array('Identifier', 'Title', 'Language', 'Description', 'Coverage', 'Type', 'Date', 'Creator', 'Format', 'Rights') as $dce) { echo $dce, '= ', htmlspecialchars($dcelem[$dce]), '<br>'; } echo '<br>'; $mdStore->mds_append(EID_TYPE . '.1001', ' search words'); $mdStore->mds_append(EID_TYPE . '.1001', ' more findable terms');
<?php /** * Test file for metadata * @package chamilo.metadata */ /** * Init */ require_once api_get_path(SYS_CODE_PATH) . 'metadata/md_funcs.php'; $mdStore = new mdstore(TRUE); require_once api_get_path(LIBRARY_PATH) . 'xmd.lib.php'; require_once api_get_path(LIBRARY_PATH) . 'xht.lib.php'; require_once api_get_path(SYS_CODE_PATH) . 'metadata/md_document.php'; $mdObj = new mdobject($_course, $docId); // e.g. '12' // Fetch example: if (is_array($dcelems = $mdStore->mds_get_dc_elements($mdObj))) { echo '<div>', htmlspecialchars($dcelems['Identifier']), ': ', htmlspecialchars($dcelems['Description']), '</div>'; } // Store example: $langMdCopyright = 'Provided the source is acknowledged'; $mdStore->mds_put_dc_elements($mdObj, array('Description' => time()));