The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SIOC -- The SIOC Core Ontology

VERSION

This documentation refers to SIOC version 1.0.0.

SYNOPSIS

This is an abstract class that isn't meant to be instantiated.

DESCRIPTION

The SIOC (Semantically-Interlinked Online Communities) Core Ontology provides the main concepts and properties required to describe information from online communities (e.g., message boards, wikis, weblogs, etc.) on the Semantic Web.

This distribution implements the various SIOC subclasses like SIOC::Site, SIOC::User, SIOC::Forum or SIOC::Post. It also contains an exporter class (SIOC::Exporter) that Perl-based community software can use to generate a semantic RDF representation of its data.

This class implements an abstract base class for the various SIOC subclasses like

  • SIOC::Site

  • SIOC::User

  • SIOC::Forum

(See the module's distribution for a complete list of modules.)

The SIOC::Exporter module implements a class that can be used to export SIOC information as RDF data.

CLASS ATTRIBUTES

id

An identifier of a SIOC concept instance. For example, a user ID. Must be unique for instances of each type of SIOC concept within the same site.

This attribute is required and must be set in the creation of a class instance with new().

name

The name of a SIOC instance, e.g. a username for a User, group name for a Usergroup, etc.

This attribute is required and must be set in the creation of a class instance with new().

url

The URL of this resource on the Web.

This attribute is required and must be set in the creation of a class instance with new().

description

A textual description of the resource.

comment

A comment on the SIOC instance.

topics

Topics the resource is connected to.

feeds

Feeds (e.g., RSS, Atom, etc.) pertaining to this resource (e.g., for a Forum, Site, User, etc.).

URIs of documents which contain this SIOC object.

SUBROUTINES/METHODS

new(\%args)

Creates a new class instance. Arguments are passed as a hash reference. See the ATTRIBUTES section above for required arguments.

id([$new_id])

Accessor for the attribute of the same name. Call without argument to read the current value of the attribute; sets attribute when called with new value as argument.

name([$new_name])

Accessor for the attribute of the same name. Call without argument to read the current value of the attribute; sets attribute when called with new value as argument.

url([$newurl])

Accessor for the attribute of the same name. Call without argument to read the current value of the attribute; sets attribute when called with new value as argument.

description([$newdescription])

Accessor for the attribute of the same name. Call without argument to read the current value of the attribute; sets attribute when called with new value as argument.

comment([$comment])

Accessor for the attribute of the same name. Call without argument to read the current value of the attribute; sets attribute when called with new value as argument.

add_topic($newtopic)

Adds a new value to the corresponding array attribute.

For $newtopic, a string is expected.

add_feed($newfeed)

Adds a new value to the corresponding array attribute.

For $newfeed, a string is expected.

add_link($newlink)

Adds a new value to the corresponding array attribute.

For $newlink, a string is expected.

type()

Returns a string representation of the SIOC subclass. For an instance of SIOC::Forum, it returns 'forum', for SIOC::Post 'post' and so on.

export_rdf()

Returns the object's information in RDF format.

fill_template

This method is called by export_rdf() to provide template variables needed by Template Toolkit. Use the set_template_vars method for each variable.

It always returns 1.

set_template_vars(\%vars)

Set template variables from the key/value pairs of the hash reference passed as an argument.

DIAGNOSTICS

For diagnostics information, see the SIOC base class.

CONFIGURATION AND ENVIRONMENT

A full explanation of any configuration system(s) used by the module, including the names and locations of any configuration files, and the meaning of any environment variables or properties that can be set. These descriptions must also include details of any configuration language used.

DEPENDENCIES

This module depends on the following modules:

  • Moose -- OOP framework

INCOMPATIBILITIES

There are no known incompatibilities.

BUGS AND LIMITATIONS

There are no known bugs in this module.

Please report problems via the bug tracking system on the perl-SIOC project website: http://developer.berlios.de/projects/perl-sioc/.

Patches are welcome.

AUTHOR

Jochen Lillich <geewiz@cpan.org>

LICENSE AND COPYRIGHT

Copyright (c) 2008, Jochen Lillich <geewiz@cpan.org> All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in the
      documentation and/or other materials provided with the distribution.

    * The names of its contributors may not be used to endorse or promote
      products derived from this software without specific prior written
      permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.