*(Dan:) *In my approach, the tool doesn’t (have to) know anything about CSL.
the user is producing is a few HTML strings. The tool would then search
through a large and growing library of HTML strings pregenerated with
citeproc—both complete output from existing styles as well as the output
of individual macros, all for the same sample references supplied to the
user—and find a match.
Wouldn’t the same be possible in my UI approach? The UI and "token"
formatting only produce HTML strings, which are then matched against an
existing library of HTML strings - just as you propose. If what a users has
created is identical to an existing style, the user could be offered to have
his style turned into a “dependent style” as described in my spec.
*(Bruce:) *So in terms of what’s going on internally, your approach would be
same as what I have suggested: you take a list of macro calls and
transform that into the CSL XML*. It’s just that you suggest a
different approach to getting that list of macro calls. E.g. the only
real difference is the UI.
As explained above, I believe my proposal would also be compatible with this
approach. Am I wrong?
I’ve now managed to have a look at Fred’s prototype and played around with
it. I do feel there are many similarities in the underlying philosophy/UX
scenario - e.g. using pre-populated dropdowns with concrete examples of
formatting permutations. The main difference seems to be the user flow:
- I’m proposing to 1) let the user choose a document type, 2) arrange the
bibliography field order for that document type, 3) choose each field’s text
formatting and layout, then 4) repeat steps 2 and 3 for in-line citations
and footnotes. I believe that this mirrors most users’ thought process. It’s
been pointed out that it might lead to having to perform the same formatting
repetitively over and over again, but I think the “use Document Type ___ as
template” feature in my wireframe would mitigate this.
- Fred’s prototype seems to say: 1) Format *some *fields’ layout first
(authors and date), because these will look the same for each document type,
- then arrange the order of fields for each document type, 3) then choose
each field’s text formatting.
For me personally, the result of Fred’s approach was that I had difficulty
figuring out what to do at each step, and which field I was currently
editing (I asked myself “does what I’m doing now in the In-Text tab affect
all document types, or just the one I have currently active in the Field
Order tab?”). I feel that Fred’s UI emphasizes the controls over the
- As a user, I was looking for a clear order of steps necessary to
define/finish a style - I kept switching back between tabs and adjusting the
controls, but I could never get the Preview to work. In short, I didn’t know
when I was “finished”.
- Due to Fred’s approach, his UI always shows all available formatting
options, instead of showing only the ones that are relevant to the field
currently being edited.
- Controls that I would expect to find grouped together are spread out
across multiple tabs (e.g. “Basic Formatting” in the Bibliography Tab and
"Field Formatting" in the “Field Order” tab, even though in my mind both
concern the general layout)
- Some controls that apparently do the same thing (e.g. delimiters
between names, author name substitutes) are named slightly differently
across different tabs, and change their position in the UI
Going through the screenshots of Fred’s prototype I’ll try to point out
similarities and differences to my UI spec (
Screenshot 1 - Tab “Style Info”: This would roughly relate to the section
"Creating/Naming Styles" in my spec. I’ve left out some of the style creator
information, whereas Fred’s prototype is lacking the option to set
Screenshot 2-4 - Tabs “In-text citations”, “Footnotes/Endnotes”,
“Bibliography”: Either one of the first two tabs is only visible depending
on the choice of “in-text vs. note” radio button in the “Style Info” tab. It
took me a while to figure this out. In both tabs, there are a number of
string formatting options - very similar to the string (=“token”) formatting
options in my spec. For example, Fred’s Author Name Options and Author
Delimiter options are virtually identical to my proposal - except for the
crucial difference that in my UI they would only be shown when an Author
string is currently being edited.
My UI, however, is missing the option to choose between in-text versus
footnote/endnote citations. I believe this would better be solved by a
simple tickbox like “Insert in-text citations as footnotes” rather than
having two completely separate tabs. My UI is also missing a couple of
formating options which I simply forgot, but which Fred included, e.g. roles
for “Subsequent citations”.
The most important difference, however, is where the definition of the field
order is done. My UI includes the definition of the field order and text
formatting right in the “In-text Citation” tab, where it doubles as a
WYSIWYG/Preview field, instead of separating it out to another tab as Fred
does. I believe that my approach is easier to understand, because in the
mind of a user, the field order (and included fields) are dependent on
whether he is trying to insert an in-text citation vs. a bibliography.
Screenshot 5 - “Field order”: As mentioned above, I would merge these UI
elements to the In-text/Footnotes/Bibliography tab, because the Field Order
is dependent on the type of citation. Fred’s approach is using rows with
dropdowns, whereas my approach strings up the fields in the order in which
they appear. As I explained in my spec, I think the advantage of having an
"unused fields" section over dropdowns is that the user can always see which
other fields are available for use.
In Fred’s UI, you select the Document Type (“Item Type”) almost as the last
step, whereas in my UI, you select it first. It was mentioned in the
discussion that is is usually the starting point for users: “I want to cite
a Music Recording - how do I do it?”. Moreover, my UI proposes to use
existing field orders from other Document Types as templates to avoid having
to assemble the same field order repeatedly. As for formatting the fields,
Fred’s and my approach are pretty much the same.