You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
207 lines
9.1 KiB
207 lines
9.1 KiB
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" |
|
targetNamespace="urn:schemas-microsoft-com:asm.v1" |
|
xmlns="urn:schemas-microsoft-com:asm.v1" |
|
elementFormDefault="qualified"> |
|
|
|
<xs:annotation> |
|
<xs:documentation> |
|
Copyright (C) 2005 Matthew Ward |
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this |
|
software and associated documentation files (the "Software"), to deal in the Software |
|
without restriction, including without limitation the rights to use, copy, modify, merge, |
|
publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons |
|
to whom the Software is furnished to do so, subject to the following conditions: |
|
|
|
The above copyright notice and this permission notice shall be included in all copies or |
|
substantial portions of the Software. |
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, |
|
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR |
|
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE |
|
FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR |
|
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
|
DEALINGS IN THE SOFTWARE. |
|
</xs:documentation> |
|
</xs:annotation> |
|
|
|
<xs:element name="assembly"> |
|
<xs:complexType> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="description" minOccurs="0" maxOccurs="1"/> |
|
<xs:element name="noInherit" minOccurs="0" maxOccurs="1"/> |
|
<xs:element name="noInheritable" minOccurs="0" maxOccurs="1"/> |
|
<xs:element name="assemblyIdentity" type="assemblyIdentity" minOccurs="1" maxOccurs="1"/> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="clrClass" type="clrClass" minOccurs="0" maxOccurs="unbounded"/> |
|
<xs:element name="comInterfaceExternalProxyStub" type="comInterfaceExternalProxyStub" minOccurs="0" maxOccurs="unbounded"/> |
|
<xs:element name="clrSurrogate" type="clrSurrogate" minOccurs="0" maxOccurs="unbounded"/> |
|
<xs:element name="dependency" type="dependency" minOccurs="0" maxOccurs="unbounded"/> |
|
<xs:element name="file" type="file" minOccurs="0" maxOccurs="unbounded"/> |
|
</xs:choice> |
|
</xs:choice> |
|
<xs:attribute name="manifestVersion" type="xs:string" default="1.0"/> |
|
</xs:complexType> |
|
</xs:element> |
|
|
|
<xs:complexType name="assemblyIdentity"> |
|
<xs:attribute name="type" type="xs:string" use="required"/> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="language" type="xs:string"/> |
|
<xs:attribute name="processorArchitecture" type="xs:string"/> |
|
<xs:attribute name="version" type="xs:string" use="required"/> |
|
<xs:attribute name="publicKeyToken" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="dependency"> |
|
<xs:sequence> |
|
<xs:element name="dependentAssembly" type="dependentAssembly" minOccurs="0" maxOccurs="unbounded"/> |
|
</xs:sequence> |
|
<xs:attribute name="optional" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="dependentAssembly"> |
|
<xs:sequence> |
|
<xs:element name="assemblyIdentity" type="assemblyIdentity" minOccurs="1" maxOccurs="1"/> |
|
<xs:element name="bindingRedirect" type="bindingRedirect" minOccurs="0" maxOccurs="1"/> |
|
</xs:sequence> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="file"> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="comClass" minOccurs="0" maxOccurs="unbounded"> |
|
<xs:complexType> |
|
<xs:sequence minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="progid" minOccurs="0" maxOccurs="unbounded"/> |
|
</xs:sequence> |
|
<xs:attribute name="clsid" type="xs:string" use="required"/> |
|
<xs:attribute name="threadingmodel" type="xs:string" use="required"/> |
|
<xs:attribute name="progid" type="xs:string"/> |
|
<xs:attribute name="tlbid" type="xs:string"/> |
|
<xs:attribute name="description" type="xs:string"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="comInterfaceProxyStub" minOccurs="0" maxOccurs="unbounded"> |
|
<xs:complexType> |
|
<xs:attribute name="iid" type="xs:string" use="required"/> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="numMethods" type="xs:string"/> |
|
<xs:attribute name="tlbid" type="xs:string"/> |
|
<xs:attribute name="proxyStubClsid32" type="xs:string"/> |
|
<xs:attribute name="baseInterface" type="xs:string"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="typelib" minOccurs="0" maxOccurs="unbounded"> |
|
<xs:complexType> |
|
<xs:attribute name="version" type="xs:string" use="required"/> |
|
<xs:attribute name="helpdir" type="xs:string" use="required"/> |
|
<xs:attribute name="resourceid" type="xs:string"/> |
|
<xs:attribute name="tlbid" type="xs:string" use="required"/> |
|
<xs:attribute name="flags" type="xs:string"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="windowClass" minOccurs="0" maxOccurs="unbounded"> |
|
<xs:complexType mixed="true"> |
|
<xs:attribute name="versioned" type="xs:string"/> |
|
</xs:complexType> |
|
</xs:element> |
|
</xs:choice> |
|
<xs:attribute name="name" type="xs:string"/> |
|
<xs:attribute name="hashalg" type="xs:string"/> |
|
<xs:attribute name="hash" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="clrClass"> |
|
<xs:sequence minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="progid" minOccurs="0" maxOccurs="unbounded"/> |
|
</xs:sequence> |
|
<xs:attribute name="clsid" type="xs:string" use="required"/> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="progid" type="xs:string"/> |
|
<xs:attribute name="description" type="xs:string"/> |
|
<xs:attribute name="threadingModel" type="xs:string" default="Both"/> |
|
<xs:attribute name="runtimeVersion" type="xs:string"/> |
|
<xs:attribute name="tlbid" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="clrSurrogate"> |
|
<xs:attribute name="clsid" type="xs:string" use="required"/> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="runtimeVersion" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="comInterfaceExternalProxyStub"> |
|
<xs:attribute name="iid" type="xs:string" use="required"/> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="tlbid" type="xs:string"/> |
|
<xs:attribute name="numMethods" type="xs:string"/> |
|
<xs:attribute name="proxyStubClsid32" type="xs:string"/> |
|
<xs:attribute name="baseInterface" type="xs:string"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="bindingRedirect"> |
|
<xs:attribute name="oldVersion" type="xs:string" use="required"/> |
|
<xs:attribute name="newVersion" type="xs:string" use="required"/> |
|
</xs:complexType> |
|
|
|
<!-- Cheat - This and the following elements are added so app.config autocompletion |
|
will work if the user specifies the urn:schemas-microsoft-com:asm.v1 namespace |
|
in an app.config file. --> |
|
<xs:element name="assemblyBinding"> |
|
<xs:complexType> |
|
<xs:choice> |
|
<xs:element name="dependentAssembly" type="dependentAssemblyType" minOccurs="0" maxOccurs="unbounded"/> |
|
<xs:element name="probing" type="probing" minOccurs="0" maxOccurs="1"/> |
|
<xs:element name="publisherPolicy" type="publisherPolicy" minOccurs="0" maxOccurs="1"/> |
|
<xs:element name="qualifyAssembly" type="qualifyAssembly" minOccurs="0" maxOccurs="1"/> |
|
</xs:choice> |
|
<xs:attribute name="appliesTo" type="xs:string" use="required"/> |
|
</xs:complexType> |
|
</xs:element> |
|
|
|
<xs:complexType name="dependentAssemblyType"> |
|
<xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
<xs:element name="assemblyIdentity" minOccurs="1" maxOccurs="1"> |
|
<xs:complexType> |
|
<xs:attribute name="name" type="xs:string" use="required"/> |
|
<xs:attribute name="publicKeyToken" type="xs:string"/> |
|
<xs:attribute name="culture" type="xs:string"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="codeBase" minOccurs="0" maxOccurs="1"> |
|
<xs:complexType> |
|
<xs:attribute name="version" type="xs:string" use="required"/> |
|
<xs:attribute name="href" type="xs:anyURI" use="required"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="bindingRedirect" minOccurs="0" maxOccurs="unbounded"> |
|
<xs:complexType> |
|
<xs:attribute name="oldVersion" type="xs:string" use="required"/> |
|
<xs:attribute name="newVersion" type="xs:string" use="required"/> |
|
</xs:complexType> |
|
</xs:element> |
|
<xs:element name="publisherPolicy" type="publisherPolicy" minOccurs="0" maxOccurs="1"/> |
|
</xs:choice> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="probing"> |
|
<xs:attribute name="privatePath" type="xs:string" use="required"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="publisherPolicy"> |
|
<xs:attribute name="apply" type="yesNoEnum" use="required"/> |
|
</xs:complexType> |
|
|
|
<xs:complexType name="qualifyAssembly"> |
|
<xs:attribute name="partialName" type="xs:string" use="required"/> |
|
<xs:attribute name="fullName" type="xs:string" use="required"/> |
|
</xs:complexType> |
|
|
|
<xs:simpleType name="yesNoEnum"> |
|
<xs:restriction base="xs:string"> |
|
<xs:enumeration value="yes"/> |
|
<xs:enumeration value="no"/> |
|
</xs:restriction> |
|
</xs:simpleType> |
|
|
|
</xs:schema>
|
|
|