From: S P. <in...@sk...> - 2007-09-11 04:22:29
|
Jeff Thompson wrote: > RDF has two ways to handle this. I don't think SMW supports either in a direct way. > 1. Blank nodes. Instead of a property having a value of type integer, it has a value > of a composite type that has an integer, date, etc. Since it is a "blank node" you > don't need to create a unique URI for it (or its own page in SMW). "Blank nodes" are > used in RDF all the time, for example as the nodes in a list, or to mention "the person > that has email address geo...@gm..." without needing to give that object its own > unique identifier, and also to make "composite types" like the date/integer you mention. > 2. Reification. If your statement is "San Francisco has population 739426", then you make > a separate object of type Statement where the subject is "San Francisco", the predicate is > "has population" and the object is "739426". Then you can extend this to say "this statement" > is true on the date 2005. (Since the Statement object is usually a blank node, it kind of > amounts to the same as option 1.) > > The closest thing I see in in SWM is Type:Geographic coordinate which is basically a blank node > with a latitude and longitude property. Are there any plans in SMW to support blank nodes, custom > composite types, or reification? I just described SMW 1.0prealpha-3's support for N-ary properties in response to [Semediawiki-user] Typed links vs. OWL-relations [1], the same applies here. Property:Population_(on_date) would have [[Has type::Integer; Date]] The Berlin article would say [[Population (on date)::3405000; 2006-11| 3,405,000 as of November 2006]] You can omit values, so you could have lots of optional values for a property as Harold Solbrig suggested. Try it out, http://ontoworld.org/wiki/N-ary_relations and http://ontoworld.org/wiki/Berlin Maybe SMW's N-ary feature is your "blank node", I'm not sure of the nomenclature. As I understand it "reification" is more for talking about the statement (who made it, when they made it, where it appeared) rather than facts within the statement (the date range over which it's true, additional facts qualifying it). Your idea to make an underlying compound datatype for all properties with the same set of values is nice; you could then say Property:Population [[Has type::Dated_integer]]. But that's not how SMW works currently. BTW, although Type:Geographic_coordinate seems like a compound type, it still has to fit all its information into the generic smw_attributes database table -- new columns don't magically appear for two float values. [1] http://sourceforge.net/mailarchive/forum.php?thread_name=92475E44-19E0-4D07-A626-8C60A697216E%40rdfined.dk&forum_name=semediawiki-user -- =S Page > Harold Solbrig wrote: > > Dan, > > > > Why just integers? It would seem like it would be useful to be able to add provenance (who, when, where…) > information to any property – not just integers. President:=Johnson - 1965 or hasChild :: Sarah – 2003 > definedIn:=http://w3.org/sample/prelimVersion 2007-08-07 > > > > > > > > Harold Solbrig > > > > > > > > ------------------------------------------------------------------------ > > > > *From:* sem...@li... [mailto:sem...@li...] *On > Behalf Of *Dan Thomas > > *Sent:* Saturday, September 08, 2007 7:24 AM > > *To:* Sem...@li... > > *Subject:* [SMW-devel] dated integer type > > > > > > > > I have run across a concept called 'dated integer' that I propose become a native SMW data type. As the name > implies, one can associate a number with a year: > > > > population:=9,999 - 2005 or > > homeruns:=756 - 2007-08-07. > > > > Do others think this would be useful? > > > > -- > > -- > > Dan Thomas |