当前位置: 首页>>代码示例>>PHP>>正文


PHP EasyRdf_Graph::resources方法代码示例

本文整理汇总了PHP中EasyRdf_Graph::resources方法的典型用法代码示例。如果您正苦于以下问题:PHP EasyRdf_Graph::resources方法的具体用法?PHP EasyRdf_Graph::resources怎么用?PHP EasyRdf_Graph::resources使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在EasyRdf_Graph的用法示例。


在下文中一共展示了EasyRdf_Graph::resources方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: createModel

 /**
  * @author "Lionel Lecaque, <lionel@taotesting.com>"
  * @param string $namespace
  * @param string $data xml content
  */
 public function createModel($namespace, $data)
 {
     $modelId = $this->getModelId($namespace);
     if ($modelId === false) {
         common_Logger::d('modelId not found, need to add namespace ' . $namespace);
         $this->addNewModel($namespace);
         //TODO bad way, need to find better
         $modelId = $this->getModelId($namespace);
     }
     $modelDefinition = new EasyRdf_Graph($namespace);
     if (is_file($data)) {
         $modelDefinition->parseFile($data);
     } else {
         $modelDefinition->parse($data);
     }
     $graph = $modelDefinition->toRdfPhp();
     $resources = $modelDefinition->resources();
     $format = EasyRdf_Format::getFormat('php');
     $data = $modelDefinition->serialise($format);
     foreach ($data as $subjectUri => $propertiesValues) {
         foreach ($propertiesValues as $prop => $values) {
             foreach ($values as $k => $v) {
                 $this->addStatement($modelId, $subjectUri, $prop, $v['value'], isset($v['lang']) ? $v['lang'] : null);
             }
         }
     }
     return true;
 }
开发者ID:nagyist,项目名称:generis,代码行数:33,代码来源:class.ModelFactory.php

示例2: iterateGraph

  /**
   * Identifies all types and properties of the graph separately.
   */
  private function iterateGraph() {
    $resource_list = $this->graph->resources();

    foreach ($resource_list as $value) {
      if ($value->prefix() !== "schema") {
        continue;
      }
      if ($value->isA("rdf:Property") || $value->isA("rdfs:Property")) {
        $this->addProperties($value);
      }
      else {
        $this->addType($value);
      }
    }
  }
开发者ID:eloiv,项目名称:botafoc.cat,代码行数:18,代码来源:EasyRdfConverter.php

示例3: queryWorldCatFromOCLC

 public function queryWorldCatFromOCLC()
 {
     $oclc = (string) (int) $this->OCLC;
     $url = 'http://www.worldcat.org/oclc/' . $oclc;
     $rdf = new EasyRdf_Graph($url . '.rdf');
     $rdf->load();
     $resources = $rdf->resources();
     $book = $resources[$url];
     //Core info
     $this->Title = (string) $book->getLiteral('schema:name');
     $publisherData = $book->get('schema:publisher');
     if ($publisherData) {
         $this->Publisher = (string) $publisherData->get('schema:name');
     }
     //Publishing date
     $date = (string) $book->getLiteral('schema:datePublished');
     if (strlen($date) == 4) {
         $this->YYYY = $date;
     } else {
         echo '<div class="alert-box">Publishing date: ', $date, " / check the template, the code doesn't know how to parse this format and only made a guess. ", '<a href="" class="close">&times;</a></div>';
         $date = date_parse($date);
         $this->YYYY = $date['year'];
         $this->MM = $date['month'];
         $this->DD = $date['day'];
     }
     //Authors
     $this->Authors = [];
     //TODO: look type mapping
     $contributors = $book->allResources('schema:contributor');
     foreach ($contributors as $contributor) {
         $this->Authors[] = [(string) $contributor->get('schema:givenName'), (string) $contributor->get('schema:familyName')];
     }
     //Kludge for library:placeOfPublication
     //We have generally two links, one for the city, one for the country.
     //Only the city has a schema:name, the country is only a reference.
     $rdf_content = file_get_contents($url . '.rdf');
     if (preg_match_all('@<library:placeOfPublication rdf:resource="(.*)"/>@', $rdf_content, $matches)) {
         foreach ($matches[1] as $place) {
             if ($cityCandidate = (string) $resources[$place]->get('schema:name')) {
                 $this->Place = $cityCandidate;
                 break;
             }
         }
     }
 }
开发者ID:dereckson,项目名称:source-templates-generator,代码行数:45,代码来源:book.php

示例4: flatImport

 /**
  * Imports the rdf file into the selected class
  * 
  * @param string $file
  * @param core_kernel_classes_Class $class
  * @return common_report_Report
  */
 private function flatImport($file, core_kernel_classes_Class $class)
 {
     $report = common_report_Report::createSuccess(__('Data imported successfully'));
     $graph = new EasyRdf_Graph();
     $graph->parseFile($file);
     // keep type property
     $map = array(RDF_PROPERTY => RDF_PROPERTY);
     foreach ($graph->resources() as $resource) {
         $map[$resource->getUri()] = common_Utils::getNewUri();
     }
     $format = EasyRdf_Format::getFormat('php');
     $data = $graph->serialise($format);
     foreach ($data as $subjectUri => $propertiesValues) {
         $resource = new core_kernel_classes_Resource($map[$subjectUri]);
         $subreport = $this->importProperties($resource, $propertiesValues, $map, $class);
         $report->add($subreport);
     }
     return $report;
 }
