Hello everyone, I am working on a project regarding the use of Solid Pods for marketing in the retail sector and I want to be able to provide some demographic data via the webid.
When some data like age has not been provided by the user itself, I would like for retailers to be able to add this to the profile. However, I saw in the inrupt docs (Manage User Profile — Inrupt JavaScript Client Libraries) that third parties should not write to the webid profile document and instead to an extended profile document.
But what if there is no extended profile document? Is there any way to create a public document and link it from the webid profile document? Or should I take a different approach?
If the WebID profile document has either rdfs:seeAlso or foaf:primaryTopicOf predicates, those link to extended profile documents and if one of them is writable that is a good place. Apps should know to look for extended documents with those predicates. If neither of those predicates exist you either need to add them to the WebID Profile document (which may not be even possible) or use the TypeIndexes or SAI (Solid Interoperability). There should be a publicTypeIndex predicate pointing to a writable file where you can specify the location of various types of data. You would need to read the SAI spec to learn how it would be useable for this. Given that you are dealing with commerce and SAI is a more security conscious approaach, that may be your best bet,