[Developers] [Data-modeling] Awards refactoring
Jeff Prucher
jeff at metaweb.com
Tue Apr 15 00:09:51 UTC 2008
Since I haven't heard any objections to this, I'm going to go ahead and make
these changes (rename "award" to "award category", add a new type "award",
and switch the keys around) on Thursday of this week (4/17). Please jump up
and down and shout loudly if this will break any code that you're using.
Thanks,
Jeff Prucher
> -----Original Message-----
> From: developers-bounces at freebase.com
> [mailto:developers-bounces at freebase.com] On Behalf Of Faye Li
> Sent: Tuesday, April 08, 2008 5:56 PM
> To: Freebase data modeling mailing list
> Cc: 'For discussions about MQL,Freebase API and apps built on
> Freebase'
> Subject: Re: [Developers] [Data-modeling] Awards refactoring
>
> Jeff - I can't believe you remember my suggesting this -- but
> that's great! :)
>
> In general I agree with you that type key changes should be
> avoided and any change should be made backward-compatible.
> The exception I'm evidently more open to, is when keeping the
> same key in the interest of backward compatibility
> unintentionally but unabashedly causes forward confusion. I
> can just imagine future discussion threads from users puzzled
> over the fact that the "Award" Type has the key
> "/award/<insert some weird name here>" while "Award Category"
> has the key "/award/award", and then some old-timer from the
> community will have to explain, sheepishly, the "legacy"
> schema and backward-compatibility policy that together
> produced this awkward design.
>
> So my practical question is, hypothetically, if the type key
> were to be changed to a more logical name, would that break
> anyone's code? Please speak up if this would affect you. I
> see a trade-off between supporting our current community now
> and avoiding confusing future users (which dare I say number
> much higher than they do now...), and I think to evaluate
> that, the missing piece of information of actual impact of a
> key change must be known.
>
> -- Faye
>
>
> Jeff Prucher wrote:
> > I'm cross-posting to the developers list because this
> proposal touches
> > on the type keys in the awards domain, which might affect
> developers.
> >
> > There is a problem in the current awards schema. There is no way to
> > group categories of awards together under the same general
> award. For
> > example, there are topics for every Academy Award category (best
> > picture, best original screenplay, etc.) of type "award",
> but there is
> > no way to assert that all these awards are the same sort of
> award. So
> > if you want to know which picture has won the most Academy
> Awards, you
> > have to query against every academy award topic, do some kind of
> > string matching against the topic name, or go by the awarding
> > organization. (This last one wouldn't work, actually -- different
> > Nobels are technically awarded by different groups, and some
> > organizations sponsor multiple awards.)
> >
> > So I'm proposing (well, this was Faye's idea, really) that we add a
> > new type that will connect to both "award" and "award presenting
> > organization". This would ordinarily be a very simple thing
> to do. The
> > problem is with the nomenclature. From a practical
> standpoint, the new
> > type (i.e., for the general "Academy Award") should be
> called simply
> > "award", and the old type (i.e., for the specific category,
> "Academy
> > Award for Best Foo") should be renamed "award category". I'm pretty
> > satisfied with making that change, but I'd like to hear
> other suggestions.
> >
> > My main concern with the naming I'm proposing is that the type keys
> > might be a problem. The type "award category" (formerly known as
> > "award") has a key of /award/award. The new type "award" can't use
> > that, since keys are unique, so it would have to have some
> > weirdly-named key. This is doable, just inelegant and probably
> > confusing to anyone who tries to write queries using the keys. The
> > alternative would be to move the /award/award key to the
> new "award"
> > and create a new key for "award category", but this would
> completely
> > break any code that uses this schema, which is not
> something I'm too keen on doing.
> >
> > The Academy Awards (type = award):
> > http://sandbox.freebase.com/view/en/academy_awards
> >
> > Academy Award for Best Director (type = award category):
> > http://sandbox.freebase.com/view/en/academy_award_for_best_director
> >
> > The Academy of Motion Picture Arts & Sciences (type= award
> presenting
> > organization)
> >
> http://sandbox.freebase.com/view/en/academy_of_motion_picture_arts_and
> > _scien
> > ces
> >
> > Thoughts on how best to proceed?
> >
> > Jeff Prucher
> > Type Librarian & Ontologist
> > Metaweb Technologies, Inc.
> >
> >
> > _______________________________________________
> > Data-modeling mailing list
> > Data-modeling at freebase.com
> > http://lists.freebase.com/mailman/listinfo/data-modeling
> >
> >
>
> _______________________________________________
> Developers mailing list
> Developers at freebase.com
> http://lists.freebase.com/mailman/listinfo/developers
>
More information about the Developers
mailing list