tags

1 view
Skip to first unread message

mathias baert

unread,
Jul 29, 2009, 6:48:06 PM7/29/09
to themine...@googlegroups.com
Hi all

I've been wondering how the concepts of the Mine! will scale
once you get massive amounts of data of lots of different types in it.
Tagging will be crucial but messy,
tags will collide,
tags will be ambiguous,
standards (at least a personal one) will be needed.

The Mine! provides the possibility to order tags in a hierarchical taxonomy,
but I'm afraid that will prove a bit simplistic in real use.
The problem this isn't solving is context:
you can say that merlot is wine
but not whether this text is tagged with java as in coffee
or java as in code

these are two ideas concerning tags I stumbled upon today,
especially the flickr one seems interesting:

Alec Muffett

unread,
Jul 30, 2009, 4:11:04 AM7/30/09
to themine...@googlegroups.com, Jeroen Dierckx

On 29 Jul 2009, at 23:48, mathias baert wrote:

> Hi all

Mathias! Dude - first, thank you (and thanks to Jeroen) for your
Django help last week; it pointed me in the right direction and I've
been reading furiously ever since.


> I've been wondering how the concepts of the Mine! will scale once
> you get massive amounts of data of lots of different types in it.

Yep


> Tagging will be crucial but messy, tags will collide, tags will be
> ambiguous, standards (at least a personal one) will be needed.

Agreed; actually that's one thing that I think differentiates the Mine
problem space from that solved by Flickr, below, but more on that later.


> The Mine! provides the possibility to order tags in a hierarchical
> taxonomy,

Actually, that's *incorrect*.

The Mine provides for optional, hierarchical (and multiple)
*inheritance* of tags, in a vaguely OOPS way, but to me that is in no
way taxonomic.

Thus you are free (if you choose) to set up that:

chardonnay inherits from both of (white-wine, france)
white-wine inherits from wine
wine from booze

...so that labeling a JPEG as "chardonnay" means that (to use a Java
programming metaphor) any relationship which you declare as having an
interest in items which match "instanceOf(booze)" - will see that item.

However: in this scheme, labeling something as "booze" does not mean
it will turn up in a feed matching "instanceOf(chardonnay)"

[ insert here usual OOPS diatribe here about multiple inheritance, eg: http://en.wikipedia.org/wiki/Multiple_inheritance#Criticisms
; since tags have no methods, the diamond problem is not an issue ]


> but I'm afraid that will prove a bit simplistic in real use.

That's OK, because the mechanism is not meant to solve the problem you
are describing. :-)

> The problem this isn't solving is context: you can say that merlot
> is wine but not whether this text is tagged with java as in coffee
> or java as in code

To me this latter is a taxonomic, or maybe namespace, issue.

There's nothing to stop someone sufficiently anal-retentive from
setting up their own tag hierarchy:

code
code_fortran (-> code)
code_java (-> code)
coffee
coffee_java (-> coffee)
coffee_beans_blue_mountain (-> coffee)

...the joy of the Mine is that because it is "asocial" software[1],
nobody other than the user will ever see these tags, nor search upon
them, nor be confused from not knowing the difference between Java
(language) and Java (coffee).


> these are two ideas concerning tags I stumbled upon today,
> especially the flickr one seems interesting:
> http://www.flickr.com/groups/api/discuss/72157594497877875/
> http://www.commontag.org/Home

I agree, those (especially machine tags) are very interesting; one of
the things I find especially interesting is the unremarked similarity
to URIs without all the emotive bullshit that the XRI, RDF and SPARQL
camps are prone to spout. From that *alone* I believe the idea has a
chance.

Re: pymine, I believe strongly in personal folksonomic tagging - in
short: I will let the user sort it out for the moment.


For searching/selecting items, I am toying with a simple query syntax
along the lines of:

.../select.xml?query="tag:chardonnay"&page=1&span=50

...with (I hope) orthogonal pagination ("...&page=1&span=50") for
*all* API calls which return more than one result, plus embedded
metadata for "next" and "prev" URLs - thank you Joseph.


Then we just have to amend the query syntax, something like:

tag:recipe +chicken chardonnay -tag:jelly +visibleto:adriana

...for anything tagged "recipe" or containing (in title, or
description) the word "chardonnay", and that *must* contain the word
"chicken", and must be visible to Adriana, and must NOT be tagged
"jelly"

I think this has potential.

-a

--
[1] a more correct term than "antisocial"


mathias baert

unread,
Jul 30, 2009, 5:21:27 AM7/30/09
to themine...@googlegroups.com

> The Mine! provides the possibility to order tags in a hierarchical
> taxonomy,

