As announced recently, I am about to do some changes to the internals of SMW.
The API of most SMW classes will be stable and almost all extension code is
expected to work without changes. This email is to inform developers of SMW-
based code about some changes that might be relevant.
In particular, this will affect the way in which multi-valued properties are
declared and in which values for such properties are represented internally.
Currently, properties with multiple values are described by SMWTypesValue
objects that hold the list of subtypes. The ID of these types is "__nry".
Values for such properties are then represented by SMWNAryValue objects, and
queries for such values use SMWValueList objects as descriptions.
Your extension could be affected by the changes if your code contains one of
the following strings: "__nry", "SMWNAryValue", "SMWValueList", "isUnary".
I can add compatibility code that allows code to use (some of) the old
functions to some extent. So please let me know if your code uses any of the
above, ideally with a pointer to the code, so that I can see what is needed
there. Most extensions will not be using any of the above.
P.S. As I mentioned, I also do significant changes to the storage code.
However, this affects neither the API nor the DB layout, so it should not
Markus Krötzsch <markus@...>
* Personal page: http://korrekt.org
* Semantic MediaWiki: http://semantic-mediawiki.org
* Semantic Web textbook: http://semantic-web-book.org