function rdfx_add_literal in RDF Extensions 7.2
Adds a literal object.
1 call to rdfx_add_literal()
- rdfx_add_statement in ./
rdfx.module - Adds an RDF statement between the entity and the property. These statements can have either resource or literal objects.
File
- ./
rdfx.module, line 275 - Extends the RDF API of Drupal core to support more RDF seralizations formats other RDF capabilities.
Code
function rdfx_add_literal(&$index, $uri, $property, EntityMetadataWrapper $wrapper, $name) {
$predicates = rdfx_get_predicates($wrapper, $name);
$object_value = $property
->value();
// Extracts datatype and callback from the RDF mapping.
$datatype = '';
if ($wrapper instanceof EntityDrupalWrapper) {
$entity = $wrapper
->value();
if (!empty($entity->rdf_mapping[$name]['datatype'])) {
$datatype = $entity->rdf_mapping[$name]['datatype'];
}
if (!empty($entity->rdf_mapping[$name]['callback']) && function_exists($entity->rdf_mapping[$name]['callback'])) {
$object_value = $entity->rdf_mapping[$name]['callback']($object_value);
}
}
foreach ($predicates as $predicate) {
$index[$uri][$predicate][] = array(
'value' => $object_value,
'type' => 'literal',
'datatype' => $datatype,
);
}
}