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

2. Normative references: References to entries #19

Closed
RexJaeschke opened this issue Jun 16, 2020 · 21 comments
Closed

2. Normative references: References to entries #19

RexJaeschke opened this issue Jun 16, 2020 · 21 comments
Labels
resolved Proposal adopted by WG4; ready to implement

Comments

@RexJaeschke
Copy link

RexJaeschke commented Jun 16, 2020

From WG4 N0441, “Plan to Make IS 29500 Parts Comply with the ISO Style Guidelines.”

From ISO: only references cited normatively in the text shall be listed. “ISO 15836-1”, “ISO 15836-2”, “XML Namespace”, “XML Base” and “XML Schema Part 2: Datatypes” are informatively referenced in the text; “XML Schema Part 1: Structures” is not referenced in the text. Please add normative references to these documents or remove them from Clause 2. Refer to ISO/IEC Directives, Part 2, 2018, 15.5.3 for examples of normative and informative citations. ISO/IEC Directives, Part 2, 2018, Table 3 provides verbal forms and expressions that make a citation normative.

The matching of reference and bibliography entries will be reviewed and changed, as appropriate.


ISO-001: ISO/IEC Directives, Part 2, 2018, 15.5.3 Only references cited normatively in the text shall be listed in the normative references clause.

Refer to ISO/IEC Directives, Part 2, 2018, 15.5.3 for examples of normative and informative citations.

ISO/IEC Directives, Part 2, 2018, Table 3 provides verbal forms and expressions that make a citation normative.

“ISO 15836-1”, “ISO 15836-2”, "NIST SP 800-56A Rev. 3", “XML Namespace”, “XML Base” and “XML Schema Part 2: Datatypes” are informatively referenced in the text; “XML Schema Part 1: Structures” is not referenced in the text. Please add normative references to these documents or remove them from Clause 2.

Task: Should these be referenced normatively? If so, please say how and from where.

ISO comment in the draft spec:

Re ISO 15836 1, Information and documentation — The Dublin Core metadata element set — Part 1: Core elements:

Only documents that are clearly cited as requirements shall be listed in Clause 2.
Please consider changing the first sentence in 9.3.3.2 to the following (or other wording as appropriate), to > make it clear that the citation to ISO 15836-1 is normative:
"Creator, description, identifier, language, subject, and title elements as defined by ISO 15836-1 shall be used as core property elements."

Re ISO 15836 2, Information and documentation — The Dublin Core metadata element set — Part 2: DCMI Properties and classes:

Only documents that are clearly cited as requirements shall be listed in Clause 2.
Please consider changing the first sentence in 9.3.3.3 to the following (or other wording as appropriate), to make it clear that the citation to ISO 15836-2 is normative:
"Created and modified elements as defined by ISO 15836-2 shall be used as core property elements."

Re NIST SP 800-56A Rev. 3, Recommendation for Pair-Wise Key-Establishment Schemes Using Discrete Logarithm Cryptography, April 2018:

This document is informatively referenced in the text, using the verbal form "should".
Please either add normative citation(s) or move it to the Bibliography.

@RexJaeschke RexJaeschke changed the title Normative references: References to 2. Normative references: References to entries Jun 16, 2020
@murata2makoto
Copy link

Here is my proposal.

In 7.5.3.1, replace

An xml:base attribute shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part.

by

An xml:base attribute (which shall be as specified in XML Base) shall not exist in the output XML document resulting from any MCE processing (which shall be as specified in ISO/IEC 29500-3) of the Relationships part.

In 7.5.5, replace

Relationships parts may use the versioning and extensibility mechanisms defined in ISO/IEC 29500-3 to incorporate elements and attributes drawn from other XML namespaces.

by

Relationships parts may use the versioning and extensibility mechanisms (which shall be as defined in ISO/IEC 29500-3) to incorporate elements and attributes drawn from other XML namespaces (which shall be as specified in XML Namespaces).

In 9.3.3.2, replace

This document allows creator, description, identifier, language, subject, and title elements as defined by ISO 15836-1 as core property elements.

by

This document allows creator, description, identifier, language, subject, and title elements (which shall be as specified in ISO 15836-1 as core property elements).

In 9.3.3.3, replace

This document allows created and modified elements as defined by ISO 15836-2 as core property elements.

by

This document allows created and modified elements (which shall be as specified in 15836-2 as core property elements).

In C.1, replace

