Upcoming fdata replacement: edges
Aug. 17th, 2009 06:56 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
So far Dreamwidth has been sorely lacking an equivalent to LJ's fdata, the data file that told you the relationships of a user with other users. Our new equivalent to that will be called edges. Because of the new complexity of DW's relationship structure, and due to a desire to use more standards, this data file will be in the JSON format. The bug for it is Bug 857.
I currently have my proposed patch in. It's not committed yet, or live on the site, but I think it probably will be within the next month. If you want a chance to prepare, I have my patch applied on my development server. It's possible that details will change with feedback, though, so be forewarned! My server has open registration, so you can feel free to create accounts and play around, but I've made a small set of test accounts such as this one. You can view an example edge data file here:
http://www.dev.memewidth.org/data/edges?account=amy
Here is an example of a community's edges file:
http://www.dev.memewidth.org/data/edges?account=bonny_bunnies
The data is in one big hash. There is an "account_type" variable, set to the type of the account. That makes it easy to determine what kind of account you are fetching data for. The other base variables are relationship types, such as "watched", "watched_by", or "member_of", that are a hash of arrays--all the accounts with a given relationship are split up into account types.
Any commentary on this planned data file? Problems you want to fix now, before it's implemented? Any plans for it you want to share?
I currently have my proposed patch in. It's not committed yet, or live on the site, but I think it probably will be within the next month. If you want a chance to prepare, I have my patch applied on my development server. It's possible that details will change with feedback, though, so be forewarned! My server has open registration, so you can feel free to create accounts and play around, but I've made a small set of test accounts such as this one. You can view an example edge data file here:
http://www.dev.memewidth.org/data/edges?account=amy
Here is an example of a community's edges file:
http://www.dev.memewidth.org/data/edges?account=bonny_bunnies
The data is in one big hash. There is an "account_type" variable, set to the type of the account. That makes it easy to determine what kind of account you are fetching data for. The other base variables are relationship types, such as "watched", "watched_by", or "member_of", that are a hash of arrays--all the accounts with a given relationship are split up into account types.
Any commentary on this planned data file? Problems you want to fix now, before it's implemented? Any plans for it you want to share?
(no subject)
Date: 2009-08-18 03:24 am (UTC)The long hash isn't really human readable, I think it would be good to put some whitespace in.
(no subject)
Date: 2009-08-18 04:22 am (UTC)(no subject)
Date: 2009-08-19 08:08 am (UTC)(no subject)
Date: 2009-08-20 02:12 am (UTC)https://addons.mozilla.org/en-US/firefox/addon/10869
So I think that should be sufficient.
(no subject)
Date: 2009-08-18 10:50 am (UTC)(no subject)
Date: 2009-08-18 05:01 pm (UTC)(no subject)
Date: 2009-08-18 05:35 pm (UTC)(no subject)
Date: 2009-08-18 09:46 pm (UTC)So, like popwithfriends.bml? No lie, I was pondering a suggestion that DW implement some kind of Popular with Your Subscriptions feature.
(no subject)
Date: 2009-08-18 10:05 pm (UTC)(no subject)
Date: 2009-08-18 10:06 pm (UTC)(no subject)
Date: 2009-08-19 08:32 am (UTC)(no subject)
Date: 2009-08-19 04:46 pm (UTC)Additionally, FOAF is comparatively huge to a smaller format like this, which I think makes a difference when you have to data mine umpteen gazillion of them.
(no subject)
Date: 2009-08-20 11:09 am (UTC)Carry on! :)
(no subject)
Date: 2009-08-20 05:10 pm (UTC)One nice thing about the JSON format is that Javascript programs can natively load the file as an object, I think.
(no subject)
Date: 2009-08-26 07:22 am (UTC)http://developer.yahoo.com/yui/theater/video.php?v=crockford-json
A full transcript's there too.
(REBOL's problem is it isn't open-source - makes you weep, it does.)