Experiences with SIOC data

Hello there.

As Eyal Oren has announced on this list a few days ago, we developed a
SIOC explorer web application, which usually can be found at:
http://www.activerdf.org/sioc/

The new version of the SIOC explorer, allows you to see all posts in
the database from all forums for one day, week or month. You can
browse all posts written by one author.
If more then one forum in the database use topics with the same label,
then you can also view all posts with that topic label.

The SIOC explorer has been submitted to the Semantic Web scripting
challenge,
(http://www.semanticscripting.org/SFSW2007/)
and I have written a short 2 page description of it.

During the development of the SIOC explorer I had a few insights and
ideas regarding SIOC data and how it is currently used by some
exporters:

phpBB export:
========
When using the SIOC data from http://sioc-project.org/forum , I could
not help but notice, that the sioc:posts do not have any content.
Is this by design? I would strongly encourage exporting the content of
the posts by the phpBB exporter.

use of inverse properties:
==============
Currently the output of the wordpress exporter often only uses one
direction in cases in which a property is available in both
directions, like: sioc:container_of and sioc:has_container.
Most non-java RDF libraries current don't support inferring of inverse
properties (AFAIK).

It has been explained to me, that the decision to export only one
direction has been made on the side of the wordpress exporter, but now
imagine that every exporter chooses a different way to treat bi-
directional properties.

The application developer cant make any assumption about which
direction of the property will be used, and has to handle both cases
in his application logic.

I would advocate using both directions in every exporter. In the end,
humans neither create nor read or process the rdf data, and this makes
it easier for the currently sometimes primitive rdf inferencing
support of various scripting languages.

use of dc:created
==========

Again, this is due to non inferencing triple stores:

In order to provide the basic functionality of every RSS aggregator,
the user has to be able to view the posts sorted temporaly, and he
will want to see posts which where created during a specific time
span.

Currently most triple stores, even advanced ones dont support finding
dates by time period. So we had to materialize the dc:created
timestamp, like this:
siocex:month, siocex:day, siocex:year, siocex:week.

I think there is no easy solution for this, except to wait for triple
stores to support xsd:date.

creator of "real posts" and "replies" is different:
===========================

In the output of the wordpress exporter, "real posts" have the
sioc:creator property and "comments for posts" have the foaf:maker
property, if I recall correctly.

I am not sure of the motivation for this, but it might be useful to
consider using the same type of entity for both.

That would enable object consolidation for creators of posts: I could
click on the creator of a post, and then see als his posts but also
all the comments he wrote.

Of course the real reason for this, is the one, which I will discuss
at the end of this email.

sioc:topic is always site specific:
==================

Reusing sioc:topic right now across site borders is extremely
difficult.
The wordpress exporter prepends the site url in front of the category/
tag used on the blog.

Currently in the SIOC explorer, we consolidate topics if their labels
are downcased similar.

Of course, there is no easy solution to consolidate topics, or to come
up with shared URIs for topics.

URLs in general are not shared
==================

In general, the data from the wordpress exporter exhibits the problem
that all instances of concepts have global URIs, but almost no URIs
are reused between sites.

To state it in a provocative manner:
The only benefit of using SIOC right now compared to RSS, is that the
modelling focus is not so much on articles/posts but also on users/
authors and their connections.

Advocates of RSS can counter the argument "SIOC data enables different
types of sites to publish their content in a unified format" with the
simple argument "a lof of different sites currently also just use
RSS".

So what needs to change in order for SIOC data to be useful in a way
that RSS data will never be:

URIs of concept instances have to be created in a unified way, and
should be reused between sites.

This of curse is one of the problems on the Semantic Web, for which no
consensus solution exists.

But as this is one of the important challenges of Semantic Web
adoption on a wide scale, and because SIOC could demonstrate the
potential of the Semantic Web, I would advocate that SIOC be one of
the first Ontologies to provide for a unified naming and sharing
approach.

Other ontology efforts will encounter the same problem sooner or
later, and SIOC could be a precedence here and provide a good example/
best practice.

Possible Solutions:
==========

Currently I can imagine two pragramatic approaches to this problem, as
far as
the wordpress exporter is concerned:

a) ask the user for more information:
- what is the real foaf profile of a blog author, and if he has none,
of some simple links to sites which let the user create one.
- ask comment posters for their foaf profile
- during post creation, check if URIs for the used tags/catgeories/
topics exist, e.g. by asking technorati or a similiar site, and if
none are found, give the user some choices to create good URIs for the
categories

