EasyRdf API Documentation
Class

EasyRdf_Resource

class EasyRdf_Resource

Class that represents an RDF resource

Methods

__construct($uri, $graph = null)

Constructor

EasyRdf_Graph getGraph()

Return the graph that this resource belongs to

string getUri()

Returns the URI for the resource.

bool isBNode()

Check to see if a resource is a blank node.

string getBNodeId()

Get the identifier for a blank node

string prefix()

Get a the prefix of the namespace that this resource is part of

string shorten()

Get a shortened version of the resources URI.

string localName()

Gets the local name of the URI of this resource

EasyRdf_ParsedUri parseUri()

Parse the URI of the resource and return as a ParsedUri object

string htmlLink(string $text = null, array $options = array())

Generates an HTML anchor tag, linking to this resource.

array toRdfPhp()

Returns the properties of the resource as an RDF/PHP associative array

string dumpValue(string $format = 'html', string $color = 'blue')

Return pretty-print view of the resource

string __toString()

Magic method to return URI of resource when casted to string

load(string $format = null)

Perform a load (download of remote URI) of the resource into the graph

null delete(string $property, object $value = null)

Delete a property (or optionally just a specific value)

integer add(mixed $property, mixed $value)

Add values to for a property of the resource

integer addLiteral(mixed $property, mixed $values, string $lang = null)

Add a literal value as a property of the resource

integer addResource(mixed $property, mixed $resource2)

Add a resource as a property of the resource

integer set(string $property, mixed $value)

Set value for a property

mixed get(string|array $property, string $type = null, string $lang = null)

Get a single value for a property

object getLiteral(string|array $property, string $lang = null)

Get a single literal value for a property of the resource

object getResource(string|array $property)

Get a single resource value for a property of the resource

array all(string $property, string $type = null, string $lang = null)

Get all values for a property

array allLiterals(string $property, string $lang = null)

Get all literal values for a property of the resource

array allResources(string $property)

Get all resources for a property of the resource

integer countValues(string $property, string $type = null, string $lang = null)

Count the number of values for a property of a resource

string join(string $property, string $glue = ' ', string $lang = null)

Concatenate all values for a property into a string.

array propertyUris()

Get a list of the full URIs for the properties of this resource.

array properties()

Get a list of all the shortened property names (qnames) for a resource.

array reversePropertyUris()

Get a list of the full URIs for the properties that point to this resource.

bool hasProperty(string $property, mixed $value = null)

Check to see if a property exists for this resource.

array types()

Get a list of types for a resource.

string type()

Get a single type for a resource.

EasyRdf_Resource typeAsResource()

Get a single type for a resource, as a resource.

EasyRdf_Resource[] typesAsResources()

Get a list of types for a resource, as Resources.

boolean isA(string $type)

Check if a resource is of the specified type

integer addType(string $types)

Add one or more rdf:type properties to the resource

integer setType(string $type)

Change the rdf:type property for the resource

EasyRdf_Resource primaryTopic()

Get the primary topic of this resource.

string label($lang = null)

Get a human readable label for this resource

string dump(string $format = 'html')

Return a human readable view of the resource and its properties

string __get(string $name)

Magic method to get a property of a resource

__set(string $name, string $value)

Magic method to set the value for a property of a resource

__isset(string $name)

Magic method to check if a property exists

__unset(string $name)

Magic method to delete a property of the resource

Details

at line 62
public __construct($uri, $graph = null)

Constructor

To create a new resource use the get method in a graph: $resource = $graph->resource('http://www.example.com/');

Parameters

$uri
$graph

at line 87
public EasyRdf_Graph getGraph()

Return the graph that this resource belongs to

Return Value

EasyRdf_Graph

at line 96
public string getUri()

Returns the URI for the resource.

Return Value

string URI of this resource.

at line 105
public bool isBNode()

Check to see if a resource is a blank node.

Return Value

bool True if this resource is a blank node.

at line 120
public string getBNodeId()

Get the identifier for a blank node

Returns null if the resource is not a blank node.

Return Value

string The identifer for the bnode

at line 136
public string prefix()

Get a the prefix of the namespace that this resource is part of

This method will return null the resource isn't part of any registered namespace.

Return Value

string The namespace prefix of the resource (e.g. foaf)

at line 148
public string shorten()

Get a shortened version of the resources URI.

This method will return the full URI if the resource isn't part of any registered namespace.

Return Value

string The shortened URI of this resource (e.g. foaf:name)

at line 160
public string localName()

Gets the local name of the URI of this resource

The local name is defined as the part of the URI string after the last occurrence of the '#', ':' or '/' character.

Return Value

string The local name

at line 171
public EasyRdf_ParsedUri parseUri()

