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

(URGENT) Requirements should be rendered as real Tables in ISO documents #777

Closed
ronaldtse opened this issue Aug 31, 2022 · 18 comments
Closed
Assignees
Labels

Comments

@ronaldtse
Copy link
Contributor

ronaldtse commented Aug 31, 2022

Word:

Screen Shot 2022-08-31 at 1 12 16 PM

PDF:

image

It should look like this instead, and the Requirements URIs should be shown:
Screen Shot 2022-08-31 at 1 24 11 PM

NOTE: Notice this table is somehow split across two, this clearly is a bug.

@ronaldtse
Copy link
Contributor Author

ronaldtse commented Aug 31, 2022

  • The "Requirement 1: ..." text should become the Table caption.
  • The "Identifier" field name should be shown explicitly. The value of the identifier should be shown in monospace font (probably should be encoded as such?)
  • The "Description" field should be shown explicitly, not a merge of two column cells.

@ronaldtse
Copy link
Contributor Author

The table width should be max width.

@ronaldtse
Copy link
Contributor Author

ronaldtse commented Aug 31, 2022

Sample of the desired rendering:
Screen Shot 2022-08-31 at 1 43 30 PM

NOTE: The "Guidance" part shall be encoded separately into the table. We will likely not use NOTE or EXAMPLE in the requirements because they are numbered per-clause, yet we have multiple requirements in a clause.

@ronaldtse
Copy link
Contributor Author

ronaldtse commented Aug 31, 2022

Desired Requirements class rendering:

Screen Shot 2022-08-31 at 1 52 41 PM

@opoudjis
Copy link
Contributor

You are working off obsolete versions of the code, which had not been merged, the requirement URIs are displaying now.

@opoudjis
Copy link
Contributor

NOTE: Notice this table is somehow split across two, this clearly is a bug.

I have enough to do already. I am not actioning this, and keeping tables on one page is an utterly unreasonable request, as you will find out soon enough if I implement it, and then you complain about it with a too-large table.

@opoudjis
Copy link
Contributor

Provisions is only being implicitly specified, which is poor practice from both OGC and the ticket author.

@opoudjis
Copy link
Contributor

This ticket is introducing the completely repulsive requirement of flavour-specific post-processing of modspec

@opoudjis
Copy link
Contributor

Changes that turn out to have been ISO-specific, I have introduced to general Modspec in mn-requirements. This is a mess, and the outputs will need to be reviewed for OGC and for ISO.

@opoudjis
Copy link
Contributor

Restoring as default behaviour for Modspec the OGC behaviour of identifier spanning both columns.

@opoudjis
Copy link
Contributor

opoudjis commented Aug 31, 2022

  • The "Requirement 1: ..." text should become the Table caption.
  • The "Identifier" field name should be shown explicitly. The value of the identifier should be shown in monospace font (probably should be encoded as such?)
  • The "Description" field should be shown explicitly, not a merge of two column cells.
  • The table width should be max width.
  • Numbering of notes and examples in tables and notes by clause, as with rest of ISO (being under tables)
  • Provisions grouping of included requirements

@ronaldtse
Copy link
Contributor Author

Table should use normal table style

Requirements are rendered in a table (which is good) but the borders are currently missing. In OGC, all tables are not rendered with borders because OGC applies background colors to headers and cells.

Screen Shot 2022-09-01 at 12 43 39 AM

Requirements class rendering should render associated requirements ID only

The "red box" below is the actual requirements content of Requirement 1, but it should have been rendered as shown in the blue (the red box should be removed).

Screen Shot 2022-09-01 at 12 44 38 AM

@opoudjis
Copy link
Contributor

opoudjis commented Sep 1, 2022

I now remember why I treated modspec tables specially. Your insistence that Modspec tables not be centered.

If Modspec tables are not to be centered in ISO HTML, and Modspec tables are not to be treated specially, then it follows that NO tables in ISO HTML are to be treated specially.

Kindly confirm, because flippantly undoing three years of formatting is not something I am going to do as a result of interpreting vague obiter dicta.

@opoudjis
Copy link
Contributor

opoudjis commented Sep 1, 2022

All tables under ISO are max width already.

@opoudjis
Copy link
Contributor

opoudjis commented Sep 1, 2022

This ticket is now implemented, pending review from @ronaldtse

opoudjis added a commit that referenced this issue Sep 1, 2022
@ronaldtse
Copy link
Contributor Author

ronaldtse commented Sep 2, 2022

Need to set table cells as left align

Screen Shot 2022-09-02 at 1 10 08 PM

"Requirement" description should be called "Statement"

In a requirement, the phrase should be "statement" (I can change the encoding), because the statement is the "thing" to be complied with.

Screen Shot 2022-09-02 at 1 10 54 PM

In a requirements class, the term "Description" is correct, because it is the description of what the requirements class is.

Citations of ModSpec instances outside ModSpec instances

Right now, they show up as "{modspec class name} {number}: {modspec instance id}" within ModSpec instances. This is good.

Screen Shot 2022-09-02 at 1 14 59 PM

But in other body content, references look like this:

Screen Shot 2022-09-02 at 1 15 41 PM

Now, this is confusing. ModSpec instances are implemented as Tables, they should point to table references instead. However, the ideal way to point to them is to refer to them as "Requirement: 123" without the long identifier. I don't know what is the correct way of doing this.

For now, let's do the following:

  • by default, the reference is "Table XX, Requirement YY"
  • in the ModSpec instance, show "Requirement YY: /req/xxx/yyy".

opoudjis added a commit to metanorma/metanorma.org that referenced this issue Sep 2, 2022
@opoudjis
Copy link
Contributor

opoudjis commented Sep 2, 2022

"Requirement" description should be called "Statement"

Note: not doing either in OGC, explicit label as Requirement or Statement is only done in ISO.

@opoudjis
Copy link
Contributor

opoudjis commented Sep 2, 2022

For this to work, am storing both Modspec xref including identifier, and excluding it (as @anchors[id][:xref_bare])

@opoudjis opoudjis closed this as completed Sep 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants