diff --git a/.github/workflows/xml_lint.yml b/.github/workflows/xml_lint.yml index 6ae7ef0d3..733b83828 100644 --- a/.github/workflows/xml_lint.yml +++ b/.github/workflows/xml_lint.yml @@ -12,11 +12,11 @@ on: - master paths: - 'libsel4/**/sel4*.xml' - - 'libsel4/**/sel4*.dtd' + - 'libsel4/**/sel4*.xsd' pull_request: paths: - 'libsel4/**/sel4*.xml' - - 'libsel4/**/sel4*.dtd' + - 'libsel4/**/sel4*.xsd' jobs: xmllint: @@ -29,4 +29,4 @@ jobs: - name: run xmllint run: | find libsel4 -name "sel4*.xml" | \ - xargs xmllint --dtdvalid libsel4/tools/sel4_idl.dtd --noout + xargs xmllint --schema libsel4/tools/sel4_idl.xsd --noout diff --git a/libsel4/tools/sel4_idl.dtd b/libsel4/tools/sel4_idl.dtd deleted file mode 100644 index 93e703055..000000000 --- a/libsel4/tools/sel4_idl.dtd +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/libsel4/tools/sel4_idl.xsd b/libsel4/tools/sel4_idl.xsd new file mode 100644 index 000000000..b8d71f720 --- /dev/null +++ b/libsel4/tools/sel4_idl.xsd @@ -0,0 +1,138 @@ + + + + + + seL4 api generator schema. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/manual/Makefile b/manual/Makefile index 1b86009d1..77f946356 100644 --- a/manual/Makefile +++ b/manual/Makefile @@ -86,7 +86,7 @@ GenerationTool = tools/parse_doxygen_xml.py GenerateObjectInvocationTool = tools/gen_invocations.py -InterfaceDtd = $(Libsel4Dir)/tools/sel4_idl.dtd +InterfaceDtd = $(Libsel4Dir)/tools/sel4_idl.xsd .PHONY: FORCE diff --git a/manual/tools/gen_invocations.py b/manual/tools/gen_invocations.py index d629130c8..ad0731019 100755 --- a/manual/tools/gen_invocations.py +++ b/manual/tools/gen_invocations.py @@ -123,7 +123,7 @@ def main(): args = parser.parse_args() if args.dtd is not None: - dtd = etree.DTD(args.dtd) + dtd = etree.XMLSchema(etree.parse(args.dtd)) for f in args.files: xml = etree.parse(f) if not dtd.validate(xml):