|
Post by vanou on Jul 9, 2023 8:22:51 GMT
In Redfish Data Model Spec (DMTF0268), Bios schema has AttributeRegistry property. When I saw 'Redfish School - Bios'[1] and DSP2043_2023.1[2], value of AttributeRegistry property of Bios seems to be name resource ID of AttributeRegistry resource, not @odata.id. Here I wonder how can I retrieve AttributeRegistry resource representing BIOS attributes? At Redfish School slide 6[1], AttributeRegistry specified at Bios seems to be located under /redfish/v1/Registries. However, under /redfish/v1/Registries is MessageRegistryFileCollection according to [2] and only MessageRegistryFile resource can be located at /redfish/v1/Regstries. If only MessageRegistryFile resource can be located under /redfish/v1/Registries, how can I find/retrieve AttributeRegistry resource specified at Bios resource? [1] www.dmtf.org/sites/default/files/Redfish_School-BIOS_Configuration.pdf[2] www.dmtf.org/sites/default/files/standards/documents/DSP2043_2023.1.zipRegards
|
|
|
Post by mraineri on Jul 10, 2023 12:52:16 GMT
It will in fact be within the MessageRegistryFileCollection. In hindsight, this was a poor name; at the time, we only had message registries defined, and as the scope of registries grew, so did the MessageRegistryFileCollection. When you go to a particular MessageRegistryFile resource, the pointers to the registries themselves are very generic and applicable to any registry, including the BIOS attribute registry. We've been updating the descriptions of the properties and resource over the years to show this, but the resource name can be confusing; unfortunately we can't update the name of a resource.
|
|
|
Post by vanou on Jul 11, 2023 5:53:02 GMT
Thanks mraineri for reply. Maybe, 1st statement is correct and 2nd statement misspelled (not MessageRegistryFile resource, but MessageRegistryFileCollection resource), right? If so, AttributeRegistry representing Bios attribute can be member of MessageRegistryFileCollection (AttributeRegistry can appear under /redfish/v1/Registries), is this correct? (And MessageRegistry and PriviledgeRegistry can also be member of MessageRegistryFileCollection i.e under /redfish/v1/Registries .)
|
|
|
Post by mraineri on Jul 11, 2023 12:59:03 GMT
MessageRegistryFileCollection will contain a set of MessageRegistryFile resources. Each MessageRegistryFile resource represents the metadata for a particular registry supported by the service. Within the MessageRegistryFile resource, there will be URIs, language codes, and other information to direct the client to downloading the desired registry (which could be a MessageRegistry, AttributeRegistry, or PrivilegeRegistry). So, for example...
- /redfish/v1/Registries would be a MessageRegistryFileCollection
- /redfish/v1/Registries/ContosoBIOSRegistry.v1_0_0 would be a MessageRegistryFile
- The "Uri" properties inside /redfish/v1/Registries/ContosoBIOSRegistry.v1_0_0 would point to an AttributeRegistry on the service, and the "PublicationUri" properties inside the same resource would point to the same AttributeRegistry hosted on an external website
|
|
|
Post by vanou on Jul 12, 2023 10:09:17 GMT
Thanks for reply and explanation.
Now I understand what is expected under /redfish/v1/Registries and how MessageRegistryFile points to Registry resources (AttributeRegistry, MessageRegistry and PrivilegeRegistry).
When Uri property of MessageRegistryFile points to AttributeRegistry hosted by Redfish service, what is candidate path for AttributeRegistry? I saw DSP0268, but I'm not sure which REST path is suitable for putting AttributeRegistry resource for Bios attribute. If there is suggestion or recommendation, I appreciate it.
Regards
|
|
|
Post by mraineri on Jul 12, 2023 12:52:24 GMT
At this time we don't have a recommended URI format for the underlying registry itself. It may make sense to keep it in line with the /redfish/v1/Registries hierarchy the way we have /redfish/v1/Schemas as the recommended path for schema files. Something like this: /redfish/v1/Registries/ContosoBIOS.v1_0_0.json
One thing that could cause an issue is if folks are including ".json" in the path for their MessageRegistryFile resources. I don't think this should happen though, but I can raise this to see if others would like to add a recommendation in the spec regarding this.
|
|
|
Post by vanou on Jul 13, 2023 10:39:36 GMT
Thanks for candidate path.
Even Uri property of MessageRegistryFile can indicate Redfish client the Redfish hosted uri and the client can retrieve AttributeRegistry with that uri, it's better to have recommended URI for underlying registry. Otherwise, if client request Redfish resource with another media type (e.g. XML), we need to put multiple of URI for each media type (e.g. /redfish/v1/Registries/ContosoBIOS.v1_0_0.xml for XML, /redfish/v1/Registries/ContosoBIOS.v1_0_0.json for JSON).
|
|
|
Post by mraineri on Jul 13, 2023 12:17:33 GMT
In that example, I would expect a 404 as a response. Today all registries are JSON-encoded, so requesting a file ending in .XML would always be invalid.
Even if we don't define a recommended URI for the underlying registry file, following the value of the "Uri" property with no modification is intended to be guaranteed to always work. So, if the "Uri" in the resource "/redfish/v1/Registries/ContosoBIOS.v1_0_0" contains "/redfish/v1/repository/registries/bios_attributes", a client performing a GET on that URI will get a JSON file for the "ContosoBIOS.v1_0_0" registry.
|
|
|
Post by vanou on Sept 5, 2023 2:41:04 GMT
Sorry for late for reply. Thanks for comments/replies. I'll discuss about this with my company's HW team. Thanks a lot again.
|
|
|
Post by sivaranjaniv on Jul 31, 2024 10:40:42 GMT
As per the DMTF spec www.dmtf.org/sites/default/files/standards/documents/DSP0266_1.17.0.pdf, Redfish message registry files, privilege registry files, and BIOS attribute registry files. These files are use the registry name to construct the file name, in this format of <RegistryName>.<MajorVersion>.<MinorVersion>.<Errata>.json For example, the file name of the Base Message Registry v1.0.2 is Base.1.0.2.json. According to this, May I know whether the below URI will be present or not? https://{{ip}/redfish/v1/registeries/<str>/<str> Thanks Ranjani
|
|
|
Post by mraineri on Jul 31, 2024 12:51:14 GMT
In the "Redfish-defined URIs and relative reference rules" clause of the Redfish Spec, we define the URI pattern "/redfish/v1/Registries/<RegistryFile>". So, for Base.1.0.2.json, it would be located at "/redfish/v1/Registries/Base.1.0.2.json". However, that assumes the service is keeping a local copy of the registry file.
|
|