Files
paparazzi/conf/modules/module.dtd
T
Gautier Hattenberger 62646d68de Modules recommends and suggests (#3005)
Add two new items in module's dependency:
- recommends: a recommended module tells the sorting algo that if the module is found, it should be sorted accordingly. It is useful for optional dependencies, like shell or mission in some modules
- suggests: if a functionality is not provided by the user, a module can suggest a list of modules that can provide them. It is a convenient way to have "default" modules.

As a result the former autoload node is removed and replaced by suggested modules.
2023-03-07 17:14:15 +01:00

163 lines
3.2 KiB
DTD

<!-- Paparazzi Modules DTD -->
<!ELEMENT module (doc,settings_file*,settings*,dep?,header?,init*,periodic*,event*,datalink*,makefile*)>
<!ELEMENT doc (description,(define|configure|section)*)>
<!ELEMENT settings_file (file*)>
<!ELEMENT settings (dl_settings?)>
<!ELEMENT dep (depends?,conflicts?,provides?,recommends?,suggests?)>
<!ELEMENT depends (#PCDATA)>
<!ELEMENT conflicts (#PCDATA)>
<!ELEMENT provides (#PCDATA)>
<!ELEMENT recommends (#PCDATA)>
<!ELEMENT suggests (#PCDATA)>
<!ELEMENT header (file*)>
<!ELEMENT init EMPTY>
<!ELEMENT periodic EMPTY>
<!ELEMENT event EMPTY>
<!ELEMENT handler EMPTY>
<!ELEMENT datalink EMPTY>
<!ELEMENT makefile (configure|define|include|flag|file|file_arch|raw|test)*>
<!ELEMENT test (configure|define|include|file|file_arch|shell)*>
<!ELEMENT section (define|configure)*>
<!ELEMENT description (#PCDATA)>
<!ELEMENT configure EMPTY>
<!ELEMENT define EMPTY>
<!ELEMENT include EMPTY>
<!ELEMENT flag EMPTY>
<!ELEMENT file EMPTY>
<!ELEMENT file_arch EMPTY>
<!ELEMENT shell EMPTY>
<!ELEMENT raw (#PCDATA)>
<!ELEMENT dl_settings (dl_setting|dl_settings)+>
<!ELEMENT dl_setting (strip_button|key_press)*>
<!ELEMENT strip_button EMPTY>
<!ELEMENT key_press EMPTY>
<!ATTLIST module
name CDATA #REQUIRED
dir CDATA #IMPLIED
task CDATA #IMPLIED>
<!ATTLIST header>
<!ATTLIST init
fun CDATA #REQUIRED
cond CDATA #IMPLIED>
<!ATTLIST periodic
fun CDATA #REQUIRED
period CDATA #IMPLIED
freq CDATA #IMPLIED
delay CDATA #IMPLIED
start CDATA #IMPLIED
stop CDATA #IMPLIED
autorun (TRUE|FALSE|LOCK) #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST event
fun CDATA #REQUIRED
cond CDATA #IMPLIED>
<!ATTLIST datalink
message CDATA #REQUIRED
fun CDATA #REQUIRED
class CDATA #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST makefile
target CDATA #IMPLIED
firmware CDATA #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST section
name CDATA #REQUIRED
prefix CDATA #IMPLIED>
<!ATTLIST configure
name CDATA #REQUIRED
value CDATA #IMPLIED
case CDATA #IMPLIED
default CDATA #IMPLIED
description CDATA #IMPLIED>
<!ATTLIST define
name CDATA #REQUIRED
value CDATA #IMPLIED
integer CDATA #IMPLIED
unit CDATA #IMPLIED
type CDATA #IMPLIED
description CDATA #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST include
name CDATA #REQUIRED
cond CDATA #IMPLIED>
<!ATTLIST flag
name CDATA #REQUIRED
value CDATA #REQUIRED
cond CDATA #IMPLIED>
<!ATTLIST shell
cmd CDATA #REQUIRED>
<!ATTLIST file
name CDATA #REQUIRED
dir CDATA #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST file_arch
name CDATA #REQUIRED
dir CDATA #IMPLIED
cond CDATA #IMPLIED>
<!ATTLIST settings_file
name CDATA #REQUIRED
>
<!ATTLIST settings
name CDATA #IMPLIED
target CDATA #IMPLIED
>
<!ATTLIST dl_settings
name CDATA #IMPLIED
>
<!ATTLIST dl_setting
var CDATA #REQUIRED
min CDATA #REQUIRED
max CDATA #REQUIRED
type CDATA #IMPLIED
step CDATA #IMPLIED
widget CDATA #IMPLIED
shortname CDATA #IMPLIED
module CDATA #IMPLIED
header CDATA #IMPLIED
handler CDATA #IMPLIED
param CDATA #IMPLIED
unit CDATA #IMPLIED
alt_unit CDATA #IMPLIED
alt_unit_coef CDATA #IMPLIED
values CDATA #IMPLIED
persistent CDATA #IMPLIED
>
<!ATTLIST strip_button
name CDATA #REQUIRED
value CDATA #REQUIRED
icon CDATA #IMPLIED
group CDATA #IMPLIED
>
<!ATTLIST key_press
key CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ATTLIST test
arch CDATA #IMPLIED
firmware CDATA #IMPLIED
>