Semantic MediaWiki and related extensions
Todo List
Page coding
Member SMW::parseUserValue ( $value)
Accept/enforce property namespace.
Member SMW::getLongHTMLText ( $linker=null)
Rather parse input to obtain properly formatted HTML.
Member SMW::getCaptionFromDataItem (DITime $dataItem)
Internationalize the CE and BCE strings.
Member SMW::parse (array $functionParams)
$rawParams should be of IParameterFormatter QueryParameterFormatter class
Member SMW::recache ( $limit, $ignoreErrors=true)
Implement caching for SMW query pages
Member SMW::ping ( $endpointType=self::ENDP_QUERY)
SPARQL endpoints sometimes return errors if no (valid) query is posted. The current implementation tries to catch this, but this might not be entirely correct. Especially, the SPARQL 1.1 HTTP error codes for Update are not defined yet (April 15 2011).
Member SMW::initLookupCache ( $id, DIWikiPage $subject)
The management of this cache should be revisited.
Member SMW::getPropertyInterwiki (DIProperty $property)
This documentation is out of date. Right now, the special interwiki is used only for special properties without a label, i.e., which cannot be shown to a user. This allows us to filter such cases from all queries that retrieve lists of properties. It should be checked that this is really the only use that this has throughout the code.
Member SMW::interpretDescription (Description $description)
The case of nominal classes (top-level ValueDescription) still makes some assumptions about the table structure, especially about the name of the joinfield (o_id). Better extend compilePropertyValueDescription to deal with this case.
Member SMW::cleanUp ()
I might be better to keep the tables and possibly reuse them later on. Being temporary, the tables will vanish with the session anyway.
Member SMW::doUpdate (DIWikiPage $source, DIWikiPage $target, array $options)
Currently the sortkey is not moved with the remaining data. It is not possible to move it reliably in all cases: we cannot distinguish an unset sortkey from one that was set to the name of oldtitle. Maybe use update jobs right away?
Member SMW::moveSubobjects ( $source, $oldnamespace, $target, $newnamespace)
This method is neither efficient nor very convincing architecturally; it should be redesigned.
Member SMW::updateRedirects (DIWikiPage $source, DIWikiPage $target=null)
Clean up this code.
Member SMWDIError::doUnserialize ( $serialization)
Be more careful with unserialization. It can create E_NOTICEs.
Member SMWDITime::__construct ( $calendarmodel, $year, $month=false, $day=false, $hour=false, $minute=false, $second=false, $timezone=false)
Implement more validation here.
Member SMWDIUri::__construct ( $scheme, $hierpart, $query, $fragment, $strict=true)
Implement more validation here.
Member SMWDIUri::getURI ()
This should be changed to the spelling getUri().
Member SMWExportController::printPages ( $pages, $recursion=1, $revisiondate=false)
Consider dropping the $revisiondate filtering and all associated functionality. Is anybody using this?
Member SMWExporter::getOWLPropertyType (DIProperty $property)
An improved mechanism for selecting property types here is needed.
Member SMWExporter::makeExportDataForSubject (DIWikiPage $subject, $addStubData=false)
Take into account whether the wiki page belongs to a builtin property, and ensure URI alignment/type declaration in this case.
Class SMWNumberValue
Wiki-HTML-conversion for unit strings must be revisited, as the current solution might be unsafe.
Member SMWQuery::setOffset ( $offset)
The function should be extended to take into account whether or not we are in inline mode (not critical, since offsets are usually not applicable inline).
Class SMWRecordValue

Enforce limitation of maximal number of values.

Enforce uniqueness of properties in declaration.

Complete internationalisation.

Member SMWRecordValue::getPropertyDataItems ()
I18N for error message.
Member SMWRecordValue::setProperty (DIProperty $property)
This is not a full reset yet (the case that property is changed after a value was set does not occur in the normal flow of things, hence this has low priority).
Class SMWTimeValue

Theparsing process can encounter many kinds of well-defined problems but uses only one error message. More detailed reporting should be done.

Try to reuse more of MediaWiki's records, e.g. to obtain month names or to format dates. The problem is that MW is based on SIO timestamps that don't extend to very ancient or future dates, and that MW uses PHP functions that are bound to UNIX time.

Member SMWTimeValue::getWikiValue ()
The preferred caption may not be suitable as a wiki value (i.e. not parsable).
Member SRFArray::getResultText (SMWQueryResult $res, $outputmode)
Is there some other way to check the data value directly for being the page title or not? SMWs behavior could change on mainlabel handling...
Member SRFCalendar::getResultText (SMWQueryResult $res, $outputmode)
Split up megamoth
Class ST
: rename TaskDiff something similar
Member ST::getGroupAssignees (WikiPage &$article)
Create User object
Member ST::generateDiffBodyTxt (Title $title, IContextSource $context=null)
The first parameter should be a Context.
Member ST::mailNotification (array $assignees, $text, Title $title, User $user, $status)
This should probably be refactored
Member ST::testMailAssigneesUpdatedTaskTrueOnMinorEdit ()
: add more tests or asserts
Member ST::testMailNotification ()
: expand tests
Member ST::testValidCovers ()
: fix covers annotation and remove this.

About | General disclaimer | Privacy policy