ARC2_JSONLDSerializer::getTerm PHP Метод

getTerm() публичный Метод

*
public getTerm ( $v, $term = 's' )
    function getTerm($v, $term = 's')
    {
        if (!is_array($v)) {
            if (preg_match('/^\\_\\:/', $v)) {
                return $term == 'o' ? $this->getTerm(array('value' => $v, 'type' => 'bnode'), 'o') : '"' . $v . '"';
            }
            return $term == 'o' ? $this->getTerm(array('value' => $v, 'type' => 'uri'), 'o') : '"' . $v . '"';
        }
        if (!isset($v['type']) || $v['type'] != 'literal') {
            if ($term != 'o') {
                return $this->getTerm($v['value'], $term);
            }
            return '{ "@id" : "' . $this->jsonEscape($v['value']) . '" }';
        }
        /* literal */
        $r = '{ "@value" : "' . $this->jsonEscape($v['value']) . '"';
        $suffix = isset($v['datatype']) ? ', "@type" : "' . $v['datatype'] . '"' : '';
        $suffix = isset($v['lang']) ? ', "@language" : "' . $v['lang'] . '"' : $suffix;
        $r .= $suffix . ' }';
        return $r;
    }