4. Reading a definition
ded0.10.14. Reading a definition
Contents of DED 0.1
A host reads a DED definition in these steps.
- Recognise. A file is a DED definition of a designer type when its envelope names that type's origin. Each binding a designer type names for a shared extension (
.yaml,.json,.xml) MUST use the envelope as its marker (FBL section 12.2):{rootKey: "designer", value: "<origin>"}for YAML and JSON, and apatternmatching the root element's start tag with thatdesignerfor XML. A registration (FBL section 8) MAY still name the designer type for a file that lacks the envelope; the binding's header then decides (FBL section 5.6): a header that is notrequiredreads the file and reports the difference, arequiredone, as the Knowledge designer's are, makes the file unreadable. - Check the version. A
dedof0.1is read as this document says. A host MUST open a definition with a later version of DED read-only, with the reason, unless it implements that version. - Find the designer type. A host MUST open a definition whose
designernames no designer type it has installed read-only, if at all, with the reason naming the origin. It MUST NOT read such a definition through another designer type's bindings. - Read the content through the bindings of the designer type's DESL specification (DESL section 10.1), which check the envelope as their header and report what they find.
When a registration and the envelope name different designer types, the envelope decides and the host reports the difference as a finding.