You have to remember that there is also a human-readable "title" tag. These are only for the macro and can be rendered prettily, for the reader.

For instance, I get rid of all hyphens in the "T" tag and display it as Title Case.

So `["T", "song-of-solomon"]` is displayed as "Song of Solomon".

Reply to this note

Please Login to reply.

Discussion

so they have the () section after with human readable then?

anyway, i spotted another issue, the syntax for multiple references. i don't think you should support multiple books because that turns the data structure into a tree (each book is a branche of it, and thus how do you disambiguate the chapter/verse references)

Sections, chapters, and publications all have their own "title" tag. Completely separate to the macro tags, which are designed to machine-readable.

I handle various sorts of human-friendly formats, client-side. You can use commas between versions, for instance, instead of, or in addition to spaces.

well, it's your baby i guess. but i won't like it so much if it isn't something that I as a computer programmer requires as much thinking as writing valid JSON.

Most humans would stick to stuff like

`book:: 1 John 2:7-12 | KJV`

I recognize and render Bible books, Quran, and some others without hyphens or quotations. A number preceding letters is concatenated to a title. Anything that is " number:number-number" can be assumed to be chapter-number:versebeginning-verseending. And there are typical keywords like "preface" or "appendix", that can be identified. I also work with plural or singular and stuff like "Ch" "Ch." "Chapter" and Roman numerals. I can add that to the spec, as a hint to later parser-writers.

Anything more complex is probably auto-generated or written by an expert.

Another easy one is

`book:: Tale of Two Cities 8: Intro-3`

It's obvious that they mean

`book::tale-of-two-cities 8:introduction-3`

I split it up into one entry for each, for rendering or searching.

That's very human-friendly, as you can clearly denote a group of literary excerpts, that are meant to be clustered and displayed together. It's very common, with religious texts.

`book:: 2 Maccabees 6:18-31, Psalm 3:2-7, 1 John 4:10b, Luke 19:1-10` would give you today's Daily Readings, like so:

[[book:: 2 Maccabees 6:18-31, Psalm 3:2-7, 1 John 4:10b, Luke 19:1-10]]