Hi Pantelis and Rob, After the workshop next week, I'm trying to capture the direction we're going for the schema format. Roughly I think we're aiming towards: - Schema files to be written in YAML - DT files shall remain written in DTS for the foreseeable future. YAML will be treated as an intermediary format - That said, we'll try to make design decisions that allow YAML to be used as a source format. - All schema files and yaml-encoded-dt files must be parsable by stock YAML parsers - Schema files to use the jsonschema vocabulary - (jsonschema assumes json files, but YAML is a superset so this will be okay) - Extended to add vocabulary for DT concepts (ignored by stock validators) - C-like expressions as used in Pantelis' yamldt could be added in this way - Need to write a jsonschema "metaschema" do define DT specific extensions - metaschema will be used to validate format of schema files - Existing tools can confirm is schema files are in the right format. - will make review a lot easier. The yaml encoding produced by yamldt is a good start, but some changes need to be made from the current code to be workable: - The redefinition of the anchor/alias syntax needs to be dropped. - We need a labels/reference syntax instead. - I'm using a $labels property to contain a list of labels which is working for me, but I'm open to other suggestions - A YAML style !phandle or !path type definition would work for parsing references. - At the top level, the yaml-encoded-dt needs to be structured as a list, not a map. - Using a list will properly accounts for how multiple top level trees are overlayed to create the final tree. - I'm using a $path property to encode the path of each top level node. Again, I'm open to suggestions for a different approach Pantelis, do you think you can rework yamldt to use that encoding? I'm currently working on what is needed for a metaschema, and an engine for validating device-specific schema files using a standard jsonschema validation library. I'll post a git tree once I've got something worth looking at. Cheers, g. -- To unsubscribe from this list: send the line "unsubscribe devicetree-spec" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html