Parse the URI of the resource and return as a ParsedUri object

Return Value

EasyRdf_ParsedUri

Generates an HTML anchor tag, linking to this resource.

If no text is given, then the URI also uses as the link text.

Parameters

string $text Text for the link.
array $options Associative array of attributes for the anchor tag

Return Value

string The HTML link string

at line 214
public array toRdfPhp()

Returns the properties of the resource as an RDF/PHP associative array

For example: array('type' => 'uri', 'value' => 'http://www.example.com/')

Return Value

array The properties of the resource

at line 229
public string dumpValue(string $format = 'html', string $color = 'blue')

Return pretty-print view of the resource

Parameters

string $format Either 'html' or 'text'
string $color The colour of the text

Return Value

string

at line 238
public string __toString()

Magic method to return URI of resource when casted to string

Return Value

string The URI of the resource

at line 264
public load(string $format = null)

Perform a load (download of remote URI) of the resource into the graph

The document type is optional but should be specified if it can't be guessed or got from the HTTP headers.

Parameters

string $format Optional format of the data (eg. rdfxml)

at line 276
public null delete(string $property, object $value = null)

Delete a property (or optionally just a specific value)

Parameters

string $property The name of the property (e.g. foaf:name)
object $value The value to delete (null to delete all values)

Return Value

null

at line 291
public integer add(mixed $property, mixed $value)

Add values to for a property of the resource

Example: $resource->add('prefix:property', 'value');

Parameters

mixed $property The property name
mixed $value The value for the property

Return Value

integer The number of values added (1 or 0)

at line 309
public integer addLiteral(mixed $property, mixed $values, string $lang = null)

Add a literal value as a property of the resource

The value can either be a single value or an array of values.

Example: $resource->add('dc:title', 'Title of Page');

Parameters

mixed $property The property name
mixed $values The value or values for the property
string $lang The language of the literal

Return Value

integer The number of values added

at line 324
public integer addResource(mixed $property, mixed $resource2)

Add a resource as a property of the resource

Example: $bob->add('foaf:knows', 'http://example.com/alice');

Parameters

mixed $property The property name
mixed $resource2 The resource to be the value of the property

Return Value

integer The number of values added (1 or 0)

at line 341
public integer set(string $property, mixed $value)

Set value for a property

The new value(s) will replace the existing values for the property. The name of the property should be a string. If you set a property to null or an empty array, then the property will be deleted.

Parameters

string $property The name of the property (e.g. foaf:name)
mixed $value The value for the property.

Return Value

integer The number of values added (1 or 0)

at line 362
public mixed get(string|array $property, string $type = null, string $lang = null)

Get a single value for a property

If multiple values are set for a property then the value returned may be arbitrary.

If $property is an array, then the first item in the array that matches a property that exists is returned.

This method will return null if the property does not exist.

Parameters

string|array $property The name of the property (e.g. foaf:name)
string $type The type of value to filter by (e.g. literal or resource)
string $lang The language to filter by (e.g. en)

Return Value

mixed A value associated with the property

at line 380
public object getLiteral(string|array $property, string $lang = null)

Get a single literal value for a property of the resource

If multiple values are set for a property then the value returned may be arbitrary.

This method will return null if there is not literal value for the property.

Parameters

string|array $property The name of the property (e.g. foaf:name)
string $lang The language to filter by (e.g. en)

Return Value

object EasyRdf_Literal Literal value associated with the property

at line 397
public object getResource(string|array $property)

Get a single resource value for a property of the resource

If multiple values are set for a property then the value returned may be arbitrary.

This method will return null if there is not resource for the property.

Parameters

string|array $property The name of the property (e.g. foaf:name)

Return Value

object EasyRdf_Resource Resource associated with the property

at line 412
public array all(string $property, string $type = null, string $lang = null)

Get all values for a property

This method will return an empty array if the property does not exist.

Parameters

string $property The name of the property (e.g. foaf:name)
string $type The type of value to filter by (e.g. literal)
string $lang The language to filter by (e.g. en)

Return Value

array An array of values associated with the property

at line 427
public array allLiterals(string $property, string $lang = null)

Get all literal values for a property of the resource

This method will return an empty array if the resource does not has any literal values for that property.

Parameters

string $property The name of the property (e.g. foaf:name)
string $lang The language to filter by (e.g. en)

Return Value

array An array of values associated with the property

at line 441
public array allResources(string $property)

Get all resources for a property of the resource

This method will return an empty array if the resource does not has any resources for that property.

Parameters

string $property The name of the property (e.g. foaf:name)

Return Value

array An array of values associated with the property

at line 456
public integer countValues(string $property, string $type = null, string $lang = null)

Count the number of values for a property of a resource

This method will return 0 if the property does not exist.

Parameters

string $property The name of the property (e.g. foaf:name)
string $type The type of value to filter by (e.g. literal)
string $lang The language to filter by (e.g. en)

Return Value

integer The number of values associated with the property

at line 472
public string join(string $property, string $glue = ' ', string $lang = null)

Concatenate all values for a property into a string.

The default is to join the values together with a space character. This method will return an empty string if the property does not exist.

Parameters

string $property The name of the property (e.g. foaf:name)
string $glue The string to glue the values together with.
string $lang The language to filter by (e.g. en)

Return Value

string Concatenation of all the values.

at line 484
public array propertyUris()

Get a list of the full URIs for the properties of this resource.

This method will return an empty array if the resource has no properties.

Return Value

array Array of full URIs

at line 496
public array properties()

Get a list of all the shortened property names (qnames) for a resource.

This method will return an empty array if the resource has no properties.

Return Value

array Array of shortened URIs

at line 506
public array reversePropertyUris()

Get a list of the full URIs for the properties that point to this resource.

Return Value

array Array of full property URIs

at line 522
public bool hasProperty(string $property, mixed $value = null)

Check to see if a property exists for this resource.

This method will return true if the property exists. If the value parameter is given, then it will only return true if the value also exists for that property.

Parameters

string $property The name of the property (e.g. foaf:name)
mixed $value An optional value of the property

Return Value

bool True if value the property exists.

at line 535
public array types()

Get a list of types for a resource.

The types will each be a shortened URI as a string. This method will return an empty array if the resource has no types.

Return Value

array All types assocated with the resource (e.g. foaf:Person)

at line 550
public string type()

Get a single type for a resource.

The type will be a shortened URI as a string. If the resource has multiple types then the type returned may be arbitrary. This method will return null if the resource has no type.

Return Value

string A type assocated with the resource (e.g. foaf:Person)

at line 565
public EasyRdf_Resource typeAsResource()

Get a single type for a resource, as a resource.

The type will be returned as an EasyRdf_Resource. If the resource has multiple types then the type returned may be arbitrary. This method will return null if the resource has no type.

Return Value

EasyRdf_Resource A type assocated with the resource.

at line 577
public EasyRdf_Resource[] typesAsResources()

Get a list of types for a resource, as Resources.

Return Value

EasyRdf_Resource[]

Exceptions

EasyRdf_Exception

at line 588
public boolean isA(string $type)

Check if a resource is of the specified type

Parameters

string $type The type to check (e.g. foaf:Person)

Return Value

boolean True if resource is of specified type.

at line 599
public integer addType(string $types)

Add one or more rdf:type properties to the resource

Parameters

string $types One or more types to add (e.g. foaf:Person)

Return Value

integer The number of types added

at line 612
public integer setType(string $type)

Change the rdf:type property for the resource

Note that the PHP class of the resource will not change.

Parameters

string $type The new type (e.g. foaf:Person)

Return Value

integer The number of types added

at line 624
public EasyRdf_Resource primaryTopic()

Get the primary topic of this resource.

Returns null if no primary topic is available.

Return Value

EasyRdf_Resource The primary topic of this resource.

at line 639
public string label($lang = null)

Get a human readable label for this resource

This method will check a number of properties for the resource (in the order: skos:prefLabel, rdfs:label, foaf:name, dc:title) and return an approriate first that is available. If no label is available then it will return null.

Parameters

$lang

Return Value

string A label for the resource.

at line 653
public string dump(string $format = 'html')

Return a human readable view of the resource and its properties

This method is intended to be a debugging aid and will print a resource and its properties.

Parameters

string $format Either 'html' or 'text'

Return Value

string

at line 670
public string __get(string $name)

Magic method to get a property of a resource

Note that only properties in the default namespace can be accessed in this way.

Example: $value = $resource->title;

Parameters

string $name The name of the property

Return Value

string A single value for the named property

See also

EasyRdf_Namespace::setDefault()

at line 686
public __set(string $name, string $value)

Magic method to set the value for a property of a resource

Note that only properties in the default namespace can be accessed in this way.

Example: $resource->title = 'Title';

Parameters

string $name The name of the property
string $value The value for the property

See also

EasyRdf_Namespace::setDefault()

at line 701
public __isset(string $name)

Magic method to check if a property exists

Note that only properties in the default namespace can be accessed in this way.

Example: if (isset($resource->title)) { blah(); }

Parameters

string $name The name of the property

See also

EasyRdf_Namespace::setDefault()

at line 716
public __unset(string $name)

Magic method to delete a property of the resource

Note that only properties in the default namespace can be accessed in this way.

Example: unset($resource->title);

Parameters

string $name The name of the property

See also

EasyRdf_Namespace::setDefault()