Talk:INX extension descriptor format
Jump to navigation
Jump to search
- How does the created Relax NG Compact (RNC) example differ/compare to the RELAX NG Schema in trunk?
The Example INX file is outdated - the format was slightly changed in 0.47, see revisions 5472, 5946 and 5947I added the namespace etc. Does that cover all the changes? --Flor 18:06, 1 November 2010 (UTC)
- looks fine to me - thx for updating :) --~suv 07:43, 2 November 2010 (UTC)
- Additional information (as far as I could find it ;) ): Subject: Extensions (inx) files (inkscape-devel mailing list) --~suv 06:46, 28 August 2010 (UTC)
Relax NG Compact
This is what I get when I convert RELAX NG Schema to Relax NG Compact with Trang. Is this the right version for the current scheme? --Flor 18:29, 1 November 2010 (UTC)
- Yes, it is the link to the most current version of the file in Inkscape trunk. There haven't been many changes since the file was added to the 'share/extensions' directory (2008-04-18), see the changelog for details.
- I can't comment on the conversion itself (not familiar with these file types); the purpose of my initial inquiry was to keep the sources and the documentation in sync. Again thank you for updating the documentation about INX files and its parameters! --~suv 07:57, 2 November 2010 (UTC)
default namespace = "http://www.inkscape.org/namespace/inkscape/extension" start = element inkscape-extension { element _name { text }, element id { text }, element dependency { attribute type { inx.dependency-type.values }, attribute location { inx.location.values }?, attribute _description { text }?, text }*, (inx.parameters | element param { attribute name { text }, attribute type { "notebook" }, element page { attribute name { text }, attribute _gui-text { text }, inx.parameters+ }+ })*, (element input { inx.io.common, element output_extension { text }? } | element output { inx.io.common, element dataloss { xsd:boolean }? } | element effect { attribute needs-document { xsd:boolean }?, attribute needs-live-preview { xsd:boolean }?, element object-type { xsd:token "all" | xsd:token "path" | xsd:token "rect" }, element effects-menu { attribute hidden { xsd:boolean "true" } | element submenu { attribute _name { text }, empty } } } | element path-effect { empty } | element print { empty }), (element script { element command { inx.reldir.attr, attribute interpreter { "python" | "perl" }?, text }, element helper_extension { xsd:NMTOKEN }?, element check { inx.reldir.attr, text }* } | element xslt { element file { inx.reldir.attr, text } } | element plugin { element name { text } }) } inx.reldir.attr = attribute reldir { inx.location.values } inx.location.values = "extensions" | "path" | "plugins" inx.dependency-type.values = "extension" | "executable" | "plugin" inx.io.common = element extension { text }, element mimetype { text }, element _filetypename { text }?, element _filetypetooltip { text }? inx.parameter = attribute name { xsd:token }, attribute gui-hidden { xsd:boolean }?, attribute _gui-text { text }?, ((attribute type { "int" }, attribute min { xsd:integer }?, attribute max { xsd:integer }?, (empty | xsd:integer)) | (attribute type { "float" }, attribute precision { xsd:integer }?, attribute min { xsd:float }?, attribute max { xsd:float }?, xsd:float) | (attribute type { "boolean" }, xsd:boolean) | (attribute type { "string" }, attribute max_length { xsd:integer }?, (empty | text)) | (attribute type { "description" }, text) | (attribute type { "enum" }, (element _item { inx.parameter.enum.item } | element item { inx.parameter.enum.item })+) | (attribute type { "optiongroup" }, attribute appearance { "minimal" }?, (element option { inx.parameter.optiongroup.option } | element _option { inx.parameter.optiongroup.option })+)) inx.parameters = element param { inx.parameter } | element _param { inx.parameter } inx.parameter.enum.item = attribute value { text }, xsd:token inx.parameter.optiongroup.option = attribute value { text }?, text