b.) do automatic discovery:
- try to find the foaf file of the user in an autonomic way and then
ask him if the found one is the right one
- try to find URIs for the topics automatically, and ask if they
should be used

(This might surpass the capabilities of wordpress plugins, but they
are non the less first tiny steps to adress this huge and important
problem.)

So to close this: I hope these comments and experiences can be of use
to the SIOC community, and I hope that I did not step on anybodys
toes :)

cheers, Benjamin.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

Hi,

On 12 avr, 20:34, "Benjamin Heitmann"
wrote:

>
> creator of "real posts" and "replies" is different:
> ===========================
>
> In the output of the wordpress exporter, "real posts" have the
> sioc:creator property and "comments for posts" have the foaf:maker
> property, if I recall correctly.
>
> I am not sure of the motivation for this, but it might be useful to
> consider using the same type of entity for both.
>
The main reason is, while post creators are subscribed users of the
platform (i.e. sioc:User), commenters - most of the time, even if some
blog engine allow people to subscribe their blog before posting - are
not registered so are not users as in SIOC, but simply foaf:User.

> That would enable object consolidation for creators of posts: I could
> click on the creator of a post, and then see als his posts but also
> all the comments he wrote.
Yet, WP exporter exports both sioc:creator and foaf:maker for the post
writer, so the foaf:maker property would be available for any post /
comment. [1]
And you also have in the sioc:User profile a link to the related
foaf:People.
BTW, the API in the future should allow people to publish comment
using their FOAF URI (in order to link SIOC data to FOAF resources)

Best,

Alex.

[1] http://www.johnbreslin.com/blog/index.php?sioc_type=post&sioc_id=1223

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

> use of inverse properties:
> ==============
> Currently the output of the wordpress exporter often only uses one
> direction in cases in which a property is available in both
> directions, like: sioc:container_of and sioc:has_container.
> Most non-java RDF libraries current don't support inferring of inverse
> properties (AFAIK).

Very true, and even if your RDF data store supports such reasoning,
the inverse properties can be quite annoying to implement. Why does
SIOC contain inverse properties? I see no real reason for having them
in SIOC (e.g. no reasoning that would require such inverse
properties). It seems as if they were defined plainly because they
COULD be defined. The usability of the SIOC ontology would be much
greater without them.

-- Matthias

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

Matthias Samwald wrote:
>
> The usability of the SIOC ontology would be much
> greater without [inverse properties].
>
>
>
I have a simple argument for this - and I know a lot of people believe
inverse properties are not needed and/or cause problems with reasoning
engines -

The Semantic Web is designed for machines first, right? :) But there's
no need to neglect those poor humans with just a small bit of extra
effort required.

If for example you're talking about a sioc:Comment - and you only had a
reply property that points from Post to reply Posts, then you'd have to
define the Post and the Comment instances... And even though there are
many nicer formats than RDF/XML to express RDF in, I think RDF/XML still
is the one we see in the main, and it's the one that people see most
often when they view sources...

Now, as someone who has come from a non-core computer science
background, I also think that if you're trying to explain to people who
want to create some SW data that in order to describe that Comment that
they must also define some properties of the Post and Forum and whatever
else is related to it in the opposite direction, they may find that a
bit unwieldy...

But that's my opinion - good to hear others...

John.
--

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

> The SIOC explorer has been submitted to the Semantic Web scripting
> challenge,
> (http://www.semanticscripting.org/SFSW2007/)
> and I have written a short 2 page description of it.

Excellent - best of luck :-)

> phpBB export:
> ========
> When using the SIOC data from http://sioc-project.org/forum , I could
> not help but notice, that the sioc:posts do not have any content.
> Is this by design? I would strongly encourage exporting the content of
> the posts by the phpBB exporter.

There is content so I wonder why the SIOC explorer doesn't see it...
e.g. see:

http://www.boards.co.nz/forums/sioc.php?type=post&post_id=3607

There's both sioc:content and rss_content:encoded in this example.

> use of inverse properties:
> ==============
>
> I would advocate using both directions in every exporter. In the end,
> humans neither create nor read or process the rdf data, and this makes
> it easier for the currently sometimes primitive rdf inferencing
> support of various scripting languages.

Good idea - actually maybe this could be integrated into the PHP API
which forms the basis for some current and future SIOC exporters.

