call for comments on base URI issue

Can people, in particular representing Zotero and Mendeley, comment on
this issue, and the strawman I float in the comments?

http://community.muohio.edu/blogs/darcusb/archives/2009/03/01/the-babel-of-citations

Bruce

Bumping this, as I’ve not yet received any comments.

OK, no comments.

So for sake of argument, any objections to me just changing all
"http://zotero.org/styles" strings to
"http://citationstyles.org/styles" (or even some non-HTTP resolvable
base?) and just let different implementation sort it out according to
their own local needs?

$ perl -pi -e ‘s/http://www.zotero.org/styles/http://citationstyles.org/styles/g
*.csl

I’ve made the change, but just haven’t committed it yet.

Hi,On 15 March 2011 19:59, Bruce D’Arcus <@Bruce_D_Arcus1> wrote:

OK, no comments.

So for sake of argument, any objections to me just changing all
Zotero Style Repository” strings to
Redirecting…” (or even some non-HTTP resolvable
base?) and just let different implementation sort it out according to
their own local needs?

Briefly: it’s ok with us :slight_smile: (Mendeley)

Side question: what is the current use of
GitHub - citation-style-language/styles: Official repository for Citation Style Language (CSL) citation styles. ?
I mean, regarding Zotero contributions. I see some activity, is all
Zotero commits in 0.8 ported to the 1.0? Or only new 1.0 styles?

Unless style URIs are dereferenceable URLs, automatic installation of the parents of dependent styles will break. We can either decide that style URIs are going to be dereferenceable URLs, modify the schema so that dependent styles will independently specify the URI and URL of their parents, or decide that dependent styles can only depend on styles in the citationstyles.org repo. I vote for the first option, since it doesn’t require any changes and I’m not sure what we’d gain from the alternatives.

Simon

So exactly what are you practically advocating for your preferred option?

Bruce

If we wanted to keep things as are with minimal work, we could just
have ids like:

https://github.com/citation-style-language/styles/blob/master/apa.csl

Bruce

