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

Abstract Basic Types #148

Open
cmheazel opened this issue Jun 6, 2024 · 6 comments
Open

Abstract Basic Types #148

cmheazel opened this issue Jun 6, 2024 · 6 comments

Comments

@cmheazel
Copy link
Collaborator

cmheazel commented Jun 6, 2024

The SWG approved the following motion at the May 30, 2024 meeting:

"Anywhere there is a text string in the POI you can have multiple text strings and you can indicate a language for the text string. In order to enable that, we are going to remove all requirements for computer science primitives from the spec, add a section in the conventions on how to handle international text, and how text strings can be augmented with an optional language attribute using international language codes."

  1. Set the cardinality of all Character Strings to allow more than one instance.
  2. Add additional text to Conventions as described above.
  3. Remove all requirements for Basic Data Types (ISO 19103 types) and the associated Tests.
  4. Add a section to the Conformance section to address Basic Data Type conformance.
@cmheazel
Copy link
Collaborator Author

cmheazel commented Jun 6, 2024

Being worked in the Abstract-Basic-Types branch.

@cmheazel
Copy link
Collaborator Author

Added the following to the Conformance section:

=== Primitive Data Types

The Primitive Data Types (CharacterString, Integer, DateTime, etc.) are defined in ISO 19103. These Data Types are universal concepts. Therefore, no explicit conformance testing for these concepts is needed. Testing for conformance with the technology-specific implementation of these concepts should be documented in the corresponding Implementation Specification.

@cmheazel
Copy link
Collaborator Author

Added the following to the Conventions Section:

=== International Text

Not all users will speak the same language. Therefore a POI Standard should support international text. While internationalization techniques are specific to the implementing technology, this Conceptual Standard should provide some guidence on the desired characteristics of such an implementation.

To that end, this Standard recommends the following conventions for implementing internationalized text in an Implementation Specification:

  • All text strings should have cardinality greater than one.
  • Text strings can have an associated language attribute.
  • These language attributes should be populated with an international language code.

@howardtrickey
Copy link
Collaborator

Is this text in the github repository yet? I couldn't find it.

@howardtrickey
Copy link
Collaborator

Also, what do we do about the fact that the current normative sections and annex does not follow this advice? For example, in the Abstract Feature, there is a "description" field that is a CharacterString with cardinality [0..1]. In annex b there are numerous places with that [0..1] cardinality on character strings. Since these types are copied from other standards, we can't change them (right?), so does that mean the Best Practices should recommend against using these classes as-is in the (IMO usual) case where the POIs are internationalized.

@cmheazel
Copy link
Collaborator Author

The changes are in the Abstract-Basic-Types branch. I'll do a pull request in a short while, then you can see the deltas.

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

No branches or pull requests

2 participants