This document is accompanied by a family of schemas defined using the W3C XML Schema 1.0 syntax.

by

This document is accompanied by a family of schemas. Their syntax and semantics shall be as specified in XML Schema Part 1: Structures and XML Schema Part 2: Datatypes.

@franciscave
Copy link

In 7.5.3.1 the sentence is already normative, because it contains "shall not", so it isn't necessary to say "(which shall be as specified in XML Base)". The following is sufficient:

An xml:base attribute (as specified by XML Base) shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part.

Similarly, in 7.5.5 the sentence is already normative, because it contains "may", so it isn't necessary to say "(which shall be as defined in ...)". The following is sufficient:

Relationships parts may use the versioning and extensibility mechanisms defined in ISO/IEC 29500-3 to incorporate elements and attributes drawn from other XML namespaces (as specified in XML Namespaces).

For 9.3.3.2 and 9.3.3.3 I prefer to use "may" rather than "shall". The use of "may" is just as normative as "shall". I would therefore prefer for 9.3.3.2:

The following elements defined by ISO 15836-1 may be used as core property elements: creator, description, identifier, language, subject, and title.

For 9.3.3.3, similarly:

The following elements defined by ISO 15836-2 may be used as core property elements: created and modified.

Concerning C.1, there is no point in saying that the family of schemas "shall be as specified in ...", because the schemas are part of the standard. We're not defining requirements on the contents of the standard. My preference would be to say in C.1 something like:

The family of XSD schemas referred to throughout this document is defined in accordance with XML Schema Part 1: Structures and XML Schema Part 2: Datatypes.

@murata2makoto
Copy link

@franciscave I believe that ISO editors will disagree. Whether or not a statement is normative is irrelevant. They require "shall" or "should" for specifying conformance to normative references. For example, "An xml:base attribute (as specified by XML Base) shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part." is a normative statement, but conformance to XML Base is not explicitly stated anywhere. I personally think that mentioning this attribute is already a conformance requirement, but I do not want to argue against ISO editors.

@franciscave
Copy link

franciscave commented Aug 27, 2020

Hmm... on re-reading Directives Part 2, Clause 15.5.3, I think you are right. Here are my alternative suggestions:

In 7.2.5 XML usage add two new requirements. These are not a technical change, as they are implicit currently:

c) All XML namespaces shall be declared in accordance with XML Namespaces.

d) If the XML content includes markup compatibility or extensibility elements or attributes as specified by ISO/IEC 29500-3, the XML content shall be pre-processed by an MCE processor as specified in ISO/IEC 29500-3 prior to validation.

Re-number the current c), d) and e) as e), f) and g).

In 7.5.3.1 remove the parentheses around "as specified by XML Base":

An xml:base attribute as specified by XML Base shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part.

[We might consider turning this around to make the requirement more clear:

The output document resulting from any MCE processing of the Relationships part, as specified by ISO/IEC 29500-3, shall not contain an xml:base attribute, as specified by XML Base.]

For 9.3.3.2:

This document allows creator, description, identifier, language, subject, and title elements as core property elements. If any of these elements are included, they shall be as specified by ISO 15836-1.

For 9.3.3.3

This document allows created and modified elements as core property elements. If either or both of these elements are included, they shall be as specified by ISO 15836-2.

@murata2makoto
Copy link

@franciscave

I still do not think that your rewrite addresses comments from ISO.

d) If the XML content includes markup compatibility or extensibility elements or attributes as specified by ISO/IEC 29500-3, the XML content shall be pre-processed by an MCE processor as specified in ISO/IEC 29500-3 prior to validation.

I do not think that conformance to 29500-3 is stated here. " as specified by " is not good enough.

An xml:base attribute as specified by XML Base shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part.

Again, I do not think that this conformance to XML base is stated.

@RexJaeschke
Copy link
Author

On hold until we hear from ISO. Francis and Murata-san to write the question for ISO.

@franciscave
Copy link

Suggested questions to ISO:

We would appreciate further explanation of your requirement with respect to Clause 2 Normative references: "only references cited normatively in the text shall be listed". This is not stated clearly in Directives Part 2 Clause 10 Referencing.

Consider a hypothetical example in which it is a requirement that a document contain a date in one of the formats of ISO 8601. Which of the following is correct?

a) A document shall contain a date in one of the formats specified by ISO 8601.

b) A document shall contain a date, which shall be in one of the formats specified by ISO 8601.

In other words, does there have to be a normative requirement to implement the referenced specification as well as a normative requirement to include (or not) the result in the document (b)? Or is it sufficient that the statement overall is normative (a).

What if the requirement were to be negated? Which of the following two examples is correct?

c) A document shall not contain a date in any of the formats specified by ISO 8601.

d) A document shall not contain a date, which shall be in one of the formats specified by ISO 8601.

As we see it, (d) doesn't make sense, so (c) must be correct. All the above seem to us to reference ISO 8601 normatively.

Assuming that (a) and (c) are both correct ((b) may also be correct, but we think it is clumsy), we therefore conclude that "only references cited normatively in the text shall be listed" actually means "only references cited in text that is normative shall be listed".

@RexJaeschke RexJaeschke added Q. for ISO Ready to go to ISO Editor Waiting on ISO Waiting to hear back from ISO Editor and removed next meeting Discuss next meeting Q. for ISO Ready to go to ISO Editor labels Sep 2, 2020
@RexJaeschke RexJaeschke removed the Waiting on ISO Waiting to hear back from ISO Editor label Oct 7, 2020
@franciscave
Copy link

franciscave commented Oct 7, 2020

ISO have confirmed that (a) and (c) are correct, i.e. they both contain normative requirements with reference to ISO 8601, which means that ISO 8601 should be cited in Clause 2 Normative references. On that basis, I believe that my suggested wording of 27 August is OK. I repeat it here for convenience:

In 7.2.5 XML usage add two new requirements. These are not technical changes, as they are implicit currently:

c) All XML namespaces shall be declared in accordance with XML Namespaces.

d) If the XML content includes markup compatibility or extensibility elements or attributes as specified by ISO/IEC 29500-3, the XML content shall be pre-processed by an MCE processor as specified in ISO/IEC 29500-3 prior to validation.

Re-number the current c), d) and e) as e), f) and g).

In 7.5.3.1 remove the parentheses around "as specified by XML Base" and move "as specified in ISO/IEC 29500-3" to the end of the sentence:

An xml:base attribute as specified by XML Base shall not exist in the output XML document resulting from any MCE processing of the Relationships part as specified in ISO/IEC 29500-3.

[We might consider turning this around to make the requirement more clear:

The output document resulting from any MCE processing of the Relationships part, as specified by ISO/IEC 29500-3, shall not contain an xml:base attribute, as specified by XML Base.]

For 9.3.3.2:

This document allows creator, description, identifier, language, subject, and title elements as core property elements. If any of these elements are included, they shall be as specified by ISO 15836-1.

For 9.3.3.3:

This document allows created and modified elements as core property elements. If either or both of these elements are included, they shall be as specified by ISO 15836-2.

@murata2makoto
Copy link

I read the proposal carefully. I like the second rewrite for 7.5.3.1. I have no other comments.

@murata2makoto
Copy link

Here I consider NIST SP 800-56A Rev. 3

The latest draft contains this sentence:

"ECDSA algorithms should be contained within SP 800-56A Rev. 3, Appendix D, and should have a maximum target security strength greater than or equal to 128."

It was written by David LeBlanc. We might want to slightly revise it.

"ECDSA algorithms shown in SP 800-56A Rev. 3, Appendix D should be used. The maximum target security strength should be greater than or equal to 128."

I think that SP 800-56A Rev. 3 should be a normative reference. The JTC1 Editor's is "quite startled to be told that it is only the use of "shall" that makes document content normative!".

But if ISO CS insists, we might want to use an entry in the bibliography.

@murata2makoto
Copy link

Re: XML Namespacees

I propose to add a new bullet between b) and c) in the itemized list in 6.2.5. The new bullet is:

  • XML documents shall conform to XML Namespaces.

@murata2makoto
Copy link

@franciscave

The family of XSD schemas referred to throughout this document is defined in accordance with XML Schema Part 1: Structures and XML Schema Part 2: Datatypes.

I think that the right place for referencing XSD Part 1 is the itemized list in 6.2.5. Probably this sentence in d) should be changed.

XML content shall be valid against the corresponding XSD schema defined in this document.

But how should this be changed? This is beyond me.

@franciscave
Copy link

How about:

"XML content shall be schema-valid with respect to the corresponding XSD schema defined in Annex C of this document."

But the problem is that "schema-valid" isn't defined anywhere. Is it defined in W3C XML Schema Part 1? I don't see it. W3C XML Schema Part 1 says a lot about schema validation, but this refers to validation of schemas and not validation of instances with respect to schemas.