Just noting that dependent styles currently include a single URL to the
parent style (e.g. ), and that the URI (id element) and URL (link
element with rel=“self”) are, or in any case should be, the same for all
styles obtained from the Zotero Style Repository (e.g.
http://www.zotero.org/styles/aacr ).

Rintze

For independent style auto-install to work, we need to change the URIs (as you suggest), but the URIs need to be dereferenceable, i.e., you have to be able to load http://citationstyles.org/styles/chicago-note-bibliography in your browser and get the style. Thus, we need to change the repo base URI, and the new style URIs have to be HTTP resolvable. “http://citationstyles.org/styles” seems fine, although it has to actually work before the citationstyles.org repo will be able to serve dependent styles.

I guess you may as well make the change now, since the current situation, in which the dependent styles refer to styles at zotero.org, is not desirable either. However, until the URIs are dereferenceable, to install a dependent style from the citationstyles.org repository, one would have to install the independent styles upon which it depends first.

Simon

So if we go this route, then we’d manage the style updating through
github, but distribution through a separate service, much like how
zotero currently does it?

E.g. there’s be a local repo somewhere off github which does a periodic pull?

We could then add to that over time?

Bruce

That’s one option. Another option would be to make http://citationstyles.org/styles/* redirect somewhere at GitHub, if you can retrieve files from GitHub without specifying a changeset.

Simon

That can definitely be done. And I agree that a redirect here is
definitely the way to go, if the authoritative repository will be on
Github.

Avram2011/3/16 Simon Kornblith <@Simon_Kornblith>:

Github has cname custom domain support, and pretty cool pages (using Jekyll;
static pages but with tons of flexibility).

And you don’t need a sha1 to refer to the head. So that’s not an issue.

I’m not sure about local redirects though.

Maybe I should post a support request with github to get suggestions? If I
do, what should I specify we need?

Bruce

That’s one option. Another option would be to make
http://citationstyles.org/styles/* redirect somewhere at GitHub, if you
canOn Mar 16, 2011 11:45 AM, “Avram Lyon” <@Avram_Lyon> wrote:
2011/3/16 Simon Kornblith <@Simon_Kornblith>:
retrieve files from GitHub without specifying a changeset.

That can definitely be done. And I agree that a redirect here is
definitely the way to go, if the authoritative repository will be on
Github.

Avram


What about making a subdomain of citationstyles.org for this, so you
can use Github directly with some DNS magic, a local repository, or a
system of 302 redirects? Such a system could be launched immediately
using one of these solutions, and the backend solution could be
replaced without requiring changes to existing styles.

The only drawback I see to local redirects is that it could mean
millions of hits by clients looking for updated styles – a subdomain
might let us shift that traffic to Github’s servers (leaving only the
manageable traffic of DNS lookups).

Avram2011/3/16 Bruce D’Arcus <@Bruce_D_Arcus1>:

Github has cname custom domain support, and pretty cool pages (using Jekyll;
static pages but with tons of flexibility).

And you don’t need a sha1 to refer to the head. So that’s not an issue.

I’m not sure about local redirects though.

Maybe I should post a support request with github to get suggestions? If I
do, what should I specify we need?

What about making a subdomain of citationstyles.org for this, so you
can use Github directly with some DNS magic, a local repository, or a
system of 302 redirects? Such a system could be launched immediately
using one of these solutions, and the backend solution could be
replaced without requiring changes to existing styles.

The only drawback I see to local redirects is that it could mean
millions of hits by clients looking for updated styles – a subdomain
might let us shift that traffic to Github’s servers (leaving only the
manageable traffic of DNS lookups).

I don’t understand the details of what you’re suggesting.

But let’s sketch out options a bit.

Here’s how you get the latest API styles from the repo now:

https://github.com/citation-style-language/styles/blob/master/apa.csl

If I setup github pages for the citation-style-language org, the base
uri would be:

http://citation-style-language.github.com

The content for that subdomain would be itself a git repository, which
allows a few things:

You can define templates, and attach files to those templates. For
example, you could have a markdown file:On Wed, Mar 16, 2011 at 12:11 PM, Avram Lyon <@Avram_Lyon> wrote:

2011/3/16 Bruce D’Arcus <@Bruce_D_Arcus1>:


title: Foo
layout: default

Introduction

Hello, world!
<<<

… and when you push it to github, jekyll will process the markdown,
and then pass it off to the _layouts/default.html template. This works
for regular pages, as well as blog posts. To create a blog post, then,
you just add a markdown file like _posts/2011-03-14-hello-world.md,
and it’ll automatically render, etc.

It could also, BTW, be adapted to deal with really any layout stuff,
including potentially CSL pages with previews (so long as the previews
are pre-compiled as HTML or markdown, I guess, or there was some way
to hook up citeproc-js for clientside previewing).

Finally, we could do CNAME setup such that citationstyles.org maps to
http://citation-style-language.github.com.

So I think (though am not sure) it’d be trivial now to serve from
github styles like:

http://citationstyles.org/styles/blob/master/apa.csl

So first question is if we want to do this?

Second is whether we want/need to remove the “blob/master” bits
through redirects?

Bruce

Correction:On Wed, Mar 16, 2011 at 12:56 PM, Bruce D’Arcus <@Bruce_D_Arcus1> wrote:

So I think (though am not sure) it’d be trivial now to serve from
github styles like:

http://citationstyles.org/styles/blob/master/apa.csl

Replace “blob” with “raw.”

https://github.com/citation-style-language/styles/raw/master/apa.csl

Bruce

Seems no redirects (yet):

http://support.github.com/discussions/site/2954-github-pages-http-redirect

Bruce

Also, there’s project pages as well, where you can put stuff that
should be published from there in a gh-pages branch.

http://pages.github.com/

So I guess we could use both the org and project pages features. So we
could map http://citationstyles.org to
http://citation-style-language.github.com, and then presumably the org
project sites would naturally map to:

http://citationstyles.org/styles/
http://citationstyles.org/schema/
etc.

Not sure how the latter relates to actual files in the master branch
though (hg-pages branch get published, can you link in blobs from the
master branch?).

Bruce

Here’s a project page github (mostly) automatically creates:

http://citation-style-language.github.com/styles/

To get the branch, you can do:

$ git pull origin gh-pages

There’s just a single index.html file, with embedded (in the head)
CSS. Feel free to edit it.

Bruce

Not sure how the latter relates to actual files in the master branch
though (hg-pages branch get published, can you link in blobs from the
master branch?).

According to this, no, but there are other ways:

http://stackoverflow.com/questions/1705224/github-how-to-include-files-from-master-in-new-git-branch-gh-pages

It seems one option is to just have gh-pages as the default branch,
and put everything (to be published) there.

Bruce