-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi, 
I've thought about the derivation mechanisms in SMW. Currently when creating 
sublcasses using ie. owl:subClassOf or owl:subAttributeOf, I'm missing the 
functionality of high-level programming languages which are defining keywords, 
giving the developer finer control over the derivation process. I recommend to 
implement keyword-like semantic-relations to mimic this. 

As a practical example I want to define the Relations abstract, virtual, and 
override: 


Relation:abstract
- -----------------
The Relation or Attribute is not used in this class, but needs to get 
implemented/used in the child-classes. If not a warning message will appear in 
the fact-box asking the user to fill out this property. This is practically 
when a specific minimum-information is needed about a specific article-type. 

Ie. Article City might implement 
        [[abstract::Attribute:Numer_of_Inhabitants]]
        [[abstract::Inhabitants-Count]]
        [[abstract::Postal-Number]]
        [[abstract::Geographic-Coordinates]]
        ...
so all 
        [[owl:subClassOf::City]]
marked Articles need to define there Inhabitants-Count, Postal-Number, 
Geographic-Coordinates, etc. too. 


Relation:virtual
- ----------------
The Relation or Attribute is copied virtually 1:1 into the child-classes. 
Anyway, using the Attribute in the child will replace the value of the specific 
Relation or Attribute value from the parent. This is useful when wanting to 
spread a lot of same valued information to a broad range of articles, where 
only some Articles form a exception from the general rule. 

Ie. take the countries in the European Union, which are geograpically resisting 
all on the european continent. 
        [[[[virtual::located_in]]::european_continent]]
But then, keeping in terms of a example, Turkey joins the European Union. 
Because Turkey is resisting in both, the european and asian continent, the 
European Unions needs to extend:
        [[located_in::asian_continent]]
        [[[[virtual::located_in]]::european_continent]]
Now, only turkey needs the extension of
        [[located_in::asian_continent]]
to this rule. Anyway, in this example you could also state that the European 
Union resists in all those Locations its Members are resisting. But this will 
be more complex to implement--at least for the common user. 


Relation:override
- -----------------
For the relations stated till now it should be possible to supress the need to 
give a specific Relation or Attribute by overriding with a Null-Value in the 
kind of:
        [[Number_of_Inhabitants:=]]
or with the more consistent syntax
        [[override::Numer_of_Inhabitants]]


Because the correct rendering of the factbox needs implicit reasoning within 
SMW, and the syntax I've used for the Example of the virtual-Relation (which 
seems to be less important then the abstract-Attribute anyway), this seems a 
possible application to SMW 2.0, where there might be no real need for SMW 1.0. 
But this techniques might lead to reduced work for users wanting a 
standardisized minimum-set of knowledge for a specific Article type ie. for 
building automatically generated tables. 

lg, MovGP0

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)

iD8DBQFFdOpjddQj+s6ozAwRAjd5AJwKBmKtnnneH1OqsS8U+F7Gx5vSQgCdE7B6
F6riF6QcBCbcvz/JNOe7TF4=
=r9CC
-----END PGP SIGNATURE-----


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Semediawiki-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/semediawiki-user

Reply via email to