@murata2makoto
Copy link

It is extremely painful to interpret W3C XML Schema.

2.1 Overview of XML Schema
...
Schema-validity assessment has two aspects:

1 Determining local schema-validity, that is whether an element or attribute information item satisfies the constraints embodied in the relevant components of an XML Schema;
2 Synthesizing an overall validation outcome for the item, combining local schema-validity with the results of schema-validity assessments of its descendants, if any, and adding appropriate augmentations to the infoset to record this outcome.
Throughout this specification, [Definition:] the word valid and its derivatives are used to refer to clause 1 above, the determination of local schema-validity.

Throughout this specification, [Definition:] the word assessment is used to refer to the overall process of local validation, schema-validity assessment and infoset augmentation.

I do not know how this should be interpreted. But I would like to use the term "schema-valid" and claim that it is defined by XSD Part 1.

@franciscave
Copy link

So something like this:

"XML content shall be schema-valid, as defined by W3C XML Schema, with respect to the corresponding XSD schema defined in Annex C of this document."

@RexJaeschke
Copy link
Author

RexJaeschke commented Nov 11, 2020

Telcon response to #19 (comment)

Replace the first sentence of 6.2.5, item d) with

XML content shall be schema-valid, as defined by W3C XML Schema, with respect to the corresponding XSD schema defined in Annex C of this document.

@RexJaeschke
Copy link
Author

Telcon response to #19 (comment)

Add a new bullet between b) and c) in the itemized list in 6.2.5. The new bullet is:

  • XML documents shall conform to XML Namespaces.

@RexJaeschke
Copy link
Author

Telcon response to #19 (comment)

List this spec in Bibliography rather than Normative references

Change in 10.5.5 from

"ECDSA algorithms should be contained within SP 800-56A Rev. 3, Appendix D, and should have a maximum target security strength greater than or equal to 128."

to

"ECDSA algorithms shown in SP 800-56A Rev. 3, Appendix D should be used. The maximum target security strength should be greater than or equal to 128."

@RexJaeschke
Copy link
Author

Telcon response to #19 (comment)

In 6.2.5, add the following

new c) If the XML content includes markup compatibility or extensibility elements or attributes as specified by ISO/IEC 29500-3, the XML content shall be pre-processed by an MCE processor as specified in ISO/IEC 29500-3 prior to validation.

Re-number the current c), d) and e) as d), e) and f).

In current c/now d) remove text marked bold below:

Validation of the XML content shall be done only after it is processed by an MCE processor** as specified in ISO/IEC 29500-3**.

In 6.5.3.1

Replace

An xml:base attribute shall not exist in the output XML document resulting from any MCE processing (as specified in ISO/IEC 29500-3) of the Relationships part.

with

The output document resulting from any MCE processing of the Relationships part shall not contain an xml:base attribute, as specified by XML Base.]

For 8.3.3.2:

Replace

This document allows creator, description, identifier, language, subject, and title elements as defined by ISO 15836-1 as core property elements.

with

This document allows creator, description, identifier, language, subject, and title elements as core property elements. If any of these elements are included, they shall be as specified by ISO 15836-1.

For 8.3.3.3:

Replace

This document allows created and modified elements as defined by ISO 15836-2 as core property elements.

with

This document allows created and modified elements as core property elements. If either or both of these elements are included, they shall be as specified by ISO 15836-2.

@murata2makoto
Copy link

"XML content shall be schema-valid, as defined by W3C XML Schema Part 1 and W3C XML Schema Part 2, with respect to the corresponding XSD schema defined in Annex C of this document."

@RexJaeschke
Copy link
Author

RexJaeschke commented Nov 11, 2020

In 6.5.3.3, table entry for Target

Change

The possible values for this attribute are defined by the xsd:anyURI simple type of the W3C Recommendation “XML Schema Part 2: Datatypes”.

to

The range of values for this attribute shall be as defined by the xsd:anyURI simple type of W3C XML Schema Part 2.

Apply a corresponding change to 5 other table entries containing "Part 2 datatypes".

In Normative references change the labels of the Schema Parts to be

W3C XML Schema Structures
W3C XML Schema Datatypes

and all references to them.

@RexJaeschke RexJaeschke added the resolved Proposal adopted by WG4; ready to implement label Nov 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
resolved Proposal adopted by WG4; ready to implement
Projects
None yet
Development

No branches or pull requests

3 participants