[rdfweb-dev] foaf thoughts
Flo Ledermann
ledermann at ims.tuwien.ac.at
Thu Jul 17 11:50:10 UTC 2003
hi all, i am new to the FOAF world but already fascinated...
i am carrying this project around in my brain for a long time already,
circulating around friendship networks, resource sharing, collaborative
filtering and the like, and i already had some prototypes implemented
over the years. but now i came across foaf and i think it is really
answering a lot of open questions to me...
however, some questions still remain open, and some new emerged, and
after i read through the whole archive of rdfweb-dev yesterday, i dare
to discuss them with you:
the basic motivation for me is that i think a lot of resources (in the
real world) are wasted because of a lack of communication and trust
between the individuals - flats are empty, cars are unused or used with
only one person sitting in there, mp3 collections are maintained
individually, knowledge is not used or has to be acquired from
centralized, "official" sources (like google) and so on. as far as real
life is concerned, there are established means and procedures to
exchange these resources, either in public (via a "market") or in
private (via friends that i "trust"), but for the infosphere we lack
these established standards.
ok, so far i think i've just written a basic introduction to the foaf
ideas :). now for the concrete questions:
- concerning real life resources, these can currently not be expressed
in foaf in every details. do i just take any ontology i come across, to
describe, for example, that i "own" a "car" that i might "lend" to
anyone who i "trust" with a maximum degree of 2 (i.e. a friend or a
friend-of-a-friend)? concerning the things itself, i think this is not a
problem and even intended like this by rdf and namespaces, but the
abstract concepts like "trust", "resource", "lending" etc. should maybe
go into the foaf core.
- which leads to the definition of "trust", which has been a topic in
this community from the start, as far as i can tell from the archives.
i've read jennifer goldbeck's paper, and i don't think that i would want
to rate the degree of friendship or trust that i have towards a person
on any scale - i think we have to find other ways to enable the user to
express and control these things, and to enable the software agents
acting on behalf of our users to draw the right conclusions from the
rdfweb they are spidering. before i came across foaf, i decided (after
many iterations and discussions of the topic) that i would want to have
two basic relationship types, "knows" and "trusts", without any further
specification or quantification (of course that can always be layered on
top of that). i think with these two relationships we could go a long
way, because i would have some way for rapidly extending my personal
network with people i know, without giving away too much control and
still connecting to my friends (the people i trust) in a tighter way.
- for querying and using the network, this would give quite powerful
capabilities. things like "ask all people i know and who live in my town
whether they have a welding machine" or "allow all people i trust to a
degree of two or less to download mp3s from me" are then possible. but
how do i formulate these queries (for now, on a technical level rather
than a ui level)? is there any rdf query language that can perform these
kind of tasks?
- now comes a hard one: in the real world, i give out different
information depending on who is talking to me. a friend knows a lot
about me (including address, resources, but also personal details,
interests etc.), whereas towards a strangr i might be more careful with
giving out information or i might even lie to him/her! how do we model
that in rdf/foaf? i know this has been discussed on the list, but for me
no conceptual solution was ever presented. i don't like the
cryptographic approaches that have been discussed, because they might
ensure integrity of the information, but i am more interested in this on
a conceptual level - how do we want this to work? i think the
cryptographic approaches are just not fine-grained enough to solve this.
first of all, we have to find some way of describing these constraints
in foaf - which parts of my foaf file are given out to whom. to do that,
one would need a kind of pattern language, and persons/agents matching
the patterns (similar to a query, but a kind of ex-post query) would
receive the information. on an implementation level, we would have to
move away from openly published foaf files, and put them behind a kind
of "firewall" (which i would maybe call "skin") to protect the personal
information and only give out the information that i want the other
agent to receive. this would require some kind of
authentication/identification mechanism ("i am an agent asking in behalf
of this person for that information"), but could still be realized in http.
the major implication of such a feature would be that it requires more
infrastructure to set it up - at least a webserver that you can control
and script to a certain amount - and would therefore go away a bit from
the grassroots p2p approach that is possible now. on the other hand - it
is just an optional enhancement, and people could still publish thier
public info through static rdf files, as they do now.
of course one would then use cryptographic approaches to ensure the
integrity of authentifications and so on, but i am not interested in
cryptography and could personally live with potential misuse, in a
prototype phase. but i am sure there are people out there who can solve
these problems.
- finally, a few usecases i am interested in, and i would be happy to
contribute to foaf and the surrounding tools to be able to realize them:
+ collaborative filtering/forwarding of messages through my foaf network
+ mp3/movie recommendations (and maybe sharing, but that would require
additional software installed at the users machine, which at this point
probably goes too far.)
+ car sharing and "who can give me a ride" service
+ resource sharing (tools, space, knowledge)
ah, btw you can have a look at a system i started to develop (a kind of
proprietary foaf) at http://architekt.ims.tuwien.ac.at/map/map.php -
it's defunct at the moment (transitioning to foaf ;), but you can take
it as a proof for my commitment/skills if you want :) ah, and the "new
entity" dhtml form might be handy for the foaf-o-matic, i am especially
proud of the expandable "connections" list. not sure if this works
outside mozilla though.
phew, pretty long mail, nevertheless hoping for feedback...
all the best,
f/0
http://www.mediavirus.org/f/0/foaf.rdf
--
|-
| Florian Ledermann <ledermann at ims.tuwien.ac.at>
| http://www.mediavirus.org/f/0/
|-
| "I think I'm thinking, therefore I possibly are."
|-
More information about the foaf-dev
mailing list