Citation Order

A citation order is the sequence in which the independent parts of a compound subject are written when the subject has to be expressed as one string. The parts are facets — each is one characteristic of the thing, such as its kind, its maker, its material, its place or its date — and the citation order says which facet is written first, which second, and so on. software/microsoft and microsoft/software name the same two facets; the order is the only difference between them. The term comes from library classification, where the string is a class number or a subject heading. A directory path, a URL, a package name and a breadcrumb trail are the same construction, and the definition Jack Mills and Vanda Broughton gave in the 1977 introduction to the Bliss Bibliographic Classification covers all of them: citation order is “the order in which the elements of a compound class are cited when we state the class as a string of terms”.

A citation order is forced whenever the facets are combined before anyone looks the thing up. A file-system path, a shelf mark and a heading in a printed index all combine their facets at filing time, so the combination is linear and one facet has to come first. Library science calls this precoordination: “combination of concepts, classes or terms of a controlled vocabulary at the time of its construction or at the time of using it for indexing or classification” (ISO 25964-1). Its opposite, postcoordination, combines facets at search time — vendor:microsoft AND kind:spreadsheet — and there the order question never arises, because nothing is written as a string until the reader writes the query. The problem is not a property of software or of the subject matter. It is a property of trees: Ritchie and Thompson constrained the Unix directory structure “to have the form of a rooted tree” so that “each directory must appear as an entry in exactly one other”, and every tree since has inherited the consequence.

Whichever facet is cited first is collocated — everything sharing it sits together — and every facet cited after it is scattered. Mills and Broughton give the cost in one sentence: the citation order “determines which subjects will have their material kept together and which will have their material distributed to a greater or lesser degree.” Classification theory calls the scattered material a subject’s distributed relatives, and an index exists to reassemble them — “to collocate the distributed relatives of a subject”, in Satija and Martínez-Ávila’s phrase. Dewey’s Relative Index is the standing example, because the Dewey Decimal Classification (DDC) is “arranged by discipline, not subject”, so “a subject may appear in more than one class”. The choice cannot be avoided by choosing well. In the Bliss introduction’s words, “no one citation order is likely to please all users of a given library”, so “a definite citation order must be decided on and then adhered to consistently. This could be called the golden rule of library classification.”

What a facet is made of#

A facet is the set of classes produced by dividing a subject on one characteristic. Jevons’s textbook example is the genus book: “we are said to divide the genus ‘book’ when we consider it as made up of the groups folio, quarto, octavo, duodecimo books, &c., and the size of the books is in this case the ground, basis, or principle of division, commonly called the Fundamentum Divisionis.” Vickery, a member of the Classification Research Group (CRG) in London, defined facet analysis as “the sorting of terms in a given field of knowledge into homogeneous, mutually exclusive facets, each derived from the parent universe by a single characteristic of division.”

Vendor and kind are two characteristics of division of the genus software. Divide by maker and the classes are Microsoft software, Adobe software, Oracle software; divide by function and they are spreadsheets, operating systems, compilers. Each division is sound on its own. Applying both at once to the same set of siblings is a cross-division, the fault Jevons illustrates with “folio, quarto, French, German and dictionaries”, where a French quarto dictionary belongs to three classes at once. A directory whose children are microsoft/, spreadsheets/, adobe/ and operating-systems/ is a cross-division, and the rule against it is older than the file system: Logic of Division has the rules and why the two orders are not symmetric.

How many facets a subject has depends on the scheme. Julius Kaiser’s Systematic Indexing (1911) used three — concrete, country, process — and is, Dousa reports, “acknowledged by some scholars to be the first” indexing system “explicitly based on a theory of general categories”. Ranganathan’s Colon Classification (1933) used five, Personality, Matter, Energy, Space, Time (PMEST), and the CRG’s standard citation order of the 1950s uses ten: “Thing – kind – part – material – property – process – operation – agent – space – time”. None of these formulas has a maker facet. A maker enters a classical scheme as what Mills and Broughton call a “species-maker”: a term from one facet used to define a kind in another. Their example is timber. “The subject ‘Timber houses’ is not the same as the subject ‘Timbers for houses’: in the latter case the relationship of timber is that of a material, a special component of a house; in the former it defines a type or species of house.” Microsoft software is the vendor used as a species-maker of software, which is why the Library of Congress files it where it does (see the table below).

One order per scheme, not per item#

The citation order is a property of the scheme, fixed once, not a decision taken per item. Mills and Broughton: compound subjects “raise the fundamental problem in linear order – i.e., under which concept do they file. The only known way of providing a predictable answer to such a question is to state which type of concept reflects the first principle of division applied and which the second”. Their standard illustration separates citation order from filing order: in a telephone directory “the citation order is Surname – Forename … but the filing order is alphabetical.” Predictability is the whole point — a reader who knows the scheme’s order can compute where a thing is without looking.

Ranganathan described what the fixed order is doing in a 1966 address: classification “is equivalent to mapping the multi-dimensional universe of subjects along a single dimension”, and “the crucial problem in such a mapping is, determining which of the many immediate neighbourhood relations among facets to the Basic Subject, should be kept invariant.” A path is a one-dimensional projection of a many-dimensional thing, and the citation order chooses which neighbours stay adjacent after the projection. He was candid about where his own order came from: six hours a day of floor duty at the Madras University Library “helped me to conjecture the sequence of the facets in a subject, that would serve the dominant purpose and approach of the readers. On this conjecture was based the sequence of facets”.

Rules for choosing#

Four named rules have been proposed, and they agree more than they differ.

Concrete before process (Kaiser, 1911). Kaiser analysed business literature into “concretes” (commodities: wool, nitrate, coal) and “processes” (what is done to them: scouring, trade, combustion), with “country” as a third term when the place matters. The statement is always written concrete–country–process: Wool—Scouring, Nitrate—Chile—Trade. “The concrete is the main term, the process gives the action stated of the concrete, and the country supplies the locality where the action takes place.”

Decreasing concreteness (Ranganathan). The PMEST formula cites Personality first and Time last, on the rule that “those concepts most readily received by the mind (most ‘concrete’) should be cited before concepts less readily received.” His later Wall-Picture Principle gives the test for any pair: “If two facets A and B of a subject are such that the concept behind B will not be operative unless the concept behind A is conceded, even as a mural picture is not possible unless the wall exists to draw upon, then the facet A should precede the facet B.” His worked example cites form before author — Hamlet by Shakespeare, the English dramatist, becomes English. Drama. Shakespeare. Hamlet, because “the concept behind the term ‘Hamlet’ is not operative unless the concept behind the term ‘Shakespeare’ is conceded. Again, the concept behind the term ‘Shakespeare’ is not operative, unless the concept behind the term ‘Drama’ is conceded.”

Ends before means (the CRG, 1950s). Mills and Broughton describe the standard citation order as “based on the principle of purpose or ends before means. In any given class the objective of study, or end product, gives the primary facet – the first-cited one. The others are then cited in an order of dependence; e.g., an operation has to be performed on something and the agent of an operation must have an action to be agent of.” Their example is Hospitals – Wards – Floors – Finishes, and the same term can change facet with the discipline: “in the context of the class Medicine, Hospitals are an agent of the action of therapy and care.” Vickery argued that “utility” was “far more helpful than that of concreteness” for choosing the primary facet, crediting Mills (1957): “material should be collected on that aspect of the subject which is most important to the user”.

Significance (Coates, 1960). Coates’s Subject Catalogues ordered a heading Thing–Material–Action–Property, and ran the British Technology Index on it; the thing is the term “most readily available to the memory of the enquirer” (as the rule is usually paraphrased).

Every one of these puts the thing before the agent that acts on it, and Ranganathan’s example puts form before author. Applied to vendor and kind they all give kind first. Two qualifications keep this from being a proof. Hjørland’s survey notes that the modern principles reduce to “the predictability in locating classes” and “helpful order”, that Mills allowed “some degree of arbitrariness in the decision”, and that there is “no suggestion on how empirically to determine what citation order is ‘helpful’ in relation to a given target group, a given task or a given perspective.” And the purpose rule can flip the answer for a reader whose purpose is the vendor: the Library of Congress established the heading Microsoft software in 1994 on the strength of a certification study guide (the record’s cited work is Mueller’s Microsoft certification success guide), a book whose readers arrive by vendor and never by kind. The empirical method for finding which facet a given population reaches for first is card sorting: “a research method in which study participants place individually labeled cards into groups according to criteria that make the most sense to them”, open when the categories are not predefined and closed when they are.