Actually, that's *incorrect*.

The Mine provides for optional, hierarchical (and multiple)
*inheritance* of tags, in a vaguely OOPS way, but to me that is in no
way taxonomic.

oh, didn't realize that, the multiple inheritance part
 

> The problem this isn't solving is context: you can say that merlot
> is wine but not whether this text is tagged with java as in coffee
> or java as in code

To me this latter is a taxonomic, or maybe namespace, issue.

There's nothing to stop someone sufficiently anal-retentive from
setting up their own tag hierarchy:

       code
       code_fortran (-> code)
       code_java (-> code)
       coffee
       coffee_java (-> coffee)
       coffee_beans_blue_mountain (-> coffee)

...the joy of the Mine is that because it is "asocial" software[1],
nobody other than the user will ever see these tags, nor search upon
them, nor be confused from not knowing the difference between Java
(language) and Java (coffee).
 
Interesting, you suggest adding namespaces in tags to not have to have namespaces for tags ;)
Long names have drawbacks too:

Re: pymine, I believe strongly in personal folksonomic tagging - in
short: I will let the user sort it out for the moment.

Good starting point, but some guidance may prove useful.
(this guidance will probably evolve from the experience of the first users)
Once you have been intensively storing months worth of data
in your Mine!, you'll want to query it. That's when you notice which
tags you should have been adding all this time to be able ask what you want to ask now...
 


For searching/selecting items, I am toying with a simple query syntax
along the lines of:

       .../select.xml?query="tag:chardonnay"&page=1&span=50

...with (I hope) orthogonal pagination ("...&page=1&span=50") for
*all* API calls which return more than one result, plus embedded
metadata for "next" and "prev" URLs - thank you Joseph.


Then we just have to amend the query syntax, something like:

       tag:recipe +chicken chardonnay -tag:jelly +visibleto:adriana

...for anything tagged "recipe" or containing (in title, or
description) the word "chardonnay", and that *must* contain the word
"chicken", and must be visible to Adriana, and must NOT be tagged
"jelly"

I think this has potential.
agreed, looking forward to that!

Alec Muffett

unread,
Jul 30, 2009, 5:28:47 AM7/30/09
to themine...@googlegroups.com

> Interesting, you suggest adding namespaces in tags to not have to
> have namespaces for tags ;)

The irony was not lost on me. :-P

-a

mathias baert

unread,
Jul 30, 2009, 5:47:43 AM7/30/09
to themine...@googlegroups.com
There's nothing to stop someone sufficiently anal-retentive from
setting up their own tag hierarchy:

       code
       code_fortran (-> code)
       code_java (-> code)
       coffee
       coffee_java (-> coffee)
       coffee_beans_blue_mountain (-> coffee)

come to think of it, that's how tags work:
instead of modeling it like above
you do it like this:

thing(code java)
thing(coffee java)
thing(coffee coffeebeans bluemountain)

all tags are created equal
but describe properties of different scope
so some are used for context

and this is how the whole world has been using tags since the dawn of time,
ok, took me a while to get it...


Adriana

unread,
Jul 30, 2009, 5:57:17 AM7/30/09
to themine...@googlegroups.com
Well, as for consistency, which is what Mathias seems to be worried
about - we are looking to address that at the UI level. For example,
when tagging an object, you'll be seeing tags that you used before and
suggested tags based on your previous spelling etc etc so no more
cases of using 'tag' on one object and 'tags' on another. There will
be other ways to use UI to help me tag things consistently and clearly
- we are looking at all the 'best practices' from other apps that use
tagging, from flickr, to delicious to diigo etc etc - none of them
perfect but each have some feature that we can use for Mine! tagging.

A xx
--
The network is always stronger than the node...
but a network starts with a node.

http://www.mediainfluencer.net
http://www.vrmhub.net
http://www.themineproject.org

Background:
http://www.mediainfluencer.net/about/

Skype: adriana872
Twitter: adriana872
UK mobile: +44 787 6757129
US mobile: +1 732 447 5115



2009/7/30 Alec Muffett <al...@crypticide.com>:

Alec Muffett

unread,
Jul 30, 2009, 6:24:26 AM7/30/09
to themine...@googlegroups.com
>
> come to think of it, that's how tags work:
> instead of modeling it like above
> you do it like this:
>
> thing(code java)
> thing(coffee java)
> thing(coffee coffeebeans bluemountain)

Yep - most people keep that data manually in their head; all I have
done is provided a way for the Mine to remember the contextual
relationships (between one tag and another) for you, if you wish. :-)

-a

Reply all
Reply to author
Forward
0 new messages