sofwerx / cdb2-concept

CDB modernization
0 stars 1 forks source link

Capture Attribute-Dataset Constraints in CDB Metadata #24

Open UnclePoole opened 3 years ago

UnclePoole commented 3 years ago

In the CDB 1.1 specification, the constraints of which attributes are present for which feature types is indirectly specified by the human-readable table 5-27, where attributes are constrained to specific datasets with a constraint level of "Mandatory", "Preferred", "Optional", or "Deprecated." This constraint information is not currently captured in any machine-readable XML metadata, so validation tools that rely on it must make hard-coded assumptions derived from the specification.

The proposed CDB X feature dictionary would capture these constraints in an Entity/Attribute binding table, where the attribute constraints can be specified per feature type, not just per dataset. The proposed dictionary also links Entity types (features) to Themes (datasets) separately.

It should be possible to update the CDB 1.x specification in a backward-compatible way to add equivalent information, most likely as a new XML file in the Metadata folder.

ryanfranz commented 3 years ago

Yes, we should do this for CDB 1.3 too.

cnreediii commented 3 years ago

Agreed. Perhaps a CR that simple copies Greg's suggestion into the CR body?

UnclePoole commented 3 years ago

@cnreediii @ryanfranz I would support that.

I will also note that some folks (Cognitics I think?) have already created a machine-readable version of this information for SE Core related work, so that may be a good input to the CR.

UnclePoole commented 3 years ago

@cnreediii To your point, having machine-readable versions of these things would also allow regenerating the graphics in the spec to correct naming issues.