Citation Style Language

CSL Namespace version


I am trying to use the Item types (appendix 3 of the CSL specification) as a controlled vocabulary within an FRBR modeled record set. I need a unique namespace declaration (URI) for each version of CSL (well at least 1.0.1 and 1.0.2). The problem is that as far as I can tell “” is the only one that exists and it doesn’t try to differentiate the versions.

Let me break this down. I am working with archive records (OAI compliant XML from the Open Language Archive Community). about 60 archives make their records available through that venue. (There has even been a request for a Zotero translator). One of the outstanding issues there is it is really hard to distinguish “manifestations” from each other — which are usually not uniquely cited. Also the archive records don’t always clearly define the item type (which are the same concept in CSL and FRBR). I am working on modeling some of the OLAC records within the FRBR model. One of the options is to declare a “work type” (in the eprints sense) or “item type” which then will outline the types of item in the archive record. I would like to qualify my dublin core tags like <dc:type xsi:type="cs:type">book</dc:type> (Existing patterns for adding addtional metadata in OAI compliant XML look like this <dc:type xsi:type="dcterms:DCMIType">Sound</dc:type> In the header of my XML document I should be linking to an .xsd, but I don’t think that one of these exists for CSL — maybe I’m wrong? I also need to namespace the cs, and what would be even better would be to namespace to the version of CSL that I am using. Something like “” and “”. Would it be possible to get the version added to the namespace URI?

No, as I said on the Zotero forums, the cs: namespace is not what you want. It describes the elements of citation styles, not CSL data, so cs:book doesn’t exist.

There is no XML/RDF schema for CSL data because CSL data are only defined as JSON, and I’m skeptical we should get in the business of creating them as yet one more thing we need to handle.

I still don’t understand, though, why you need CSL for your purposes? There’s really no lack of metadata schemas for bibliographic data that do have a namespace (MARC XML, MODS, JATS, DataCite, CrossREF) – why are you looking to basically create a new one?

Thank you for these thought provoking comments.

I am not super well experienced in XML, however, it is my understanding that when defining an XML specification that the elements and the possible attributes are both defined. My syntax may be wrong or misleading. What I am hoping to do is essentially cite or cross-reference the type attributes used in CSL. for example see: styles/academy-of-management-review.csl at e37465750d15c4389aa37b1c0d35e94a4b1ac5b8 · citation-style-language/styles · GitHub

It might help you to think of what I am doing as not expressing CSL data in XML. I am using CSL types as a refinement of the Dublin Core type element. I am doing this to create a one to one alignment with citation styles. One can not do this with the other namespace schemas you mentioned.

The CSL data schema is here: schema/csl-data.json at master · citation-style-language/schema · GitHub

I might suggest serving your data in CSL JSON using JSON-LD.