Private Properties
Some software that implements the Frictionless Data specifications may need to store additional information on the various Frictionless Data descriptors.
For example, a data registry that provides metadata via datapackage.json
may wish to set an internal version or identifier that is system-specific, and should not be considered as part of the user-generated metadata.
Properties to store such information should be considered “private”, and by convention, the names should be prefixed by an underscore _
.
Implementations
There are no known implementations at present.
Specification
On any Frictionless Data descriptor, data that is not generated by the author/contributors, but is generated by software/a system handling the data, SHOULD
be considered as “private”, and be prefixed by an underscore _
.
To demonstrate, let’s take the example of a data registry that implements datapackage.json
for storing dataset metadata.
A user might upload a datapackage.json
as follows:
The registry itself may have a platform-specific version system, and increment versions on each update of the data. To store this information on the datapackage itself, the platform could save this information in a “private” _platformVersion
property as follows:
Usage of “private” properties ensures a clear distinction between data stored on the descriptor that is user (author/contributor) defined, and any additional data that may be stored by a 3rd party.