Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JATS: statement support #885

Open
rgieseke opened this issue Mar 29, 2021 · 3 comments
Open

JATS: statement support #885

rgieseke opened this issue Mar 29, 2021 · 3 comments

Comments

@rgieseke
Copy link
Contributor

Currently, "statement" is handled with the default encoder in the JATS codec.
This doesn't catch the label/id of a "statement" environment.

E.g. in LaTeX:

The Theorem~\ref{thm:ref} is below.

\begin{theorem}\label{thm:ref}
Let it be.
\end{theorem}

As JATS XML:

<p id="p1">The Theorem&#xA0;<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#Thmtheorem1">1</ext-link> is below.</p>
<statement id="Thmtheorem1">
  <title><bold>Theorem 1</bold>.</title>
  <p id="Thmtheorem1.p1">
    <italic>Let it be.</italic>
  </p>
</statement>

As JSON:

{
      "type": "Paragraph",
      "id": "p1",
      "content": [
        "The Theorem ",
        {
          "type": "Link",
          "target": "#Thmtheorem1",
          "content": [
            "1"
          ]
        },
        " is below."
      ]
    },
{
      "type": "Heading",
      "depth": 1,
      "content": [
        {
          "type": "Strong",
          "content": [
            "Theorem 1"
          ]
        },
        "."
      ]
    },
    {
      "type": "Paragraph",
      "id": "Thmtheorem1.p1",
      "content": [
        {
          "type": "Emphasis",
          "content": [
            "Let it be."
          ]
        }
      ]
    }

Should there be a separate "statement" element?

JATS defines it as:

Theorem, Lemma, Proof, Postulate, Hypothesis, Proposition, Corollary, or other formal statement, identified as such with a label and usually made typographically distinct from the surrounding text.

https://jats.nlm.nih.gov/publishing/tag-library/1.2/element/statement.html

In LaTeX this would be a "theorem" and one of the many variants.
https://www.overleaf.com/learn/latex/theorems_and_proofs

Typically theorem titles are rendered inline, so another solution might be to just have a Block element wrapper (with id and some kind of information about the type) around the statement content.

@nokome
Copy link
Member

nokome commented Mar 30, 2021

I can certainly see the case for adding a Statement type, perhaps similar to a Figure but without caption ?https://github.com/stencila/schema/blob/master/schema/Figure.schema.yaml

@nokome
Copy link
Member

nokome commented Mar 30, 2021

Where possible we try to reuse schema.org terms. I wonder if Claim could be reused here https://schema.org/Claim

@rgieseke
Copy link
Contributor Author

While their original intention seems to have been more about general fact checking i think this could be a pretty good fit! (One could to a ClaimReview of a mathematical document's theorems and this might enable interesting data mining approaches.)

schemaorg/schemaorg#1969

In JATS:

<label> Label (of an Equation, Figure, Reference, etc.), zero or one
<title> Title, zero or one
<abstract> Abstract, zero or more
<kwd-group> Keyword Group, zero or more
One or more of any of:

    <p> Paragraph
    <statement> Statement, Formal

In schema.org Claim:

  • a stencila.Label? Not sure about this one.
  • name or headline?
  • abstract
  • keywords
  • text

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants