-
Notifications
You must be signed in to change notification settings - Fork 1
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
6.X-12 ISO 19115 files #29
Comments
The reference from the dataset is ok, but there must be an element for the 19115 metadata file itself. The reason is that there should be not a single file in the exchange set that does not carry a digital signature. I think S100_SupportFile_Metadata would do the job. |
I also think S100_SupportFileDiscoveryMetadata would do. Also, add a value to the S100_SupportFileFormat enumeration: There is a generic "XML" in the S100_SupportFileFormat enumeration but indicating that it is ISO metadata would be better. The supportFileSpecification attribute of S100_SupportFileDiscoveryMetadata can provide more information about which edition of 19115-x is being used. |
Hi,
figures look good. The only issue I see so far is that they not describe the use case that support files may support catalogues (e.g. the translation files)
I think there should be an association between S100_SupportFileDiscoveryMetadata and S100_CatalogueDiscoveryMetadata.
A better way would be to introduce an abstract class S100_DiscoveryMetadata with the common members of S100_DatasetDiscoveryMetadata, S100_SupportFileMetadata, and S100_CatalogueDiscoveryMetaData.
Then derive the latter three classes from the abstract base class and have an association ‘supports’ between S100_SupportFileMetadata and S100_DiscoveryMetadata.
This would allow that support files supports any other file even other support files.
Holger Bothien
Product Manager
P +49 40 853586940
sevencs.com
From: rmalyankar ***@***.***>
Sent: Friday, 28 January 2022 05:28
To: IHO-S100WG/TSM8 ***@***.***>
Cc: Holger Bothien ***@***.***>; Comment ***@***.***>
Subject: Re: [IHO-S100WG/TSM8] 6.X-12 ISO 19115 files (Issue #29)
New figures. The white boxes are "structural" classes that represent objects such as dataset files, rather than blocks of XML.
Figure 17-2 S-100 Exchange Set:
[V5 0 Fig 17-2 S100 ExchangeSet]<https://user-images.githubusercontent.com/51188078/151486309-a7726df8-2704-4655-ac0f-a6bc31214ee2.png>
Figure 17-5 (S-100 Exchange Set Catalogue):
[V5 0 Fig 17-5 S100 ExchangeSetCatalogue]<https://user-images.githubusercontent.com/51188078/151487151-9c558e78-a6c3-40b1-9ad2-8b80e6b88dcd.png>
—
Reply to this email directly, view it on GitHub<#29 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AVFWFFI2S4CJETNRQDJNSI3UYILM7ANCNFSM5LXMH32A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you commented.Message ID: ***@***.******@***.***>>
|
I'm going to apply Occam's razor to this discussion, and add two attributes to S100_SupportFileDiscoveryMetadata instead. The associations in question will be removed altogether or changed to dependencies (dependencies are conceptual links and are not mapped to XML tags in the XML exchange catalogue).
I do not agree that the structural classes should have different names. The S100_ structure classes all represent things that are defined in the S-100 context and Part 17 4.1 explains them. ISOMetadataFile represents exactly what its name indicates: an ISO-format metadata file. |
I like the application of Occam's razor in this context. The diagrams look ok to me and I don't have any strong feelings on how these relationships are represented as the UML is largely illustrative and most OEMs will be guided by the schemas and example datasets (as our IEC representative will tell us). supportedResource I think is concise and to the point and we just use that as a generic relationship name, the enumeration values are ok I think but I'm not sure about "product" or "application". I think "other" is fine - it's not actually massively important what the supportedResourceType is, is it? multiplicities are fine with me 0.* so you can have supportingResources which support nothing (they support the "exchange set" - this accounts for README.TXT type elements, and other elements aggregators / distributors may wish to insert at a later date).... The diagrams I'm not so concerned about - it does strike me that the easier way of doing this is to dispense with exchange set metadata as a separate concept and just design a product specification for it. Then you have a complete UML language to describe the structure and its interrelationships. dataset metadata are just FeatureTypes and supporting resources are just information types. you'd need to define a generic XML schema to encode it but much of the hard work is done and you don't need a completely separate diagramming language to describe such structures. We did a testbed projectt with Geonovum doing S-100 metadata in this fashion so it could be accessed via OGC API Records - in the OGC API methodology the metadata API (OGC API Records) is an extension of the generic OGC API Features - there's simply no concept of having different structures for metadata and data... Just a thought - possibly for a future incarnation of these things. |
Looks good, I think these are a big improvement over what was in version 4.
Catalog updates will likely require more work in the future; recommend that these are 0..* so as not to restrict future developments.
|
Draft enumeration for supported resource types added here |
Given that there is no convention, and given that even datasets can be reissued, I can change the remarks for dataset through product to just supportedResource = identifier for the dataset, etc., and leave the question of exactly how they are identified open until a convention is published. Also, add a note saying conventions for identifiers are still to be developed. |
Just to flag - Holger and I are working on language packs with CHS/CCG. This will generate a number (0..*) of language packs containing translations of feature catalogue items. This is being done under a new Part 18 (as decided by S100WG at the meeting). The only issue for this group I believe is that a language_pack supports a feature catalogue providing a mechanism for translating some of its content. the nature of the supporting resource in this case (the language pack) can either be determined from the content (it's an XML file with a root element of "languagePack" for instance) or via the metadata where the S100_SupportedResourceType attribute...). Worth consideration - I'll put some thoughts together on it but just flagging it now before Part 18 is drafted. |
The other thing to note is that the meeting we had re: identification of resources concluded there's so much to consider as regards the maintenance of state on the implementing system that trying to get it perfect now is impossible. Some thorough testing of this part is likely to result in some changes given there's a need to produce full exchange sets, partuial exchange sets, delta exchange sets etc... and the various encodings and product specs have different updating models in them. Add in reissues and cancellations to the requirement to update/replace supporting resources and I think the general consensus was we can't test all these things exhaustively now - we will need to do scenario testing and then recommend either corrections/clarifications to this part of S-100 and/or clarifications in S-98 Annex C in regard to ECDIS... I think we're close here and reversing the associations basically works but until we've done it in practice we simply won't be able to exercise all the possibilities.... |
There may not be a target discovery block in the exchange set especially if it is an update. Also, not mentioning the type means that all discovery blocks must be examined to find out what it supports. Codelist dictionaries are support files and would support all datasets for a product version. Is there a realistic example of a support file that supports multiple types of resources? If so, it should be split into multiple files that each support one type, otherwise management of resources grows over-complicated. I will rename product to productVersion and add productFamily (Datasets for any active version of a product specification.) |
Recommend add a value to specify an exchange catalog: What Raphael has added identifies the type of the file referenced from the support file. What Jonathan seems to want is to identify the type of the support file itself.
|
No, a comprehensive search is not needed if you know what type of resource it supports. You can use the type to limit it.
This assumes or probably forces a particular implementation of metadata, which is not a good idea.
Don't see the need for this, but don't mind adding it.
Language packs should have file name conventions that identify them as language packs. Or the S100_SupportFileFormat enumeration can be extended with "LanguagePack". |
In Ed. 4.0.0
The ISO 19115 metadata file is referenced from S100_DatasetDiscoveryMetadata by the element S100_19115DatasetMetadata which is a role in Figure 4a-D-2 implemented as a gcx:FileName reference and carries the name of the ISO 19115 metadata file. So even in 4.0.0 there is an indication whether an ISO 19115 metadata file is present for a dataset as well as its name.
In Ed. 5.0.0
The 4.0.0 modelling is carried over to Figure 4a-D-5. The implementation would be similar with a change to the role name. Since Figure 4a-D-5 desribes the exchange catalog (CATALOG.XML), there is a note saying it is an external file (meaning, external to the exchange catalog).
I can add the S100_19115DatasetMetadata box as a (white) block in Figure 4a-D-2 and aggregate it to S100_ExchangeSet (and change its background in 4a-D-5 to conform).
On aggregations vs. compositions: Portrayal and feature catalogues being common to all datasets in the product, they need not be deleted when the exchange set is removed. Since some support files are going to be shared based on the support file discussion we have been having, some of them (and their discovery metadata) would also be retained. In fact, since an exchange set could be an archive acting as a "delivery package", perhaps even datasets and their discovery metatata should be retained until the dataset is cancelled, or voluntarily removed, or goes out of license?
The text was updated successfully, but these errors were encountered: