You are here

class EasyRdf_Serialiser in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser.php \EasyRdf_Serialiser

Parent class for the EasyRdf serialiser

@package EasyRdf @copyright Copyright (c) 2009-2013 Nicholas J Humfrey @license http://www.opensource.org/licenses/bsd-license.php

Hierarchy

Expanded class hierarchy of EasyRdf_Serialiser

File

vendor/easyrdf/easyrdf/lib/EasyRdf/Serialiser.php, line 45

View source
class EasyRdf_Serialiser {
  protected $prefixes = array();
  public function __construct() {
  }

  /**
   * Keep track of the prefixes used while serialising
   * @ignore
   */
  protected function addPrefix($qname) {
    list($prefix) = explode(':', $qname);
    $this->prefixes[$prefix] = true;
  }

  /**
   * Check and cleanup parameters passed to serialise() method
   * @ignore
   */
  protected function checkSerialiseParams(&$graph, &$format) {
    if (is_null($graph) or !is_object($graph) or !$graph instanceof EasyRdf_Graph) {
      throw new InvalidArgumentException("\$graph should be an EasyRdf_Graph object and cannot be null");
    }
    if (is_null($format) or $format == '') {
      throw new InvalidArgumentException("\$format cannot be null or empty");
    }
    elseif (is_object($format) and $format instanceof EasyRdf_Format) {
      $format = $format
        ->getName();
    }
    elseif (!is_string($format)) {
      throw new InvalidArgumentException("\$format should be a string or an EasyRdf_Format object");
    }
  }

  /**
   * Protected method to get the number of reverse properties for a resource
   * If a resource only has a single property, the number of values for that
   * property is returned instead.
   * @ignore
   */
  protected function reversePropertyCount($resource) {
    $properties = $resource
      ->reversePropertyUris();
    $count = count($properties);
    if ($count == 1) {
      $property = $properties[0];
      return $resource
        ->countValues("^<{$property}>");
    }
    else {
      return $count;
    }
  }

  /**
   * Sub-classes must follow this protocol
   * @ignore
   */
  public function serialise($graph, $format, array $options = array()) {
    throw new EasyRdf_Exception("This method should be overridden by sub-classes.");
  }

}

Members

Namesort descending Modifiers Type Description Overrides
EasyRdf_Serialiser::$prefixes protected property
EasyRdf_Serialiser::addPrefix protected function Keep track of the prefixes used while serialising @ignore
EasyRdf_Serialiser::checkSerialiseParams protected function Check and cleanup parameters passed to serialise() method @ignore
EasyRdf_Serialiser::reversePropertyCount protected function Protected method to get the number of reverse properties for a resource If a resource only has a single property, the number of values for that property is returned instead. @ignore
EasyRdf_Serialiser::serialise public function Sub-classes must follow this protocol @ignore 6
EasyRdf_Serialiser::__construct public function 4