-
Notifications
You must be signed in to change notification settings - Fork 38
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Upgrade the specification from ISO 19103:2015 to ISO 19103:2024.
This is incomplete, the following tasks still need to be done: * Review the UML schemas * Verify the Metanorma rendered pages, including reference in bibliography * Review section on `Record` (removed from ISO 19103 but still used in GeoAPI). * Review section on `GenericName` (removed from ISO 19103 but still used in GeoAPI). * Review section on `InternationalString` for replacing the standard source by `PT_FreeText`. #102
- Loading branch information
1 parent
ecbef84
commit 6616837
Showing
16 changed files
with
198 additions
and
149 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,21 @@ | ||
[[JNDI]] | ||
==== Names in JNDI context | ||
|
||
The ISO 19103 name types (<<generic_name>>) define mapping methods from a name to the object identified by that name. | ||
But the mapping methods defined by ISO 19103 are not part of the `NameSpace` interface defined by GeoAPI. | ||
The ISO 19103:2015 name types (<<generic_name>>) define mapping methods from a name to the object identified by that name. | ||
But the mapping methods defined by ISO 19103:2015 are not part of the `NameSpace` interface defined by GeoAPI. | ||
Instead, GeoAPI leaves that functionality to frameworks such as the Java Naming and Directory Interface™ (JNDI). | ||
Java applications which need such mapping may use the methods in the `javax.naming.Context` interface: | ||
|
||
.Java Naming and Directory Interface equivalences | ||
[.compact, options="header"] | ||
|==================================================================================== | ||
|ISO 19103 `NameSpace` member |`org.opengis.util.NameSpace` |`javax.naming.Context` | ||
|`isGlobal` |`isGlobal()` | | ||
|`acceptableClassList` | | | ||
|`generateID(Any)` | | | ||
|`locate(LocalName)` | |`lookup(Name)` | ||
|`name` |`name()` |`getNameInNamespace()` | ||
|`registerID(LocalName, Any)` | |`bind(Name, Object)` | ||
|`select(GenericName)` | |`lookup(Name)` | ||
|`unregisterID(LocalName, Any)` | |`unbind(Name)` | ||
|==================================================================================== | ||
|======================================================================================= | ||
|ISO 19103:2015 `NameSpace` member |`org.opengis.util.NameSpace` |`javax.naming.Context` | ||
|`isGlobal` |`isGlobal()` | | ||
|`acceptableClassList` | | | ||
|`generateID(Any)` | | | ||
|`locate(LocalName)` | |`lookup(Name)` | ||
|`name` |`name()` |`getNameInNamespace()` | ||
|`registerID(LocalName, Any)` | |`bind(Name, Object)` | ||
|`select(GenericName)` | |`lookup(Name)` | ||
|`unregisterID(LocalName, Any)` | |`unbind(Name)` | ||
|======================================================================================= |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,27 @@ | ||
[[collections]] | ||
==== Collections | ||
_From <<ISO19103>> §7.3_ | ||
_From <<ISO19103>> §7.3.2.3_ | ||
|
||
GeoAPI implements ISO 19103 collection interfaces using the standard Collections Frameworks provided by {supported-languages}. | ||
A `Set` is a finite collection of objects where each object appears only once. | ||
A `Bag` is similar to a `Set` except that it may contain duplicated instances. | ||
The order of elements in a `Set` or a `Bag` is not specified. | ||
A `Sequence` is similar to a `Bag` except that elements are ordered. | ||
GeoAPI implements multi-valued properties using the standard Collections Frameworks provided by {supported-languages}. | ||
If the property has the `isUnique` meta-property, then the collection is a `Set`: | ||
a finite collection of objects where each object appears only once in unspecified order. | ||
If the property has the `isOrdered` meta-property, then the collection is a `Sequence`: | ||
a collection of object where elements are ordered and may appear many times. | ||
|
||
.Collections mapping | ||
[options="header"] | ||
|======================================================== | ||
|ISO 19103 interface |Java type |Python type | ||
|`Collection` |`java.util.Collection` |`Sequence` | ||
|`Bag` |`java.util.Collection` |`Sequence` | ||
|`Set` |`java.util.Set` |`Set` | ||
|`Sequence` |`java.util.List` |`Sequence` | ||
|`Dictionary` |`java.util.Map` |`dict` | ||
|======================================================== | ||
|=============================================================== | ||
|Meta-property |ISO 19103:2015 |Java type |Python type | ||
|`isUnique` |`Set` ^(1)^ |`java.util.Set` |`Set` | ||
|`isOrdered` |`Sequence` ^(1)^ |`java.util.List`|`Sequence` | ||
| |`Dictionary` |`java.util.Map` |`dict` | ||
|=============================================================== | ||
|
||
Notes: | ||
|
||
* (1) Deprecated in ISO 19103:2024, but listed because still present in some standards. | ||
|
||
Unless otherwise required by the semantic of a property, GeoAPI prefers to use the `Collection` type in Java method signatures. | ||
This allows implementers to choose their preferred subtypes, usually `Set` or `Sequence`. | ||
This allows implementers to choose their preferred subtypes, usually `Set` or `List`. | ||
The `Set` type is not the default type because enforcing element uniqueness may constrain implementations to use hash tables | ||
or similar algorithms, which is not always practical. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.