Sample Schema for a plugin-manifest.xml file
To validate any plugin-manifest.xml file that you author, Oracle recommends that you use the sample schema for a plugin-manifest.xml file.
Example 1 Sample plugin-manifest.xsd file
<?xml version="1.0" encoding="utf-8"?>
<!-- This schema defines the structure of the Oracle Audit Vault Plugin -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://foobar.example.com/av/plugin"
targetNamespace="http://foobar.example.com/av/plugin"
elementFormDefault="qualified">
<xs:element name="plugin">
<xs:complexType>
<xs:sequence>
<xs:element name="targetVersion">
<xs:complexType>
<xs:attribute name="min" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="extensionSet">
<xs:complexType>
<xs:sequence>
<xs:element name="extensionPoint">
<xs:complexType>
<xs:sequence>
<xs:element name="fileList">
<xs:complexType>
<xs:sequence>
<xs:element name="jars" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="templates" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="bin" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="config" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="shell" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="patch" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="unresolved-external" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="include">
<xs:complexType>
<xs:attribute name="file" type="xs:string" use="required" />
<xs:attribute name="permission" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="securedTargetTypeInfo">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="trailInfo">
<xs:complexType>
<xs:sequence>
<xs:element name="trailType" type="xs:string" />
<xs:element minOccurs="0" name="trailLocation" type="xs:string" />
<xs:element maxOccurs="unbounded" name="className">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="securedTargetVersion" type="xs:decimal" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="eventPatch">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="order" type="xs:unsignedByte" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="type" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="version" type="xs:string" use="required" />
<xs:attribute name="provider-name" type="xs:string" use="required" />
<xs:attribute name="copyright" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:schema>
Related Topics