A Solid product is a object in a Solid storage (or POD) which holds data about
a product that can be provided by a Goods/Services Provider (GSP), see [solid-gsp].
Solid products are all built inside a single folder (LDP Container) in a Solid storage.
Let us call the URI of that folder -- less its final '/' -- $ROOT.
It could be say, https://alice.example.org/myProduct/. Developers must never make assumptions
about where a Solid product is stored as users should be able to choose the location they want.
The product object is defined in the $ROOT/index document.
2.1. Access rights
By default, the products container are private. When one wants to make a product public, private properties can still be defined in a separated private document, let’s says $ROOT/index-private, linked with the public $ROOT/index document using the rdfs:seeAlso predicate.
2.2. Discovery
TDB.
3. Functional products
TBD.
4. Technical products
TBD.
5. Supplied products
A Solid SuppliedProduct follows the rules defined in the § 2 Generalities section.
The RDF type of the SuppliedProduct is dfc-b:SuppliedProduct.
For instance a "tomato" SuppliedProduct would be stored at https://alice.example.org/tomato/index:
Conformance requirements are expressed
with a combination of descriptive assertions
and RFC 2119 terminology.
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL”
in the normative parts of this document
are to be interpreted as described in RFC 2119.
However, for readability,
these words do not appear in all uppercase letters in this specification.
All of the text of this specification is normative
except sections explicitly marked as non-normative, examples, and notes. [RFC2119]
Examples in this specification are introduced with the words “for example”
or are set apart from the normative text
with class="example",
like this:
This is an example of an informative example.
Informative notes begin with the word “Note”
and are set apart from the normative text
with class="note",
like this: