Semantic MediaWiki and related extensions
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
SMWDIContainer Class Reference
Collaboration diagram for SMWDIContainer:
Collaboration graph
[legend]

Public Member Functions

 __construct (SMWContainerSemanticData $semanticData)
 
 getDIType ()
 
 getSemanticData ()
 
 getSortKey ()
 
 setSortKey ($sortKey)
 
 getSerialization ()
 
 getHash ()
 
 equals (SMWDataItem $di)
 
- Public Member Functions inherited from SMWDataItem
 getDIType ()
 
 getSortKey ()
 
 equals (SMWDataItem $di)
 
 getSortKeyDataItem ()
 
 getSerialization ()
 
 getHash ()
 
 __toString ()
 
 setOption ($key, $value)
 
 getOption ($key)
 

Static Public Member Functions

static doUnserialize ($serialization)
 
- Static Public Member Functions inherited from SMWDataItem
static newFromSerialization ($diType, $serialization)
 
static getDataItemClassNameForId ($diType)
 

Protected Attributes

 $m_semanticData
 

Additional Inherited Members

- Public Attributes inherited from SMWDataItem
const TYPE_NOTYPE = 0
 Data item ID that can be used to indicate that no data item class is appropriate. More...
 
const TYPE_NUMBER = 1
 Data item ID for SMWDINumber. More...
 
const TYPE_STRING = 2
 
const TYPE_BLOB = 2
 Data item ID for SMWDIBlob. More...
 
const TYPE_BOOLEAN = 4
 Data item ID for SMWDIBoolean. More...
 
const TYPE_URI = 5
 Data item ID for SMWDIUri. More...
 
const TYPE_TIME = 6
 Data item ID for SMWDITimePoint. More...
 
const TYPE_GEO = 7
 Data item ID for SMWDIGeoCoord. More...
 
const TYPE_CONTAINER = 8
 Data item ID for SMWDIContainer. More...
 
const TYPE_WIKIPAGE = 9
 Data item ID for SMWDIWikiPage. More...
 
const TYPE_CONCEPT = 10
 Data item ID for SMWDIConcept. More...
 
const TYPE_PROPERTY = 11
 Data item ID for SMWDIProperty. More...
 
const TYPE_ERROR = 12
 Data item ID for SMWDIError. More...
 

Detailed Description

This class implements container data items that can store SMWSemanticData objects. Containers are not dataitems in the proper sense: they do not represent a single, opaque value that can be assigned to a property. Rather, a container represents a "subobject" with a number of property-value assignments. When a container is stored, these individual data assignments are stored – the data managed by SMW never contains any "container", just individual property assignments for the subobject. Likewise, when a container is used in search, it is interpreted as a patterns of possible property assignments, and this pattern is searched for.

The data encapsulated in a container data item is essentially an SMWSemanticData object of class SMWContainerSemanticData. This class allows the subject to be kept anonymous if not known (if no context page is available for finding a suitable subobject name). See the repsective documentation for details.

Being a mere placeholder/template for other data, an SMWDIContainer is not immutable as the other basic data items. New property-value pairs can always be added to the internal SMWContainerSemanticData.

Since
1.6
Author
Markus Krötzsch

Constructor & Destructor Documentation

SMWDIContainer::__construct ( SMWContainerSemanticData  $semanticData)

Constructor. The given SMWContainerSemanticData object will be owned by the constructed object afterwards, and in particular will not allow further changes.

Parameters
$semanticDataSMWContainerSemanticData

Member Function Documentation

static SMWDIContainer::doUnserialize (   $serialization)
static

Create a data item from the provided serialization string and type ID.

Returns
SMWDIContainer

TODO May issue an E_NOTICE when problems occur; catch this

SMWDIContainer::equals ( SMWDataItem  $di)
SMWDIContainer::getDIType ( )
SMWDIContainer::getHash ( )

Get a hash string for this data item.

Returns
string
SMWDIContainer::getSemanticData ( )
SMWDIContainer::getSerialization ( )
SMWDIContainer::getSortKey ( )
SMWDIContainer::setSortKey (   $sortKey)
Since
2.5
Parameters
string$sortKey

Member Data Documentation

SMWDIContainer::$m_semanticData
protected

The documentation for this class was generated from the following file: