1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-21 06:55:39 +00:00
emacs/etc/schema/dotnet-resx.rnc
Jostein Kjønigsen e74eedaa2e nxml-mode: Add schemas for Mono/.NET related files
* etc/schema/dotnet-appconfig.rnc:
* etc/schema/dotnet-packages-config.rnc:
* etc/schema/dotnet-packages-props.rnc:
* etc/schema/dotnet-resx.rnc:
* etc/schema/msbuild.rnc:
* etc/schema/nuget.rnc:
* etc/schema/nuspec.rnc: New files.
* etc/schema/README: Document copyright status of above new files.
* etc/schema/schemas.xml: Use above new files to support Mono/.NET
development related XML files.

This change was discussed in:
https://lists.gnu.org/r/emacs-devel/2024-02/msg00638.html
2024-05-18 21:36:47 +02:00

58 lines
1.5 KiB
Plaintext

default namespace = ""
namespace msdata = "urn:schemas-microsoft-com:xml-msdata"
namespace xsd = "http://www.w3.org/2001/XMLSchema"
start =
element root {
element xsd:schema {
attribute id { xsd:NCName },
element xsd:import {
attribute namespace { xsd:anyURI }
}?,
xsd.element
},
element resheader {
attribute name { xsd:NCName },
value
}+,
(element assembly {
attribute alias { xsd:NCName },
attribute name { text }
}
| element data {
attribute mimetype { text }?,
attribute name { text },
attribute type { text }?,
attribute xml:space { xsd:NCName }?,
value
}
| element metadata {
attribute name { xsd:NCName },
attribute type { text },
value
})*
}
xsd.element =
element xsd:element {
attribute minOccurs { xsd:integer }?,
attribute name { xsd:NCName },
attribute type { xsd:NMTOKEN }?,
attribute msdata:IsDataSet { xsd:boolean }?,
attribute msdata:Ordinal { xsd:integer }?,
element xsd:complexType {
element xsd:choice {
attribute maxOccurs { xsd:NCName },
xsd.element+
}?,
element xsd:sequence { xsd.element+ }?,
element xsd:attribute {
attribute name { xsd:NCName }?,
attribute ref { xsd:NMTOKEN }?,
attribute type { xsd:NMTOKEN }?,
attribute use { xsd:NCName }?,
attribute msdata:Ordinal { xsd:integer }?
}*
}*
}
value = element value { text }