53 lines
1.3 KiB
PHP
53 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Psr\Link;
|
|
|
|
/**
|
|
* A readable link object.
|
|
*/
|
|
interface LinkInterface
|
|
{
|
|
/**
|
|
* Returns the target of the link.
|
|
*
|
|
* The target link must be one of:
|
|
* - An absolute URI, as defined by RFC 5988.
|
|
* - A relative URI, as defined by RFC 5988. The base of the relative link
|
|
* is assumed to be known based on context by the client.
|
|
* - A URI template as defined by RFC 6570.
|
|
*
|
|
* If a URI template is returned, isTemplated() MUST return True.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getHref();
|
|
|
|
/**
|
|
* Returns whether or not this is a templated link.
|
|
*
|
|
* @return bool
|
|
* True if this link object is templated, False otherwise.
|
|
*/
|
|
public function isTemplated();
|
|
|
|
/**
|
|
* Returns the relationship type(s) of the link.
|
|
*
|
|
* This method returns 0 or more relationship types for a link, expressed
|
|
* as an array of strings.
|
|
*
|
|
* @return string[]
|
|
*/
|
|
public function getRels();
|
|
|
|
/**
|
|
* Returns a list of attributes that describe the target URI.
|
|
*
|
|
* @return array
|
|
* A key-value list of attributes, where the key is a string and the value
|
|
* is either a PHP primitive or an array of PHP strings. If no values are
|
|
* found an empty array MUST be returned.
|
|
*/
|
|
public function getAttributes();
|
|
}
|