Hi Fouke,

Welcome to the club of CiteProc impementers!

The tests you're referring to are citeproc-js tests, not CSL only
tests, i.e., they also cover implementation details of citeproc-js
which are not part of the specification. We have been planning to
create an implementatioin agnostic test suite for a few years now. If
anyone's to blame that it isn't ready yet, it's me: I volunteered to
work on it, but never found the time to do it.

If you're interested in additional tests, there are a lot of citeproc-
ruby and csl-ruby tests here:

https://github.com/inukshuk/citeproc-ruby/tree/master/spec/citeproc/rub
y
https://github.com/inukshuk/citeproc/tree/master/spec/citeproc
https://github.com/inukshuk/citeproc-ruby/tree/master/features
https://github.com/inukshuk/csl-ruby/tree/master/spec/csl
https://github.com/inukshuk/csl-ruby/tree/master/features

These are appoximately 1,000 tests covering many aspects of CSL and
some citeproc-ruby implementation details (I'm certain there are tests
for page ranges for example).

Finally, here are most of citeproc-js tests converted to cucumber
features (not including tests added in the last two years):

https://github.com/inukshuk/citeproc/tree/master/features

I have tried for a long time to write a stateless processor, but I
don't think it's possible (disambiguation aside, you need have citation
styes which use ibidem for consecutive citations and, if I remember
correctly, there are number of other requirements which make it
necessary to manage state). My current solution is to distinguish
between a stateless renderer component, a CSL node tree for style and
locale, a formatter (for formatting the output and handling things like
double spaces, flipping single or double quotation marks etc.), and a
stateful processor -- I don't think you can make do with significantly
less.

Sylvester


On Tue, 2016-06-28 at 15:57 +0200, fo...@boss-reus.nl wrote:
> 
> Hi everyone,
> 
> My name is Fouke Boss, I am a software developer from the
> Netherlands 
> with a background in mathematics. In my spare time I am working on a
> new 
> piece of genealogy software with some interesting ideas (or at least
> I 
> think so). Part of this software is about citing the sources, and 
> through this 
> (http://fhtw.byu.edu/static/conf/2008/tucker-10-presentation-fhtw2008
> .pdf) 
> presentation I became interested in CSL.
> 
> And so the last couple of weeks I have been working on a Microsoft
> .NET 
> implementation of the CSL 1.0.1 specification. So far, the 
> specifications, together with the test suite, have been clear enough
> for 
> the most part, and so earlier today I have been able to put a first 
> version of this .NET implementation online at 
> https://github.com/fouke-boss/citeproc-dotnet.
> 
> If you are a Windows user (yeah, I know), you could download the 
> binaries (in the /Binaries folder) and run the CiteProc.WpfDemo.exe
> to 
> get a first impression of the current capabilities and shortcomings.
> 
> I am hoping to implement the remaining features in the next couple
> of 
> weeks, and for this, I'd like to ask you all for some help. At the 
> moment, my main issues are these:
> 
> 1. I'm trying to figure out if my currently stateless processor (it 
> receives a list of items, and returns a formatted bibliography or 
> citation) should in fact be stateful in order to implement 
> disambiguation properly. And (related as far as I can tell): what is
> the 
> exact purpose of all these test cases with 
> CITATIONS/CITATION-ITEMS/BIBENTRIES/BIBSECTION sections in it?
> 
> 2. The specifications do not mention anything about the removal of 
> multiple spaces, dots, commas or other punctuation, but the test
> suite 
> requires this behavior, and quite rightly so imho. Can anyone
> enlighten 
> me about the exact rules the other processors have implemented?
> 
> 3. I am thinking of supplementing the CSL Test Suite with a 'Basic
> Test 
> Suite' that systematically tests each and every element or attribute 
> (e.g. the current Csl Test Suite does not contain any test case for 
> chicago page ranges). A first (but far from complete) draft can be
> found 
> in the github repository. Rintze Zelle pointed out that a move to 
> cucumber has been considered. Do you think such an additional set of 
> tests is useful? Which format is preferred?
> 
> 4. What license should I use? I've looked around a bit ('CPAL or
> AGPL' 
> for citeproc-js, 'AGPL and the FreeBSD' for CiteProc-Ruby), but I
> don't 
> have any experience in this matter. Any thoughts or suggestions?
> 
> Any help would be appreciated!
> With kind regards,
> 
> Fouke
> 
> -------------------------------------------------------------------
> -----------
> Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in
> San
> Francisco, CA to explore cutting-edge tech and listen to tech
> luminaries
> present their vision of the future. This family event has something
> for
> everyone, including kids. Get more information and register today.
> http://sdm.link/attshape
> _______________________________________________
> xbiblio-devel mailing list
> xbiblio-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/xbiblio-devel

Attachment: signature.asc
Description: This is a digitally signed message part

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
xbiblio-devel mailing list
xbiblio-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xbiblio-devel

Reply via email to