> use of dc:created
> ==========
>
> Again, this is due to non inferencing triple stores:
>
> In order to provide the basic functionality of every RSS aggregator,
> the user has to be able to view the posts sorted temporaly, and he
> will want to see posts which where created during a specific time
> span.

We could of course add those specific date terms to SIOC, and ones for
times as well, but maybe there's some way of making our exporters use
both dcterms:created and some other vocab (that I'm unaware of) for
expressing date / time by parts.

> creator of "real posts" and "replies" is different:
> ===========================
>
> In the output of the wordpress exporter, "real posts" have the
> sioc:creator property and "comments for posts" have the foaf:maker
> property, if I recall correctly.

I think the problem is that comments are not associated with real user
accounts in WordPress, well, some may be, but most are not... But maybe
Uldis can explain more.

> sioc:topic is always site specific:
> ==================
>
> Reusing sioc:topic right now across site borders is extremely
> difficult.

We could just use one URI prefix with /tag/whatever at the end...

> URLs in general are not shared
> ==================
>
> In general, the data from the wordpress exporter exhibits the problem
> that all instances of concepts have global URIs, but almost no URIs
> are reused between sites.

This is a great reason for reuse of SIOC URIs through things like the
Semantic Radar plugin, or addons for WordPress that allow you to choose
related posts when you're creating a blog post of your own (e.g. by
searching your blogroll and anything with an XFN attribute (so that
you're not just getting interesting sites)) to provide related posts
that could then be linked from your own.

> Possible Solutions:
> ==========
>
> Currently I can imagine two pragramatic approaches to this problem, as
> far as
> the wordpress exporter is concerned:
>
> a) ask the user for more information:
>
> b.) do automatic discovery:

It's a pity that the Plink service is gone, as that could have been a
handy way to suggest your associated profiles :/ Maybe danbri has some
other ideas as to how this could be done.

Great discussion Benjamin - let's keep the suggestion flying!

John.
--

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

On Apr 13, 10:16 am, John Breslin wrote:
> > phpBB export:
> > ========
> > When using the SIOC data fromhttp://sioc-project.org/forum, I could
> > not help but notice, that the sioc:posts do not have any content.
> > Is this by design? I would strongly encourage exporting the content of
> > the posts by the phpBB exporter.
>
> There is content so I wonder why the SIOC explorer doesn't see it...
> e.g. see:
>
> http://www.boards.co.nz/forums/sioc.php?type=post&post_id=3607
>
> There's both sioc:content and rss_content:encoded in this example.

Cool. I will try to use the sioc data from there.

But what I meant can be seen here:

this is a post from a SIOC forum:
http://sioc-project.org/node/241

and its SIOC output has no content:
http://sioc-project.org/sioc/node/241

But I now realize my mistake, that is actually the output of the
drupal sioc exporter,
I guess. So that could be improved a little bit.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

John Breslin wrote:
> > a) ask the user for more information:
> >
> > b.) do automatic discovery:
>
> It's a pity that the Plink service is gone, as that could have been a
> handy way to suggest your associated profiles :/ Maybe danbri has some
> other ideas as to how this could be done.
>
>
What I've been thinking would be nice (though I'm a bit hazy on the
details) is an openID service that when you signup, lets you specify a
FOAF profile (or create one with a FOAF-matic style form), and the page
at your openID uri would contain that data. Then when you create a new
account on another openID-enabled web site, the openID service would use
that request to add a new foaf:holdsAccount property to the RDF on your
openid page.

What would be even nicer would be if (some, at least) web apps published
(at some level), in RDF, the content created by each user at their
profile page on the web app. So if you went to my del.icio.us page for
instance, there would be a link to an RDF representation of all my
bookmarks and tags.

With that in place, web apps could use your openid uri as a bridge to
read the data you've already created at other web apps, and provide you
with a more 'connected' and personalised experience.

My understanding of openID is pretty superficial - I'm not sure if there
is currently a way for the openID service to know that a new account is
being created, if that operation was successful, and what the uri of
the new account profile would be (I suspect not).

At any rate, the simple act of publishing, or linking to a FOAF profile,
at an openid uri is possible, and would help produce more useful SIOC
data.

Are there any services out there already that do something like what I
described above (I wouldn't be surprised, but haven't found any)?

Even an openID uri without any RDF would presumably help?

Cheers,

Keith

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

On Apr 13, 11:31 am, Keith Alexander
wrote:
> At any rate, the simple act of publishing, or linking to a FOAF profile,
> at an openid uri is possible, and would help produce more useful SIOC
> data.

