---
name: "RDF::Redland::Statement"
section: "3pm"
platform: "linux"
package: "librdf-perl"
version: "1.0.17.1+dfsg-6+b6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/RDF::Redland::Statement"
---

# RDF::Redland::Statement(3pm)

Redland RDF Statement Class

## NAME

RDF::Redland::Statement - Redland RDF Statement Class

## SYNOPSIS

```
  use RDF::Redland;
  my $statement1=new RDF::Redland::Statement($statement);
  my $statement2=new RDF::Redland::Statement($subject,$predicate,$object);
  ...
  if($statement->subject->equals($node)) {
    ...
  }
```

## DESCRIPTION

Manipulate RDF statements which comprise three RDF::Redland::Node objects. Also used for *partial* statements which can have empty parts and are used for matching statements in statement queries of the model - see the RDF::Redland::Model.

## CONSTRUCTORS

- new NODE NODE NODE\|STATEMENT

  Create a new statement from nodes or copy an existing statement.

  If three *NODE*s are given, make a new statement from them. Each Node can be a Redland::RDF:Node, a Redland::RDF::URI, a perl URI or a string literal. Otherwise *STATEMENT* must be an existing statement to copy.

- clone

  Copy a RDF::Redland::Statement.

## METHODS

- subject \[SUBJECT\]

  Get/set the statement subject.  When a RDF::Redland::Node *SUBJECT* is given, sets the subject of the statement, otherwise returns a reference to the statement RDF::Redland::Node subject.

- predicate \[PREDICATE\]

  Get/set the statement predicate.  When RDF::Redland::Node *PREDICATE* is given, sets the predicate of the statement, otherwise returns a reference to the statement RDF::Redland::Node predicate.

- object \[OBJECT\]

  Get/set the statement object.  When RDF::Redland::Node *OBJECT* is given, sets the object of the statement, otherwise returns a reference to the statement RDF::Redland::Node object.

- as\_string

  Return the statement formatted as a string (UTF-8 encoded).

- equals STATEMENT

  Return non zero if this statement is equal to STATEMENT

## OLD METHODS

- new\_from\_nodes SUBJECT PREDICATE OBJECT

  Create a new RDF::Redland::Statement with the given RDF::Redland::Node objects as parts (or undef when empty for a *partial* statement).  Use instead:

  ```
    $a=new RDF::Redland::Statement($subject, $predicate, $object);
  ```

- new\_from\_statement STATEMENT

  Create a new RDF::Redland::Statement object from RDF::Redland::Statement *STATEMENT* (copy constructor). Use instead:

  ```
    $s=$old_statement->clone;
  ```

## SEE ALSO

RDF::Redland::Node

## AUTHOR

Dave Beckett - http://www.dajobe.org/
