/** * Gather all available datatypes and label<=>id<=>datatype * associations. This method is called before most methods of this * factory. */ protected static function initDatatypes() { global $smwgContLang; if (is_array(self::$mTypeLabels)) { return; // init happened before } self::$mTypeLabels = $smwgContLang->getDatatypeLabels(); self::$mTypeAliases = $smwgContLang->getDatatypeAliases(); // Setup built-in datatypes. // NOTE: all ids must start with underscores, where two underscores indicate // truly internal (non user-acessible types). All others should also get a // translation in the language files, or they won't be available for users. self::$mTypeClasses = array('_txt' => 'SMWStringValue', '_cod' => 'SMWStringValue', '_str' => 'SMWStringValue', '_ema' => 'SMWURIValue', '_uri' => 'SMWURIValue', '_anu' => 'SMWURIValue', '_tel' => 'SMWURIValue', '_wpg' => 'SMWWikiPageValue', '_wpp' => 'SMWWikiPageValue', '_wpc' => 'SMWWikiPageValue', '_wpf' => 'SMWWikiPageValue', '_num' => 'SMWNumberValue', '_tem' => 'SMWTemperatureValue', '_dat' => 'SMWTimeValue', '_boo' => 'SMWBoolValue', '_rec' => 'SMWRecordValue', '_qty' => 'SMWQuantityValue', '__typ' => 'SMWTypesValue', '__pls' => 'SMWPropertyListValue', '__con' => 'SMWConceptValue', '__sps' => 'SMWStringValue', '__spu' => 'SMWURIValue', '__sup' => 'SMWWikiPageValue', '__suc' => 'SMWWikiPageValue', '__spf' => 'SMWWikiPageValue', '__sin' => 'SMWWikiPageValue', '__red' => 'SMWWikiPageValue', '__err' => 'SMWErrorValue', '__imp' => 'SMWImportValue', '__pro' => 'SMWPropertyValue', '__key' => 'SMWStringValue'); self::$mTypeDataItemIds = array('_txt' => SMWDataItem::TYPE_BLOB, '_cod' => SMWDataItem::TYPE_BLOB, '_str' => SMWDataItem::TYPE_STRING, '_ema' => SMWDataItem::TYPE_URI, '_uri' => SMWDataItem::TYPE_URI, '_anu' => SMWDataItem::TYPE_URI, '_tel' => SMWDataItem::TYPE_URI, '_wpg' => SMWDataItem::TYPE_WIKIPAGE, '_wpp' => SMWDataItem::TYPE_WIKIPAGE, '_wpc' => SMWDataItem::TYPE_WIKIPAGE, '_wpf' => SMWDataItem::TYPE_WIKIPAGE, '_num' => SMWDataItem::TYPE_NUMBER, '_tem' => SMWDataItem::TYPE_NUMBER, '_dat' => SMWDataItem::TYPE_TIME, '_boo' => SMWDataItem::TYPE_BOOLEAN, '_rec' => SMWDataItem::TYPE_WIKIPAGE, '_geo' => SMWDataItem::TYPE_GEO, '_gpo' => SMWDataItem::TYPE_BLOB, '_qty' => SMWDataItem::TYPE_NUMBER, '__typ' => SMWDataItem::TYPE_URI, '__pls' => SMWDataItem::TYPE_STRING, '__con' => SMWDataItem::TYPE_CONCEPT, '__sps' => SMWDataItem::TYPE_STRING, '__spu' => SMWDataItem::TYPE_URI, '__sup' => SMWDataItem::TYPE_WIKIPAGE, '__suc' => SMWDataItem::TYPE_WIKIPAGE, '__spf' => SMWDataItem::TYPE_WIKIPAGE, '__sin' => SMWDataItem::TYPE_WIKIPAGE, '__red' => SMWDataItem::TYPE_WIKIPAGE, '__err' => SMWDataItem::TYPE_ERROR, '__imp' => SMWDataItem::TYPE_STRING, '__pro' => SMWDataItem::TYPE_PROPERTY, '__key' => SMWDataItem::TYPE_STRING); wfRunHooks('smwInitDatatypes'); }