Yes, now that I think about it, giving incentives to create a FOAF
profile during the
creation of an open ID account would solve two problems with one
action.

a.) the user gets one "identity" to use across all the sites that
support open ID
who benefits: the user

b.) the user ties his "identity" directly to some reusable and machine
readable information, about him, which has been filled with data that
he himself chooses (and not some corporation)
who benefits:
the semantic web (data about one user stored in one location with one
URI)
the user (he chooses which data to reveal about himself)

Sadly, I currently know nothing about

- how to tie an open ID "Profile/Identity" to a FOAF profile
- how to tie a FOAF profile to an open ID identity

can anybody offer some quick hints as to how this could be done?

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

Benjamin Heitmann wrote:
>
> Sadly, I currently know nothing about
>
> - how to tie an open ID "Profile/Identity" to a FOAF profile
> - how to tie a FOAF profile to an open ID identity
>
> can anybody offer some quick hints as to how this could be done?
>
>

I came across this post
http://danbri.org/words/2007/01/26/161
about this site
http://doxory.com/
which apparently looks for foaf at your openid uri to see what friends
you've got.

For

how to tie an open ID "Profile/Identity" to a FOAF profile

see
http://lists.foaf-project.org/pipermail/foaf-dev/2007-February/008457.html

For how to tie a FOAF profile to an open ID identity,

Henry Story at
http://blogs.sun.com/bblfish/entry/openid_for_blogs_sun_com says:

>
> The Foaf url can simply *be* the open id. According to current OpenId
> specs the id would have to be able to return a text/html
> representation, so that the consumer (the blog that is requiring
> authentication for example), can search the html for the
> |openid.server| link relation. The foaf id would then also be able to
> return and xml/rdf representation by a client on request. This would
> save the end user from having to learn two different ids, and it would
> be a way of authenticating a foaf file on top of it. In this scenario
> the html representation should have a foaf link relation pointing back
> the the same url.

My guess is that, since most of them aren't looking for it, there isn't
an established standard way to make your foaf discoverable to openid
consumers - you could bung the rdf/xml in with the html, have a <*link
rel*="meta" type="application/rdf+xml" title="*FOAF*" href="[url]" /> in
the head, or a grddl or eRDF profile, or maybe conneg?

Perhaps someone else knows?

Keith

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

Heja,
I really like the explorer. I wonder if there is a way to remove
some attribute from the "current filter" ?

Christoph

Am 12.04.2007 um 20:34 schrieb Benjamin Heitmann:
> Hello there.
>
> As Eyal Oren has announced on this list a few days ago, we developed a
> SIOC explorer web application, which usually can be found at:
> http://www.activerdf.org/sioc/

--
I'l block your entire subnet you lamers... I'm root!

Experiences with SIOC data

Hi Benjamin,

Really a good work :)

I like the feeling of using it.

Just a quick idea: why not adding a filter on the front page to filter
the publishing time (last hour, last day, last month). Could be use as a
sort of blog aggregation.

Also, in comments, it would be interesting to be able to click on
commenters' name to see what other comments they wrote on the blog/other
blogs.

Just some quick thoughts, keep-up the good work!

Take care,

Fred

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

On Apr 12, 7:53 pm, Frederick Giasson wrote:
> Just a quick idea: why not adding a filter on the front page to filter
> the publishing time (last hour, last day, last month). Could be use as a
> sort of blog aggregation.

Good idea, thank you. I will think about adding this, when doing the
next changes.

There probably will also be a manual or automatic updating of the
blogs/forums in the
database.

> Also, in comments, it would be interesting to be able to click on
> commenters' name to see what other comments they wrote on the blog/other
> blogs.

Yes, that one is pretty obvious. Should be coming soon. :)

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

>> Also, in comments, it would be interesting to be able to click on
>> commenters' name to see what other comments they wrote on the blog/other
>> blogs.
>>
>
> Yes, that one is pretty obvious. Should be coming soon. :)
>
>
>
Also, I noticed the commenter's name often occurs multiple times. I can
guess at why that's happening, but would it be hard to fix?

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Experiences with SIOC data

I forget the link to my two page short description of the SIOC
explorer, for anybody who is interested:

http://eyaloren.org/pubs/sfsw2007-sioc-challenge.pdf

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "SIOC-Dev" group.
To post to this group, send email to sioc-dev@googlegroups.com
To unsubscribe from this group, send email to sioc-dev-unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sioc-dev?hl=en
-~----------~----~----~----~------~----~------~--~---