What real systems chose#

System First facet The fact
Dewey Decimal Classification kind 005.54 Electronic spreadsheets: “Arrange alphabetically by name of program or software package, e.g., Microsoft Excel®”. 005.268 Programming for specific operating systems: “Arrange alphabetically by name of operating system, e.g., Linux®”. The vendor’s product is the last, alphabetical subdivision of its kind.
Library of Congress Subject Headings (LCSH) kind, vendor as species-maker The heading Microsoft software (sh94005975) has the broader term Computer software, with subdivisions --Examinations and --Study and teaching. The company itself is not its parent.
Filesystem Hierarchy Standard (FHS) kind /etc, /usr/lib, /usr/share split files by whether they are shareable and whether they are static: “files that differ in either of these respects should be located in different directories. This makes it easy to store files with different usage characteristics on different filesystems.” A package gets “a single subdirectory under /usr/lib” and a subdirectory of /usr/share.
FHS /opt provider “A package to be installed in /opt must locate its static files in a separate /opt/ or /opt/ directory tree”, with /opt/<provider>/<package> recommended and “No other package files may exist outside the /opt, /var/opt, and /etc/opt hierarchies”. The same standard uses both orders, one per purpose.
Windows vendor Visual Studio’s installer projects default to C:\Program Files\Manufacturer\Product Name, and in the registry “Microsoft, for example, creates the HKEY_CURRENT_USER\Software\Microsoft key for its applications to use, with each application creating its own subkey under the Microsoft key.”
Java packages vendor “You form a unique package name by first having (or belonging to an organization that has) an Internet domain name, such as oracle.com. You then reverse this name, component by component, to obtain, in this example, com.oracle, and use this as a prefix for your package names”. Maven’s groupId “starts with a reversed domain name you control”; npm scopes are @scope/package-name; a Go module path’s “leading path element … by convention a domain name”; an Apple bundle identifier “should also be in reverse-DNS format”.
GoboLinux, Nix program GoboLinux: “Every program lives in its own directory: you’ll find XFree86 4.3 at /Programs/XFree86/4.3/”. Nix stores each build under a hash, /nix/store/eeeeaf42e56b-subversion-0.32.1, because a conventional layout “contain[s] files such as /usr/bin/svn, making it impossible to have two versions installed at the same time.”
Wikipedia categories both Category:Microsoft software has two parents, Microsoft and Software by company.
Source trees either “Package by layer” is “organising code by grouping things of the same type”; “package by feature” is “organising code by vertical slice” where “everything related to a single feature (or feature set) resides in a single place” (Simon Brown). Rails puts models/, controllers/ and views/ under app/; a Django app puts models.py and views.py inside the feature.

The reasons the designers give are consistent. Kind-first layouts serve whoever operates the whole system: the FHS wants to mount /usr read-only and share /usr/share across architectures; Google keeps every outside library under //third_party because “Placing all third-party code into the same repository allows us to easily find all uses of third-party code by a project, and thus to comply with any license requirements”. Owner-first layouts serve whoever installs, versions or removes one thing: Nix’s stated goal is “Non-interference”, the /opt rationale is that a package’s files stay inside its own tree, and the package-by-feature argument is a deletion test — “in some cases, deleting a feature can reduce to a single operation - deleting a directory. (Deletion operations might be thought of as a good test for maximum modularity: an item has maximum modularity only if it can be deleted in a single operation.)” The vendor-first namespaces of Java, Maven, npm and Go have a third reason, uniqueness: the Java specification wants a prefix nobody else can claim, because without one “package name conflicts may arise far from the point of creation of either of the conflicting packages.”

So the systems disagree about the order and agree about the mechanism: each picked the facet that its own maintenance operation collocates, and paid for it in the other facet. That is the whole content of the choice. What it cannot settle is which order is a hierarchyLogic of Division shows that only one of the two is — and how to give readers the other facet without a second copy of the tree, which is the subject of Escapes From the Tree.

Sources#

Wiki Pages#

Logic of Division
Escapes From the Tree