function rdf_mapping_save

Saves an RDF mapping to the database.

Takes a mapping structure returned by hook_rdf_mapping() implementations and creates or updates a record mapping for each encountered entity type/bundle pair. If available, adds default values for non-existent mapping keys.

Parameters

$mapping: The RDF mapping to save.

Return value

MergeQuery object that indicates the outcome of the operation.

Related topics

5 calls to rdf_mapping_save()
CrudTest::testCRUD in drupal/core/modules/rdf/lib/Drupal/rdf/Tests/CrudTest.php
Tests inserting, loading, updating, and deleting RDF mappings.
RdfaMarkupTest::testAttributesInMarkupFile in drupal/core/modules/rdf/lib/Drupal/rdf/Tests/RdfaMarkupTest.php
Tests if file fields in teasers have correct resources.
rdf_modules_installed in drupal/core/modules/rdf/rdf.module
Implements hook_modules_installed().
rdf_test_install in drupal/core/modules/rdf/tests/rdf_test.install
Implements hook_install().
standard_install in drupal/core/profiles/standard/standard.install
Implements hook_install().

File

drupal/core/modules/rdf/rdf.module, line 245
Enables semantically enriched output for Drupal sites in the form of RDFa.

Code

function rdf_mapping_save($mapping) {

  // In the case where a field has a mapping defined in the default entity
  // mapping, but a mapping is not specified in the bundle-specific mapping,
  // then use the default mapping for that field.
  $mapping['mapping'] += _rdf_get_default_mapping($mapping['type']);
  $status = db_merge('rdf_mapping')
    ->key(array(
    'type' => $mapping['type'],
    'bundle' => $mapping['bundle'],
  ))
    ->fields(array(
    'mapping' => serialize($mapping['mapping']),
  ))
    ->execute();
  entity_info_cache_clear();
  return $status;
}