DCTAP Generation#
The publish-dctap command generates a Dublin Core Tabular Application Profile (DCTAP) view of a COGS model.
Warning
DCTAP is a flattened projection. Features that DCTAP cannot express must be reported as stable warnings and are not represented as equivalent constraints.
The canonical preserved/approximated list and diagnostic ranges are in Publisher Conformance and Projections.
DCT2010 discloses that native numeric/temporal restrictions require COGS
validation; an XSD datatype IRI alone does not express those restrictions.
Mapping#
every item and composite type receives a shape whose local term retains the exact PascalCase COGS type name, including abstract bases so that PascalCase
valueShapereferences always resolveeffective inherited properties become tabular application-profile rows
model
propertyIDterms use the shared word-aware camelCase RDF property name:IDbecomesidandURLValuebecomesurlValueprimitive values use
literalplus one datatype; item references useIRIand composite values usebnodeplus one declared/base shapelangStringmaps tordf:langStringexpanded Dublin Core properties retain their explicit
dcterms:*terms; they are not remapped into the model namespaceDCTAP’s one constraint cell prefers enumeration, then pattern, then another supported facet; omitted competing constraints produce a warning
type descriptions that have no conforming shape-row cell are omitted with
DCT2009rather than written into a misleading note cellthe generated output is intended for profile and constraint exchange rather than runtime serialization
The model namespace prefix qualifies shape and property identifiers. Its
expanded RDF term base retains a namespace ending in # or / and
otherwise appends #. Source property names and JSON/XML wire names remain
unchanged. Model validation reports COGS-VAL-PROP-008 if distinct source
names collapse to one camelCase RDF property term. For a manually connected
model that bypasses DTO validation, DCTAP reports DCT1001 before publication
and leaves any existing target untouched. No legacy PascalCase model
propertyID aliases are emitted.
The conformance suite checks shape linkage, node/datatype compatibility,
cardinality booleans, supported constraints, and valueShape resolution.
That repository profile check is not independent DCTAP certification.
Ordered collections#
DCTAP cannot represent list ordering. The publisher emits DCT2006 for an
ordered property and never mutates the canonical model or synthesizes helper
types.