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
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