- From: Aaron Swartz <me@aaronsw.com>
- Date: Tue, 26 Nov 2002 14:11:21 -0600
- To: Ian Hickson <ian@hixie.ch>
- Cc: "www-archive@w3.org" <www-archive@w3.org>
>> You represent you by giving yourself a URI > Which URI? Any URI, but preferably a short, simple, persistent one. Mine, for example, is http://me.aaronsw.com/ >> and then saying stuff about it >> >> p:Hixie rdf:type foaf:Person . >> p:Hixie foaf:homepage <http://index.hixie.ch/> . >> p:Hixie dc:title "Ian Hickson" . > So URIs all represent further resources, some of which can also be > used to > describe relationships? Yep, almost everything is a resource (identified by a URI) and all resources can be described (with more triples). Some of those URIs (called properties) can go in the predicate field and identify relationships. > If you go deep enough, can you end up with statements in the form: > a:foo a:foo a:foo . I guess that would occasionally make sense, like: x:anagram x:anagram x:anagram . ("anagram" is an anagram of "anagram"... ignore the fact that they should be literals instead of URIs) > I guess I'm trying to work out how much knowledge you have to give an > RDF system, and how much it can work out for itself. I'll explain these in the (as-yet-unwritten) closures section. Thanks for the nudge. > If there are just three types in RDF, namely resources with URIs, > resources without URIs, and strings, then how do you say things about > strings? How do you distinguish between a string and a resource's URI > in > the XML serialisation? You say things about strings just like anything else: "foo" x:anagram "oof" . in most serializations, strings can only be objects, though. >> "about" (which really should be rdf:about) is pointing to the URI of >> the subject. I don't see resource here but similarly it points to the >> object. > Wow, that seems excessively verbose. It usually is. Hey, it's XML, what did you expect? > So to say "data:,1" "http://example.net/isa" > "http://example.net/number" I > would say what? > > <rdf:Description > rdf:about="data:,1" > rdf:resource="http://example.net/number"/> <data:,1> <http://example.net/isa> <http://example.net/number> . <data:,1> <http://example.net/string> "1" . becomes <rdf:Description rdf:about="data:,1"> <example:isa rdf:resource="http://example.net/number" /> <example:string>1</example:string> </rdf:Dexcription> (This will go in the syntax section.) >> The date is in standard W3CDTF format[1]. > So there is no RDF-based way of reifying a date? For example, if I have > two statements in the form: > > foo:a bar:born "1970-01-01T00:00:01Z" . > foo:b bar:born "1970-01-01T00:00:02Z" . > > ...can my generic RDF engine derive: > > foo:a bar:born-before foo:b . > > ...? (Does this even make sense?) No, a generic RDF engine can't. If had a special one with support for dates (I think TimBL's CWM has this) then it might be able to. > Is there anything to prevent: > a:foo rdfs:subPropertyOf a:bar . > a:bar rdfs:subPropertyOf a:foo . > ...? No, I think that means they're equivalent. >> What do you want to tell? > Well, if I tell my RDF engine to give me all things that are a:foos, > will > it also get things that are subclasses of a:foos? If it supports RDF Schema, then yes. (This will be in the closures section too.) > Ok, so if it is a data handling format, how is it better than > specialised > MySQL databases? MySQL is a database. It stores things on disk and gives them back in response. It's easy to represent MySQL database schemas as RDF. (A table "people" with columns "name" and "dob" would become a class "Person" with Properties "name" and "dob"; the primary key would become the subject URI.) Then you can put your database on the Web and share it with other databases or non-database programs (like a GUI or XUL application) or combine it with another database to draw further conclusions (Amacrook: "people who bought this product also got arrested for ..."), etc. > Thanks, by the way, this is really helping with my understanding. Glad to help! Hopefully I'll be able to fix up the primer so it explains this stuff better. -- Aaron Swartz [http://www.aaronsw.com]
Received on Tuesday, 26 November 2002 15:11:23 UTC