S-131 MHI Best Practices

From IHO Nautical Information Processing Working Group
Revision as of 00:17, 18 June 2024 by Rmm (talk | contribs) (information about textual regulations and notes)
Jump to navigation Jump to search

Limitation by Vessels Characteristics and Cargo

(Source - S-131 Edition 1.0.0 DCEG)

Capturing the application of a regulation, recommendation, etc. to specified kinds of vessels

This will generally be modeled by an InclusionType relationship between the abstract supertype AbstractRxN (as the superclass for Regulations, Restrictions, Recommendations, and NauticalInformation information type classes) and the Applicability class.

Typical modeling for application of regulation, etc. to vessels specified by dimensions, cargo, etc.

Encoders may find it easiest to capture the application of a regulation (recommendation , etc.) to a class or set of vessels in three phases:

  1. Encode the operative part of the regulation (the part that describes what the vessels subject to the regulation must or must not do), creating an instance of Regulations (or Recommendations, etc., as appropriate). Descriptions of what kinds of vessels are subject to the regulation must be excluded from the content of the Regulation instance.
  2. Create an Applicability information type and encode the description of what kinds of vessels are subject to (or exempted from) the regulation.
  3. Link the two using an InclusionType with membership=included if the vessels described by Applicability are subject to the regulation, or membership=excluded if they are explicitly exempted from the regulation.

It is not necessary to create separate instances of the regulation for inclusion and exclusion.

Capturing the permissibility or otherwise of a geographic feature for specified kinds of vessels

Encoders may find it easiest to capture the permissibility of a feature to specified kinds of vessels in three phases.

  1. Create the geographic feature if it does not already exist.
  2. Create an Applicability information type and encode the description of what kinds of vessels are required to use the geographic feature.
  3. Link the two using a PemissionType with categoryOfRelationship = required.

For the other relationships (prohibited, not recommended, etc.) steps 2 and 3 should be modified accordingly (i.e., if use by certain kinds of vessels is “not recommended” encode the description of that kind of vessels in an Applicability and create a linking PermissionType with categoryOfRelationship = not recommended). It is not necessary to create a separate instance of the geographic feature for each type of relationship.

Constructing the Applicability information type

Where the source material describes complex conditions, encoders may find it useful to write out the conditions in structured language with grouping parentheses, for example, as “(condition A) AND (condition B) AND (condition C)”, or draw diagrams, before encoding Applicability and its associations.

Note that the model limitation on mixing logical connectives means some forms of conditions which use “nesting” cannot be encoded in a single Applicability instance and multiple instances must be created.

EXAMPLE: The complex condition “(condition A) AND ((condition B) OR (condition C))” must be encoded as two Applicability instances, one with “(condition A) AND (condition B)” and the other with “(condition A) AND (condition C)”.

Example of conversion of complex condition to multiple simple conditions
Complex condition Encode as
(condition A)
AND
((condition B) OR (condition C))
Applicability 1: (condition A) AND (condition B)
Applicability 2: (condition A) AND (condition C)

Data producers may contact NIPWG with questions about encoding complex conditions.

As a last resort, conditions may be written as phrases in natural language and encoded in the information attribute. It is acceptable for an Applicability to have only the information attribute populated.

Textual Regulations and Notes

(Source - S-131 Edition 1.0.0 DCEG)

Use of appropriate information type

The appropriate information type from Regulations, Restrictions, Recommendations, and NauticalInformation should be used depending on the nature of information to be encoded.

  1. Regulations is intended to be used for official rules, laws, and similar source material, i.e., sources that have the force of law or are mandated by a controlling authority. They will generally originate from some kind of administration or authority, including port authorities.
  2. Restrictions is intended for restrictions that constrain the activities of vessels temporarily with or without the legal force, or for longer terms without the force of law; they may be issued by a local authority such as a port captain or US Coast Guard district.
  3. Recommendations is intended for encoding suggestions, limitations, or preferred procedures that are not mandatory.
  4. NauticalInformation is intended for material that is largely informative in nature, of which does not fit into the category of regulation, recommendation, or restriction.

Content

The content of the regulation (or recommendation, restriction, or note) should be encoded using the textContent attribute. Text content should be compact and accessible to the expected audience, and include pertinent information, in summary form if necessary. Generally, avoid including the entire text of regulations where it is complex in structure or unncessarily legalistic or verbose. Instead, condense long regulations or notes into a summary, include exceptions not covered by the summary, and include a reference where the full details can be obtained. References should be accessible to mariners, so they can obtain the complete text.

Textual content may be supplemented by one or more diagrams or sketches using the graphic attribute.

Classification

The classification attributes categoryOfRxN and actionOrActivity codelists in the rxnCode complex attribute should be populated wherever possible, in order to facilitate mariner identification of information relevant to particular route planning or navigation tasks.

  1. Being open enumeration codelists, these attributes allow for additional categories not listed among their standard values. For example, an “under repair” activity might be encoded in the actionOrActivity attribute (as “other: underRepair”).
  2. Note that such extra values will merely be displayed and not processed (for example, the user interface will not use extra values to choose symbols or filter instances of Regulations, whereas it may apply filters to the standard values and/or them in portrayal).

Titles and headlines

The headline attribute of rxNCode should be used to encode brief topic headings describing the textual content of the Regulations object. Topic headings in the source material may be suitable either as-is or being adapted for use in the intended application context (for example, being shortened for readability on an ECDIS screen or auxiliary display).

  1. The headline attribute of the textContent/information attribute may also be used to provide sub-heads but must not duplicate the content of rxNCode/headline.
  2. Where multiple headline attributes are encoded in the same instance of rxNCode complex attribute, they must be ordered as follows:
    1. If the headline values are derived from a source material (such as the published legal text of a government regulation), the ordering must conform to the hierarchy in the source, for example, section headings must precede sub-section headings. It is not necessary to include the entire hierarchy of headings for the portion that is actually encoded in the textContent co-attribute.
    2. If the headline values are not derived from a source text, the ordering should be from general to specific.