mirror of
https://github.com/nasa/fprime.git
synced 2025-12-11 04:35:25 -06:00
* spelling: async Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: basic Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: file for Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: files Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: generic Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: github.com/nasa/fprime Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: header Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: into Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: multiline Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: sync Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * spelling: workaround Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> * Update check-spelling to v0.0.21 Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com> Co-authored-by: M Starch <LeStarch@googlemail.com>
109 lines
3.5 KiB
XML
109 lines
3.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<grammar
|
|
xmlns="http://relaxng.org/ns/structure/1.0"
|
|
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
|
|
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
|
|
|
<!-- This is a common file for both interface_schem and internal_interface_schema. These two were originally merged into this file, but had to be split as a workaround to keep the same definitions but not validate component files that had the interface tag in it. -->
|
|
|
|
<include href="common_elements.rng"/>
|
|
|
|
<start>
|
|
<ref name="interface_root_define"/>
|
|
</start>
|
|
|
|
<define name="interface_root_define">
|
|
<a:documentation>Used for interface files.</a:documentation>
|
|
<choice>
|
|
<!--Choice between interface or port root tag.-->
|
|
<element name="interface">
|
|
<a:documentation>Allows for one interface.</a:documentation>
|
|
<ref name="interface_define"/>
|
|
</element>
|
|
|
|
<element name="port">
|
|
<a:documentation>Allows for one interface.</a:documentation>
|
|
<ref name="interface_define"/>
|
|
</element>
|
|
</choice>
|
|
|
|
</define>
|
|
|
|
<define name="interface_define">
|
|
<interleave>
|
|
<!-- Required Attributes -->
|
|
|
|
<attribute name="name">
|
|
<a:documentation>Interface name.</a:documentation>
|
|
<text/>
|
|
</attribute>
|
|
|
|
<!-- Optional Attributes -->
|
|
|
|
<optional>
|
|
<attribute name="priority">
|
|
<data type="integer"/>
|
|
</attribute>
|
|
</optional>
|
|
|
|
<optional>
|
|
<attribute name="namespace">
|
|
<a:documentation>Namespace in which the interface is in.</a:documentation>
|
|
<text/>
|
|
</attribute>
|
|
</optional>
|
|
|
|
<!-- Elements -->
|
|
|
|
<zeroOrMore>
|
|
<element name="include_header">
|
|
<a:documentation>Defines the header file of the interface.</a:documentation>
|
|
<data type="anyURI"/>
|
|
</element>
|
|
</zeroOrMore>
|
|
|
|
<zeroOrMore>
|
|
<element name="import_serializable_type">
|
|
<a:documentation>Imports serializable types.</a:documentation>
|
|
<data type="anyURI"/>
|
|
</element>
|
|
</zeroOrMore>
|
|
|
|
<zeroOrMore>
|
|
<element name="import_enum_type">
|
|
<a:documentation>Imports enum types.</a:documentation>
|
|
<data type="anyURI"/>
|
|
</element>
|
|
</zeroOrMore>
|
|
|
|
<zeroOrMore>
|
|
<element name="import_array_type">
|
|
<a:documentation>Import array XML files.</a:documentation>
|
|
<data type="anyURI"/>
|
|
</element>
|
|
</zeroOrMore>
|
|
|
|
<zeroOrMore>
|
|
<ref name="args_define"/>
|
|
</zeroOrMore>
|
|
|
|
<optional>
|
|
<ref name="return_define"/>
|
|
</optional>
|
|
|
|
<optional>
|
|
<ref name="comment_define"/>
|
|
</optional>
|
|
</interleave>
|
|
</define>
|
|
|
|
<define name="args_define">
|
|
<element name="args">
|
|
<a:documentation>One or more arguments.</a:documentation>
|
|
<zeroOrMore>
|
|
<ref name="arg_define"/>
|
|
</zeroOrMore>
|
|
</element>
|
|
</define>
|
|
</grammar>
|