mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-21 06:55:39 +00:00
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
This commit is contained in:
parent
bffa00bcbc
commit
e74eedaa2e
@ -113,3 +113,23 @@ Software License:
|
|||||||
specific, written prior permission. Title to copyright in this
|
specific, written prior permission. Title to copyright in this
|
||||||
software and any associated documentation will at all times remain
|
software and any associated documentation will at all times remain
|
||||||
with copyright holders.
|
with copyright holders.
|
||||||
|
|
||||||
|
|
||||||
|
The following files are related to .NET development:
|
||||||
|
|
||||||
|
dotnet-appconfig.rnc dotnet-packages-config.rnc
|
||||||
|
dotnet-packages.props dotnet-resx.rnc msbuild.rnc nuget.rnc
|
||||||
|
nuspec.rnc
|
||||||
|
|
||||||
|
These files are derived/inferred from files from numerous .NET projects,
|
||||||
|
whose contents have been created based on public documentation provided
|
||||||
|
by Microsoft, or created using the documentation as is.
|
||||||
|
|
||||||
|
Links to various related resources:
|
||||||
|
- app.config: https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/
|
||||||
|
- Directory.Packages.Props: https://learn.microsoft.com/en-us/nuget/consume-packages/central-package-management
|
||||||
|
- MSBuild: https://learn.microsoft.com/en-us/visualstudio/msbuild
|
||||||
|
- Nuspec: https://learn.microsoft.com/en-us/nuget/reference/nuspec
|
||||||
|
- Nuget.config: https://learn.microsoft.com/en-us/nuget/reference/nuget-config-file
|
||||||
|
- Packages.config: https://learn.microsoft.com/en-us/nuget/reference/packages-config
|
||||||
|
- Resx: Xsd-schema as included in default Resx-files generated by Resxen.exe
|
||||||
|
411
etc/schema/dotnet-appconfig.rnc
Normal file
411
etc/schema/dotnet-appconfig.rnc
Normal file
@ -0,0 +1,411 @@
|
|||||||
|
default namespace = ""
|
||||||
|
namespace ns1 = "http://schemas.microsoft.com/.NetConfiguration/v2.0"
|
||||||
|
namespace ns2 = "urn:schemas-microsoft-com:asm.v1"
|
||||||
|
namespace xdt = "http://schemas.microsoft.com/XML-Document-Transform"
|
||||||
|
|
||||||
|
start =
|
||||||
|
element configuration {
|
||||||
|
element configSections { (section | sectionGroup)* }?,
|
||||||
|
element system.web.webPages.razor {
|
||||||
|
element host {
|
||||||
|
attribute factoryType { text }
|
||||||
|
},
|
||||||
|
pages
|
||||||
|
}?,
|
||||||
|
(system.web
|
||||||
|
| system.webServer
|
||||||
|
| element location {
|
||||||
|
attribute inheritInChildApplications { xsd:boolean }?,
|
||||||
|
attribute path { text }?,
|
||||||
|
system.web?,
|
||||||
|
system.webServer?
|
||||||
|
}
|
||||||
|
| element runtime {
|
||||||
|
element loadFromRemoteSources {
|
||||||
|
attribute enabled { xsd:boolean }
|
||||||
|
}?,
|
||||||
|
element ns2:assemblyBinding {
|
||||||
|
attribute appliesTo { xsd:NCName }?,
|
||||||
|
element ns2:dependentAssembly {
|
||||||
|
element ns2:Paket { xsd:NCName }?,
|
||||||
|
element ns2:assemblyIdentity {
|
||||||
|
attribute culture { xsd:NCName }?,
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute publicKeyToken { xsd:NMTOKEN }
|
||||||
|
},
|
||||||
|
element ns2:bindingRedirect {
|
||||||
|
attribute newVersion { xsd:NMTOKEN },
|
||||||
|
attribute oldVersion { xsd:NMTOKEN }
|
||||||
|
}
|
||||||
|
}+
|
||||||
|
}+
|
||||||
|
}
|
||||||
|
| element startup {
|
||||||
|
attribute useLegacyV2RuntimeActivationPolicy { xsd:boolean }?,
|
||||||
|
element supportedRuntime {
|
||||||
|
attribute sku { text },
|
||||||
|
attribute version { xsd:NCName }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
| element system.codedom {
|
||||||
|
element compilers {
|
||||||
|
element compiler {
|
||||||
|
attribute compilerOptions { text }?,
|
||||||
|
attribute extension { xsd:NMTOKEN },
|
||||||
|
attribute language { text },
|
||||||
|
attribute type { text },
|
||||||
|
attribute warningLevel { xsd:integer },
|
||||||
|
element providerOption {
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute value { xsd:NCName }
|
||||||
|
}*
|
||||||
|
}+
|
||||||
|
}
|
||||||
|
}
|
||||||
|
| element system.diagnostics {
|
||||||
|
element sources {
|
||||||
|
element source {
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
element listeners { add }?
|
||||||
|
}+
|
||||||
|
}?,
|
||||||
|
(element switches { empty },
|
||||||
|
element sharedListeners { empty },
|
||||||
|
element trace {
|
||||||
|
attribute autoflush { xsd:boolean }
|
||||||
|
})?
|
||||||
|
}
|
||||||
|
| element system.serviceModel {
|
||||||
|
element diagnostics {
|
||||||
|
element messageLogging {
|
||||||
|
attribute logEntireMessage { xsd:boolean },
|
||||||
|
attribute logMalformedMessages { xsd:boolean },
|
||||||
|
attribute logMessagesAtServiceLevel { xsd:boolean },
|
||||||
|
attribute logMessagesAtTransportLevel { xsd:boolean },
|
||||||
|
attribute maxMessagesToLog { xsd:integer },
|
||||||
|
attribute maxSizeOfMessageToLog { xsd:integer }
|
||||||
|
}
|
||||||
|
}?,
|
||||||
|
(element behaviors {
|
||||||
|
element serviceBehaviors {
|
||||||
|
element behavior {
|
||||||
|
attribute name { text }?,
|
||||||
|
element serviceMetadata {
|
||||||
|
attribute httpGetEnabled { xsd:boolean },
|
||||||
|
attribute httpsGetEnabled { xsd:boolean }?
|
||||||
|
},
|
||||||
|
element serviceDebug {
|
||||||
|
attribute httpHelpPageEnabled { xsd:boolean }?,
|
||||||
|
attribute includeExceptionDetailInFaults {
|
||||||
|
xsd:boolean
|
||||||
|
}
|
||||||
|
},
|
||||||
|
element dataContractSerializer {
|
||||||
|
attribute maxItemsInObjectGraph { xsd:integer }
|
||||||
|
}?,
|
||||||
|
(element serviceTelemetry { empty }
|
||||||
|
| element serviceThrottling {
|
||||||
|
attribute maxConcurrentCalls { xsd:integer },
|
||||||
|
attribute maxConcurrentInstances { xsd:integer },
|
||||||
|
attribute maxConcurrentSessions { xsd:integer }
|
||||||
|
})?
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
| element bindings {
|
||||||
|
element basicHttpBinding {
|
||||||
|
element binding {
|
||||||
|
attribute closeTimeout { xsd:time }?,
|
||||||
|
attribute maxBufferSize { xsd:integer }?,
|
||||||
|
attribute maxReceivedMessageSize { xsd:integer }?,
|
||||||
|
attribute name { xsd:NCName }?,
|
||||||
|
attribute openTimeout { xsd:time }?,
|
||||||
|
attribute receiveTimeout { xsd:time }?,
|
||||||
|
attribute sendTimeout { xsd:time }?,
|
||||||
|
element readerQuotas {
|
||||||
|
attribute maxArrayLength { xsd:integer },
|
||||||
|
attribute maxBytesPerRead { xsd:integer }?,
|
||||||
|
attribute maxDepth { xsd:integer }?,
|
||||||
|
attribute maxNameTableCharCount { xsd:integer }?,
|
||||||
|
attribute maxStringContentLength { xsd:integer }
|
||||||
|
}?,
|
||||||
|
security?
|
||||||
|
}+
|
||||||
|
}?
|
||||||
|
}
|
||||||
|
| element client { empty }
|
||||||
|
| element extensions {
|
||||||
|
element behaviorExtensions { add+ },
|
||||||
|
(element bindingElementExtensions { add+ },
|
||||||
|
element bindingExtensions { add+ })?
|
||||||
|
}
|
||||||
|
| element protocolMapping { add+ }
|
||||||
|
| element serviceHostingEnvironment {
|
||||||
|
attribute aspNetCompatibilityEnabled { xsd:boolean }?,
|
||||||
|
attribute multipleSiteBindingsEnabled { xsd:boolean }?
|
||||||
|
})*,
|
||||||
|
element services {
|
||||||
|
element service {
|
||||||
|
attribute behaviorConfiguration { xsd:NCName }?,
|
||||||
|
attribute name { text },
|
||||||
|
element endpoint {
|
||||||
|
attribute address { xsd:NCName }?,
|
||||||
|
attribute binding { xsd:NCName },
|
||||||
|
attribute bindingConfiguration { xsd:NCName }?,
|
||||||
|
attribute contract { xsd:NCName }
|
||||||
|
}+
|
||||||
|
}+
|
||||||
|
}?
|
||||||
|
})*
|
||||||
|
}
|
||||||
|
| element ns1:configuration {
|
||||||
|
element ns1:configSections {
|
||||||
|
element ns1:section {
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute requirePermission { xsd:boolean },
|
||||||
|
attribute type { text }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
element ns1:appSettings { empty },
|
||||||
|
element ns1:connectionStrings { empty },
|
||||||
|
element ns1:system.web {
|
||||||
|
element ns1:compilation {
|
||||||
|
attribute debug { xsd:boolean },
|
||||||
|
attribute defaultLanguage { text },
|
||||||
|
attribute targetFramework { xsd:decimal }
|
||||||
|
},
|
||||||
|
element ns1:authentication {
|
||||||
|
attribute mode { xsd:NCName }
|
||||||
|
},
|
||||||
|
element ns1:httpModules { ns1.add },
|
||||||
|
element ns1:pages {
|
||||||
|
attribute clientIDMode { xsd:NCName },
|
||||||
|
attribute controlRenderingCompatibilityVersion { xsd:decimal }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
element ns1:system.webServer {
|
||||||
|
element ns1:modules {
|
||||||
|
attribute runAllManagedModulesForAllRequests { xsd:boolean },
|
||||||
|
ns1.add
|
||||||
|
}
|
||||||
|
},
|
||||||
|
element ns1:rewriter {
|
||||||
|
element ns1:rewrite {
|
||||||
|
attribute to { text },
|
||||||
|
attribute url { text }
|
||||||
|
}+
|
||||||
|
}
|
||||||
|
}
|
||||||
|
section =
|
||||||
|
element section {
|
||||||
|
attribute allowExeDefinition { xsd:NCName }?,
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute requirePermission { xsd:boolean }?,
|
||||||
|
attribute restartOnExternalChanges { xsd:boolean }?,
|
||||||
|
attribute type { text }
|
||||||
|
}
|
||||||
|
sectionGroup =
|
||||||
|
element sectionGroup {
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute type { text }?,
|
||||||
|
(section | sectionGroup)+
|
||||||
|
}
|
||||||
|
pages =
|
||||||
|
element pages {
|
||||||
|
attribute clientIDMode { xsd:NCName }?,
|
||||||
|
attribute controlRenderingCompatibilityVersion { xsd:decimal }?,
|
||||||
|
attribute enableEventValidation { xsd:boolean }?,
|
||||||
|
attribute pageBaseType { xsd:NCName }?,
|
||||||
|
attribute theme { text }?,
|
||||||
|
attribute validateRequest { xsd:boolean }?,
|
||||||
|
attribute viewStateEncryptionMode { xsd:NCName }?,
|
||||||
|
element namespaces { add+ }?
|
||||||
|
}
|
||||||
|
add =
|
||||||
|
element add {
|
||||||
|
attribute assembly { text }?,
|
||||||
|
attribute binding { xsd:NCName }?,
|
||||||
|
attribute bindingConfiguration { text }?,
|
||||||
|
attribute connectionString { xsd:anyURI }?,
|
||||||
|
attribute initializationPage { text }?,
|
||||||
|
attribute initializeData { text }?,
|
||||||
|
attribute input { text }?,
|
||||||
|
attribute key { xsd:anyURI }?,
|
||||||
|
attribute matchType { xsd:NCName }?,
|
||||||
|
attribute modules { xsd:NCName }?,
|
||||||
|
attribute name { xsd:NCName }?,
|
||||||
|
attribute namespace { xsd:NCName }?,
|
||||||
|
attribute negate { xsd:boolean }?,
|
||||||
|
attribute path { text }?,
|
||||||
|
attribute preCondition { text }?,
|
||||||
|
attribute providerName { xsd:NCName }?,
|
||||||
|
attribute resourceType { xsd:NCName }?,
|
||||||
|
attribute responseBufferLimit { xsd:integer }?,
|
||||||
|
attribute scheme { xsd:NCName }?,
|
||||||
|
attribute scriptProcessor { text }?,
|
||||||
|
attribute type { text }?,
|
||||||
|
attribute validate { xsd:boolean }?,
|
||||||
|
attribute value { text }?,
|
||||||
|
attribute verb { text }?,
|
||||||
|
attribute xdt:Locator { text }?,
|
||||||
|
attribute xdt:Transform { xsd:NCName }?
|
||||||
|
}
|
||||||
|
security =
|
||||||
|
element security {
|
||||||
|
attribute mode { xsd:NCName }?,
|
||||||
|
attribute xdt:Transform { xsd:NCName }?,
|
||||||
|
(element requestFiltering {
|
||||||
|
attribute removeServerHeader { xsd:boolean },
|
||||||
|
element requestLimits {
|
||||||
|
attribute maxAllowedContentLength { xsd:integer }
|
||||||
|
}?
|
||||||
|
}
|
||||||
|
| element transport {
|
||||||
|
attribute clientCredentialType { xsd:NCName }
|
||||||
|
})?
|
||||||
|
}
|
||||||
|
system.webServer =
|
||||||
|
element system.webServer {
|
||||||
|
(element httpErrors {
|
||||||
|
attribute errorMode { xsd:NCName }?,
|
||||||
|
attribute existingResponse { xsd:NCName },
|
||||||
|
(remove+,
|
||||||
|
element error {
|
||||||
|
attribute path { text },
|
||||||
|
attribute prefixLanguageFilePath { text },
|
||||||
|
attribute responseMode { xsd:NCName },
|
||||||
|
attribute statusCode { xsd:integer }
|
||||||
|
}+)?
|
||||||
|
}
|
||||||
|
| element staticContent {
|
||||||
|
element mimeMap {
|
||||||
|
attribute fileExtension { xsd:NMTOKEN },
|
||||||
|
attribute mimeType { text }
|
||||||
|
}+
|
||||||
|
})?,
|
||||||
|
(element applicationInitialization {
|
||||||
|
attribute xdt:Transform { xsd:NCName },
|
||||||
|
add
|
||||||
|
}
|
||||||
|
| element rewrite {
|
||||||
|
element rules {
|
||||||
|
clear
|
||||||
|
| element rule {
|
||||||
|
attribute name { text },
|
||||||
|
attribute stopProcessing { xsd:boolean },
|
||||||
|
element match {
|
||||||
|
attribute url { text }
|
||||||
|
},
|
||||||
|
element conditions {
|
||||||
|
attribute logicalGrouping { xsd:NCName },
|
||||||
|
add+
|
||||||
|
}?,
|
||||||
|
element action {
|
||||||
|
attribute redirectType { xsd:NCName }?,
|
||||||
|
attribute type { xsd:NCName },
|
||||||
|
attribute url { text }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})?,
|
||||||
|
(security
|
||||||
|
| element aspNetCore {
|
||||||
|
attribute arguments { text }?,
|
||||||
|
attribute hostingModel { xsd:NCName }?,
|
||||||
|
attribute processPath { text }?,
|
||||||
|
attribute requestTimeout { xsd:time }?,
|
||||||
|
attribute stdoutLogEnabled { xsd:boolean }?,
|
||||||
|
attribute stdoutLogFile { text }?,
|
||||||
|
attribute xdt:Transform { text }?
|
||||||
|
}
|
||||||
|
| element handlers { (add | remove)+ }
|
||||||
|
| element httpProtocol {
|
||||||
|
attribute xdt:Transform { xsd:NCName }?,
|
||||||
|
element customHeaders { clear?, remove+ }
|
||||||
|
}
|
||||||
|
| element modules {
|
||||||
|
attribute runAllManagedModulesForAllRequests { xsd:boolean }?,
|
||||||
|
(add | remove)*
|
||||||
|
}
|
||||||
|
| element validation {
|
||||||
|
attribute validateIntegratedModeConfiguration { xsd:boolean }
|
||||||
|
})*,
|
||||||
|
element directoryBrowse {
|
||||||
|
attribute enabled { xsd:boolean }
|
||||||
|
}?
|
||||||
|
}
|
||||||
|
system.web =
|
||||||
|
element system.web {
|
||||||
|
element authorization {
|
||||||
|
element allow {
|
||||||
|
attribute users { text }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
| (pages
|
||||||
|
| element authentication {
|
||||||
|
attribute mode { xsd:NCName }
|
||||||
|
}
|
||||||
|
| element compilation {
|
||||||
|
attribute debug { xsd:boolean }?,
|
||||||
|
attribute targetFramework { xsd:NMTOKEN }?,
|
||||||
|
attribute tempDirectory { text }?,
|
||||||
|
attribute xdt:Transform { text }?,
|
||||||
|
element assemblies { add+ }?
|
||||||
|
}
|
||||||
|
| element customErrors {
|
||||||
|
attribute defaultRedirect { text }?,
|
||||||
|
attribute mode { xsd:NCName },
|
||||||
|
attribute redirectMode { xsd:NCName }?
|
||||||
|
}
|
||||||
|
| element globalization {
|
||||||
|
attribute requestEncoding { xsd:NCName },
|
||||||
|
attribute responseEncoding { xsd:NCName }
|
||||||
|
}
|
||||||
|
| element httpHandlers { add+ }
|
||||||
|
| element httpModules { add* }
|
||||||
|
| element httpRuntime {
|
||||||
|
attribute appRequestQueueLimit { xsd:integer }?,
|
||||||
|
attribute enableVersionHeader { xsd:boolean }?,
|
||||||
|
attribute executionTimeout { xsd:integer }?,
|
||||||
|
attribute maxRequestLength { xsd:integer }?,
|
||||||
|
attribute minFreeThreads { xsd:integer }?,
|
||||||
|
attribute minLocalRequestFreeThreads { xsd:integer }?,
|
||||||
|
attribute requestPathInvalidCharacters { text }?,
|
||||||
|
attribute requestValidationMode { xsd:decimal }?,
|
||||||
|
attribute targetFramework { xsd:NMTOKEN }?,
|
||||||
|
attribute useFullyQualifiedRedirectUrl { xsd:boolean }?
|
||||||
|
}
|
||||||
|
| element identity {
|
||||||
|
attribute impersonate { xsd:boolean }
|
||||||
|
}
|
||||||
|
| element machineKey {
|
||||||
|
attribute validation { xsd:NCName }
|
||||||
|
}
|
||||||
|
| element sessionState {
|
||||||
|
attribute cookieSameSite { xsd:NCName }?,
|
||||||
|
attribute cookieless { xsd:boolean },
|
||||||
|
attribute mode { xsd:NCName },
|
||||||
|
attribute stateConnectionString { text }?,
|
||||||
|
attribute timeout { xsd:integer }
|
||||||
|
}
|
||||||
|
| element xhtmlConformance {
|
||||||
|
attribute mode { xsd:NCName }
|
||||||
|
})*
|
||||||
|
}
|
||||||
|
Globalization =
|
||||||
|
element Globalization {
|
||||||
|
element ResourceProviders { empty }
|
||||||
|
| add+
|
||||||
|
}
|
||||||
|
ns1.add =
|
||||||
|
element ns1:add {
|
||||||
|
attribute name { xsd:NCName },
|
||||||
|
attribute type { text }
|
||||||
|
}
|
||||||
|
remove =
|
||||||
|
element remove {
|
||||||
|
attribute name { xsd:NCName }?,
|
||||||
|
attribute statusCode { xsd:integer }?,
|
||||||
|
attribute subStatusCode { xsd:integer }?
|
||||||
|
}
|
||||||
|
clear = element clear { empty }
|
11
etc/schema/dotnet-packages-config.rnc
Normal file
11
etc/schema/dotnet-packages-config.rnc
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
default namespace = ""
|
||||||
|
|
||||||
|
start =
|
||||||
|
element packages {
|
||||||
|
element package {
|
||||||
|
attribute id { xsd:NCName },
|
||||||
|
attribute targetFramework { xsd:NCName }?,
|
||||||
|
attribute allowedVersions { xsd:NCName }?,
|
||||||
|
attribute version { xsd:NMTOKEN }
|
||||||
|
}+
|
||||||
|
}
|
22
etc/schema/dotnet-packages-props.rnc
Normal file
22
etc/schema/dotnet-packages-props.rnc
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
default namespace = ""
|
||||||
|
|
||||||
|
start =
|
||||||
|
element Project {
|
||||||
|
element PropertyGroup {
|
||||||
|
element ManagePackageVersionsCentrally { xsd:boolean },
|
||||||
|
element CentralPackageTransitivePinningEnabled { xsd:boolean },
|
||||||
|
element CentralPackageVersionOverrideEnabled { xsd:boolean }
|
||||||
|
}?,
|
||||||
|
element ItemGroup {
|
||||||
|
attribute Condition { text }?,
|
||||||
|
(element GlobalPackageReference {
|
||||||
|
attribute Condition { text }?,
|
||||||
|
attribute Include { xsd:NCName },
|
||||||
|
attribute Version { xsd:NMTOKEN }
|
||||||
|
}+
|
||||||
|
| element PackageVersion {
|
||||||
|
attribute Include { xsd:NCName },
|
||||||
|
attribute Version { text }
|
||||||
|
}+)
|
||||||
|
}+
|
||||||
|
}
|
57
etc/schema/dotnet-resx.rnc
Normal file
57
etc/schema/dotnet-resx.rnc
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
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 }
|
1041
etc/schema/msbuild.rnc
Normal file
1041
etc/schema/msbuild.rnc
Normal file
File diff suppressed because it is too large
Load Diff
25
etc/schema/nuget.rnc
Normal file
25
etc/schema/nuget.rnc
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
default namespace = ""
|
||||||
|
|
||||||
|
start =
|
||||||
|
element configuration {
|
||||||
|
element packageRestore { add+ }?,
|
||||||
|
(element config { add }
|
||||||
|
| element packageSourceMapping {
|
||||||
|
element packageSource {
|
||||||
|
attribute key { xsd:NCName },
|
||||||
|
element package {
|
||||||
|
attribute pattern { text }
|
||||||
|
}
|
||||||
|
}+
|
||||||
|
}
|
||||||
|
| element packageSources {
|
||||||
|
element clear { empty },
|
||||||
|
add+
|
||||||
|
})+
|
||||||
|
}
|
||||||
|
add =
|
||||||
|
element add {
|
||||||
|
attribute key { xsd:NCName },
|
||||||
|
attribute protocolVersion { xsd:integer }?,
|
||||||
|
attribute value { xsd:anyURI }
|
||||||
|
}
|
100
etc/schema/nuspec.rnc
Normal file
100
etc/schema/nuspec.rnc
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
|
||||||
|
default namespace mstns = "http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"
|
||||||
|
namespace rng = "http://relaxng.org/ns/structure/1.0"
|
||||||
|
|
||||||
|
dependency =
|
||||||
|
attribute id { xsd:string },
|
||||||
|
attribute version { xsd:string }?,
|
||||||
|
attribute include { xsd:string }?,
|
||||||
|
attribute exclude { xsd:string }?
|
||||||
|
dependencyGroup =
|
||||||
|
element dependency { dependency }*,
|
||||||
|
attribute targetFramework { xsd:string }?
|
||||||
|
reference = attribute file { xsd:string }
|
||||||
|
contentFileEntries =
|
||||||
|
attribute include { xsd:string },
|
||||||
|
attribute exclude { xsd:string }?,
|
||||||
|
attribute buildAction { xsd:string }?,
|
||||||
|
attribute copyToOutput { xsd:boolean }?,
|
||||||
|
attribute flatten { xsd:boolean }?
|
||||||
|
referenceGroup =
|
||||||
|
element reference { reference }+,
|
||||||
|
attribute targetFramework { xsd:string }?
|
||||||
|
frameworkReference = attribute name { xsd:string }
|
||||||
|
frameworkReferenceGroup =
|
||||||
|
element frameworkReference { frameworkReference }*,
|
||||||
|
attribute targetFramework { xsd:string }
|
||||||
|
start |= starting_package
|
||||||
|
starting_package =
|
||||||
|
element package {
|
||||||
|
element metadata {
|
||||||
|
(element id { xsd:string }
|
||||||
|
& element version { xsd:string }
|
||||||
|
& element title { xsd:string }?
|
||||||
|
& element authors { xsd:string }
|
||||||
|
& element owners { xsd:string }?
|
||||||
|
& element licenseUrl { xsd:anyURI }?
|
||||||
|
& element projectUrl { xsd:anyURI }?
|
||||||
|
& element iconUrl { xsd:anyURI }?
|
||||||
|
& element requireLicenseAcceptance { xsd:boolean }?
|
||||||
|
& element developmentDependency { xsd:boolean }?
|
||||||
|
& element description { xsd:string }
|
||||||
|
& element summary { xsd:string }?
|
||||||
|
& element releaseNotes { xsd:string }?
|
||||||
|
& (element copyright { xsd:string }?)
|
||||||
|
>> a:documentation [
|
||||||
|
"\x{a}" ~
|
||||||
|
" default value is : en-US"
|
||||||
|
]
|
||||||
|
& element language { xsd:string }?
|
||||||
|
& element tags { xsd:string }?
|
||||||
|
& element serviceable { xsd:boolean }?
|
||||||
|
& element icon { xsd:string }?
|
||||||
|
& element readme { xsd:string }?
|
||||||
|
& element repository {
|
||||||
|
attribute type { xsd:string }?,
|
||||||
|
attribute url { xsd:anyURI }?,
|
||||||
|
attribute branch { xsd:string }?,
|
||||||
|
attribute commit { xsd:string }?
|
||||||
|
}?
|
||||||
|
& element license {
|
||||||
|
xsd:string,
|
||||||
|
attribute type { xsd:string },
|
||||||
|
attribute version { xsd:string }?
|
||||||
|
}?
|
||||||
|
& element packageTypes {
|
||||||
|
element packageType {
|
||||||
|
attribute name { xsd:string },
|
||||||
|
attribute version { xsd:string }?
|
||||||
|
}*
|
||||||
|
}?
|
||||||
|
& element dependencies {
|
||||||
|
(element dependency { dependency }
|
||||||
|
| element group { dependencyGroup })*
|
||||||
|
}?
|
||||||
|
& element frameworkAssemblies {
|
||||||
|
element frameworkAssembly {
|
||||||
|
attribute assemblyName { xsd:string },
|
||||||
|
attribute targetFramework { xsd:string }?
|
||||||
|
}*
|
||||||
|
}?
|
||||||
|
& element frameworkReferences {
|
||||||
|
element group { frameworkReferenceGroup }*
|
||||||
|
}?
|
||||||
|
& element references {
|
||||||
|
(element reference { reference }
|
||||||
|
| element group { referenceGroup })*
|
||||||
|
}?
|
||||||
|
& element contentFiles {
|
||||||
|
(element files { contentFileEntries })*
|
||||||
|
}?),
|
||||||
|
attribute minClientVersion { xsd:string }?
|
||||||
|
},
|
||||||
|
element files {
|
||||||
|
element file {
|
||||||
|
attribute src { xsd:string },
|
||||||
|
attribute target { xsd:string }?,
|
||||||
|
attribute exclude { xsd:string }?
|
||||||
|
}*
|
||||||
|
}?
|
||||||
|
}
|
@ -66,4 +66,31 @@
|
|||||||
<typeId id="LibreOffice" uri="OpenDocument-schema-v1.3+libreoffice.rnc"/>
|
<typeId id="LibreOffice" uri="OpenDocument-schema-v1.3+libreoffice.rnc"/>
|
||||||
<typeId id="OpenDocument Manifest" uri="od-manifest-schema-v1.2-os.rnc"/>
|
<typeId id="OpenDocument Manifest" uri="od-manifest-schema-v1.2-os.rnc"/>
|
||||||
|
|
||||||
|
<!-- .net development related schemas -->
|
||||||
|
<uri pattern="nuget.config" typeId="Nuget Config" />
|
||||||
|
<typeId id="Nuget Config" uri="nuget.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="*.nuspec" typeId="Nuget Spec" />
|
||||||
|
<namespace ns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd" typeId="Nuget Spec" />
|
||||||
|
<typeId id="Nuget Spec" uri="nuspec.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="web.config" typeId="Dotnet App Config" />
|
||||||
|
<uri pattern="app.config" typeId="Dotnet App Config" />
|
||||||
|
<namespace ns="http://schemas.microsoft.com/.NetConfiguration/v2.0" typeId="Dotnet App Config" />
|
||||||
|
<typeId id="Dotnet App Config" uri="dotnet-appconfig.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="Directory.Packages.props" typeId="Dotnet Packages Props" />
|
||||||
|
<typeId id="Dotnet Packages Props" uri="dotnet-packages-props.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="packages.config" typeId="Dotnet Packages Config" />
|
||||||
|
<typeId id="Dotnet Packages Config" uri="dotnet-packages-config.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="*.resx" typeId="Dotnet Resx" />
|
||||||
|
<typeId id="Dotnet Resx" uri="dotnet-resx.rnc" />
|
||||||
|
|
||||||
|
<uri pattern="*.*proj" typeId="MSBuild" />
|
||||||
|
<uri pattern="Directory.Build.props" typeId="MSBuild" />
|
||||||
|
<documentElement localName="Project" typeId="MSBuild"/>
|
||||||
|
<typeId id="MSBuild" uri="msbuild.rnc" />
|
||||||
|
|
||||||
</locatingRules>
|
</locatingRules>
|
||||||
|
Loading…
Reference in New Issue
Block a user