Last modified: 2009-12-30 14:06:14 UTC
When using my wiki I realizied that it could be useful to create something like a Propertybundle. For example when creating an article about a movie i'm using propertys for the music that is played there. But then only way now is to create one property with the hole information about the song.
It looks like this [[Song::Songname, Artist, Album]], my Idea is that there could be there properties, but for creating a relation beetween this three you have too create a page for each. so I thin it could be useful too create a relation between them in the side. So taht for example the Songname Property could be a String. And it would apear in Realtion to the Artist and the Album. And when querying the Song inside the movie it would be displayed with the Artist an the Album.
I'd like to see the possibility to have properties that allow key/value pairs, too. Otherwise I'll have to create about 500 properties which are infrequently used...
Or, another possibility: Allow to use properties without explicitly creating them first, like MediaWiki uses categories. Type doesn't matter, if it's being used as a number or string or whatever is being decided at the query stage. AFAIK it's possible to assign illegal values to properties that don't agree with its type right now, too, after all.
These are two rather different requests. The first is closely related to the extension "Semantic Internal Objects" which allows auxiliary objects to be used to bundle property-value pairs. It seems that this addresses this feature request.
The second request seems to be different. The situation there is that a wiki requires man properties but it is not desired that these are declared on individual. SMW already supports the use of undeclared properties, similar to undeclared categories in MediaWiki. The administrator can decide what datatype these properties should get (the default is Type:Page).
It is not really possible to magically decide the type of a property "at the query stage," I think. In particular, it is important to know the datatype in order to actually retrieve results (since data for different types is stored in different ways). Anyway, the above two features seem to address the two requests.