1 | <?php
|
---|
2 | require_once RDFAPI_INCLUDE_DIR . 'model/Resource.php';
|
---|
3 |
|
---|
4 | // ----------------------------------------------------------------------------------
|
---|
5 | // Class: BlankNode
|
---|
6 | // ----------------------------------------------------------------------------------
|
---|
7 |
|
---|
8 |
|
---|
9 | /**
|
---|
10 | * An RDF blank node.
|
---|
11 | * In model theory, blank nodes are considered to be drawn from some set of
|
---|
12 | * 'anonymous' entities which have no label but are unique to the graph.
|
---|
13 | * For serialization they are labeled with a URI or a _:X identifier.
|
---|
14 | *
|
---|
15 | *
|
---|
16 | * @version $Id: Blanknode.php 453 2007-06-20 21:19:09Z cweiske $
|
---|
17 | * @authors Chris Bizer <chris@bizer.de>,
|
---|
18 | * Radoslaw Oldakowski <radol@gmx.de>
|
---|
19 | *
|
---|
20 | * @package model
|
---|
21 | * @access public
|
---|
22 | *
|
---|
23 | */
|
---|
24 | class BlankNode extends Resource {
|
---|
25 |
|
---|
26 | /**
|
---|
27 | * Constructor
|
---|
28 | * You can supply a label or You supply a model and a unique ID is gernerated.
|
---|
29 | *
|
---|
30 | * @param mixed $namespace_or_uri_or_model
|
---|
31 | * @param string $localName
|
---|
32 | * @access public
|
---|
33 | */
|
---|
34 | function BlankNode($namespace_or_uri_or_model , $localName = NULL) {
|
---|
35 |
|
---|
36 | if (is_a($namespace_or_uri_or_model, 'Model')) {
|
---|
37 | // generate identifier
|
---|
38 | $id = $namespace_or_uri_or_model->getUniqueResourceURI(BNODE_PREFIX);
|
---|
39 |
|
---|
40 | $this->uri = $id;
|
---|
41 |
|
---|
42 | } else {
|
---|
43 | // set identifier
|
---|
44 | if ($localName == NULL) {
|
---|
45 | $this->uri = $namespace_or_uri_or_model;
|
---|
46 | } else {
|
---|
47 | $this->uri = $namespace_or_uri_or_model . $localName;
|
---|
48 | }
|
---|
49 | }
|
---|
50 | }
|
---|
51 |
|
---|
52 | /**
|
---|
53 | * Returns the ID of the blank node.
|
---|
54 | *
|
---|
55 | * @return string
|
---|
56 | * @access public
|
---|
57 | */
|
---|
58 | function getID() {
|
---|
59 | return $this->uri;
|
---|
60 | }
|
---|
61 |
|
---|
62 | /**
|
---|
63 | * Returns the ID of the blank node.
|
---|
64 | *
|
---|
65 | * @return string
|
---|
66 | * @access public
|
---|
67 | */
|
---|
68 | function getLabel() {
|
---|
69 | return $this->uri;
|
---|
70 | }
|
---|
71 |
|
---|
72 | /**
|
---|
73 | * Dumps bNode.
|
---|
74 | *
|
---|
75 | * @access public
|
---|
76 | * @return string
|
---|
77 | */
|
---|
78 | function toString() {
|
---|
79 |
|
---|
80 | return 'bNode("' . $this->uri . '")';
|
---|
81 | }
|
---|
82 |
|
---|
83 | /**
|
---|
84 | * Checks if two blank nodes are equal.
|
---|
85 | * Two blank nodes are equal, if they have the same temporary ID.
|
---|
86 | *
|
---|
87 | * @access public
|
---|
88 | * @param object resource $that
|
---|
89 | * @return boolean
|
---|
90 | */
|
---|
91 | function equals ($that) {
|
---|
92 |
|
---|
93 | if ($this == $that) {
|
---|
94 | return true;
|
---|
95 | }
|
---|
96 | if (($that == NULL) or !(is_a($that, 'BlankNode'))) {
|
---|
97 | return false;
|
---|
98 | }
|
---|
99 |
|
---|
100 | if ($this->getURI() == $that->getURI()) {
|
---|
101 | return true;
|
---|
102 | }
|
---|
103 |
|
---|
104 | return false;
|
---|
105 | }
|
---|
106 |
|
---|
107 |
|
---|
108 | /**
|
---|
109 | * Doing string magic in PHP5
|
---|
110 | * @return string String representation of this Blank Node
|
---|
111 | */
|
---|
112 | function __toString()
|
---|
113 | {
|
---|
114 | return $this->toString();
|
---|
115 | }
|
---|
116 |
|
---|
117 | } // end: BlankNode
|
---|
118 |
|
---|
119 |
|
---|
120 | ?> |
---|