开发者ID:nagyist,项目名称:tao-core,代码行数:26,代码来源:class.RdfImporter.php

示例5: testResources

 public function testResources()
 {
     $data = readFixture('foaf.json');
     $graph = new EasyRdf_Graph('http://example.com/joe/foaf.rdf', $data);
     $resources = $graph->resources();
     $this->assertTrue(is_array($resources));
     $this->assertType('EasyRdf_Resource', $resources['_:genid1']);
     $urls = array_keys($resources);
     sort($urls);
     $this->assertEquals(array('_:genid1', 'http://www.example.com/joe#me', 'http://www.example.com/joe/', 'http://www.example.com/joe/foaf.rdf', 'http://www.example.com/project', 'http://xmlns.com/foaf/0.1/Person', 'http://xmlns.com/foaf/0.1/PersonalProfileDocument', 'http://xmlns.com/foaf/0.1/Project'), $urls);
 }
开发者ID:portokallidis,项目名称:Metamorphosis-Meducator,代码行数:11,代码来源:GraphTest.php

示例6: uniqid

$uniqid = uniqid();
$suchbegriff = str_replace(" ", "+", $_GET["qname"]);
//$suchbegriff='123apfelkuchen';
$rdf = "";
if (isset($_GET["rdf"])) {
    $rdf = $_GET["rdf"];
}
$basedir = dirname(realpath(__FILE__));
$root = $basedir;
$ldfu = $root . '/ldfu/bin/ldfu.sh';
$n3_programm = $root . '/n3-files/chefkoch.n3';
$input = 'http://manke-hosting.de/wrapper/index.php/explore/' . $suchbegriff;
$output = $root . '/output/' . $suchbegriff . '.nt';
if (!file_exists($output)) {
    $command = 'sh ' . $ldfu . ' ' . '-i ' . $input . ' ' . '-p ' . $n3_programm . ' ' . '-o ' . $output;
    shell_exec($command);
}
$graph->parseFile($output);
//$graph ->parseFile('/Users/raphaelmanke/Downloads/linked-data-fu-0.9.9/streuselkuchen3.nt');
//$me = $foaf->primaryTopic();
//echo $graph->dump('html');
$resources = $graph->resources();
$namespace = new EasyRdf_Namespace();
$namespace->set('rezept', "http://manke-hosting.de/ns-syntax#");
$rezepte = $graph->resourcesMatching('rezept:RezeptName');
if ($rdf == "true") {
    header("Content-Type: text/turtle; charset=utf-8");
    echo $graph->serialise("turtle");
} else {
    include 'results/rezept.php';
}
开发者ID:RaphaelManke,项目名称:LOD-Seminar,代码行数:31,代码来源:results.php

示例7: testResources

 public function testResources()
 {
     $data = readFixture('foaf.json');
     $graph = new EasyRdf_Graph('http://example.com/joe/foaf.rdf', $data);
     $resources = $graph->resources();
     $this->assertStringEquals('http://www.example.com/joe#me', $resources['http://www.example.com/joe#me']);
     $this->assertStringEquals('_:eid1', $resources['_:eid1']);
     $this->assertStringEquals('http://www.example.com/joe/', $resources['http://www.example.com/joe/']);
     $this->assertStringEquals('http://www.example.com/joe/foaf.rdf', $resources['http://www.example.com/joe/foaf.rdf']);
     $this->assertStringEquals('http://www.example.com/project', $resources['http://www.example.com/project']);
 }
开发者ID:nhukhanhdl,项目名称:easyrdf,代码行数:11,代码来源:GraphTest.php

示例8: serialiseSubjects

 /**
  * @ignore
  */
 protected function serialiseSubjects(EasyRdf_Graph $graph, $filterType)
 {
     $turtle = '';
     foreach ($graph->resources() as $resource) {
         /** @var $resource EasyRdf_Resource */
         // If the resource has no properties - don't serialise it
         $properties = $resource->propertyUris();
         if (count($properties) == 0) {
             continue;
         }
         // Is this node of the right type?
         $thisType = $resource->isBNode() ? 'bnode' : 'uri';
         if ($thisType != $filterType) {
             continue;
         }
         if ($thisType == 'bnode') {
             $id = $resource->getBNodeId();
             if (isset($this->outputtedBnodes[$id])) {
                 // Already been serialised
                 continue;
             }
             $this->outputtedBnodes[$id] = true;
             $rpcount = $this->reversePropertyCount($resource);
             if ($rpcount == 0) {
                 $turtle .= '[]';
             } else {
                 $turtle .= $this->serialiseResource($resource);
             }
         } else {
             $turtle .= $this->serialiseResource($resource);
         }
         $turtle .= $this->serialiseProperties($resource);
         $turtle .= "\n";
     }
     return $turtle;
 }
开发者ID:aWEBoLabs,项目名称:taxi,代码行数:39,代码来源:Turtle.php


注:本文中的EasyRdf_Graph::resources方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。