metanorma / metanorma-plugin-glossarist

Glossarist plugin for Metanorma
BSD 2-Clause "Simplified" License
1 stars 0 forks source link

Note references need to be included in render_bibliography #36

Open opoudjis opened 2 months ago

opoudjis commented 2 months ago

From https://github.com/metanorma/metanorma/issues/75

For isotc204-glossary/concepts, the directive

:glossarist-dataset: dataset:../isotc204-glossary/concepts

....

[bibliography]
==  Bibliography

glossarist::render_bibliography[dataset]

is returning only one reference, ISO/TS 14812:2022.

That may be the case, but there are a lot of references in the generated file that are being excluded. So I see:

Anchors: (ID _8159cebf-31c6-a424-3c06-449ea51c0c56): Crossreference target ISO_11179_1 is undefined
Anchors: (ID _19fba2b1-f0ec-3d1a-9a4b-a641e70d2cf5): Crossreference target ISO19505_2_2012 is undefined
Anchors: (ID _f0858dcb-2f2a-065b-3f34-e5118cf3e920): Crossreference target iso_std_iso_15704_en is undefined
Anchors: (ID _222df9a8-00b4-2f71-7ba5-0e1ce57eeba2): Crossreference target iso_std_iso_iec_10746_en is undefined
Anchors: (ID _c3a7be68-37c0-436d-5c03-b208dfdbab71): Crossreference target ref_25 is undefined
Anchors: (ID _87fbe60c-5397-3c0e-f168-1f62c596b57a): Crossreference target ref_16 is undefined
Anchors: (ID _73e5585f-4652-b0cb-ff4a-158329aad591): Crossreference target ref_26 is undefined
Anchors: (ID _3b10e5c9-b1ad-66ed-4dac-22c8e370137a): Crossreference target ref_25 is undefined
Anchors: (ID _9baf7410-dd45-cdcf-74cf-e9378ca2a26c): Crossreference target ref_25 is undefined
Anchors: (ID _d8ef4347-7ab5-4ed5-1f4c-cf2a144057b0): Crossreference target ref_16 is undefined
Anchors: (ID _7959b4bd-3d70-f382-da41-498e8541fc10): Crossreference target ref_16 is undefined
Anchors: (ID _38795692-3add-33a5-59b9-a53a7a6f0c57): Crossreference target fig_A.23 is undefined
Anchors: (ID _576400cb-d833-8ffa-47d0-63869b9ac4fc): Crossreference target fig_A.23 is undefined
Anchors: (ID _b53418c2-b238-2334-5836-bf6265154ec1): Crossreference target SAE_J3194 is undefined
Anchors: (ID _38f79ed4-514c-c33e-6828-7c784e6dbde8): Crossreference target ISO_SAE_22736 is undefined
Anchors: (ID _38f79ed4-514c-c33e-6828-7c784e6dbde8): Crossreference target SAE_J3016 is undefined
Anchors: (ID _0c602c87-87f0-586f-fd3b-018ce79170e8): Crossreference target SAE_J3194 is undefined
Anchors: (ID _a23cd7cb-eedc-8bb0-e2d7-f5142a58ed9a): Crossreference target SAE_J3194 is undefined
Anchors: (ID _e51be99a-9060-73e1-0c0e-700dbba267f0): Crossreference target SAE_J3194 is undefined

Now, ISO_11179_1 occurs in:

[[urn_iso_std_iso_14812_3.1.11.2]]
=== class
admitted:[object class]

set of ideas, abstractions or things in the real world that are identified with explicit boundaries and meaning and whose properties and behaviour follow the same rules

[NOTE]
====
Some ISO/TC 204 documents use the term "object class" for consistency with <<ISO_11179_1>>, but within ITS, the term "class" is more generally understood.
====

[NOTE]
====
This is semantically equivalent to a "class" as used within UML (<<ISO19505_2_2012,ISO19505-2:2012>>).
====

[.source]
<<ISO_TS_14812_2022,3.1.11.2>>

The bibliography needs to include not only ISO_TS_14812_202, but ISO_11179_1 and ISO19505_2_2012. It needs to include any bibliographic reference anywhere in the rendered text, and that includes notes.

Rather more concerning:

[[urn_iso_std_iso_14812_3.1.8.5]]
=== information transfer
admitted:[information flow triple]

{{urn_iso_std_iso_14812_3.1.8.4,information flow}} from a {{urn_iso_std_iso_14812_3.1.8.1,physical object}} acting as an information provider and sent to another physical object acting as an information consumer

[NOTE]
====
The term "information flow triple" is used extensively in the Architecture Reference for Cooperative and Intelligent Transportation (ARC-IT; see Reference <<ref_25>>).
====

[.source]
<<ISO_TS_14812_2022,3.1.8.5>>

... I have no idea what ref_25 is supposed to be. Clearly the termbase of isotc204-glossary/concepts does, and it needs to pass all its references on to its output.

opoudjis commented 2 months ago

More damaging still:

[[urn_iso_std_iso_14812_3.3.1.1]]
=== cross-section

transverse view of {{urn_iso_std_iso_14812_3.3.5.1,road}} geometry

[example]
<<fig_A.23>>.

[NOTE]
====
The transverse view provides a vertical section of the ground and {{urn_iso_std_iso_14812_3.3.1.5,carriageway}} at right angles to the centre line of the carriageway.
====

[.source]
<<ISO_TS_14812_2022,3.3.1.1>>

This termbase looks like it's a "bleeding chunk" pulled out of a pre-existing document. Its cross-references HAVE to be self-contained: it simply cannot be consumed as a resource by external documents otherwise. fig_A.23 is MEANINGLESS if it references something in another clause, or even another term—since terms can be consumed in isolation from each other by glossarist.

All cross-references in any termbase need to be tested for this: this is a QA issue for extracting termbases out of documents.