<?xml version="1.0" encoding="UTF-8"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:annotation> <xs:appinfo>version: 1</xs:appinfo> <xs:documentation xml:lang="en"> Version: 1 </xs:documentation> </xs:annotation> <xs:element name="LLVParserConfig"> <xs:annotation> <xs:documentation xml:lang="en"> The starting point of a log file syntax specification. SyntaxSpecificationVersion: the version of the syntax of the lpc file, i.e., the version of this xsd. The application might be able to read and migrate older versions. Name: the name of the log syntax Columns: the columns that are shown in the output Parsers: a list of parsers, each parser is sequentially attempted on a log line until one succeeds </xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="SyntaxSpecificationVersion" type="xs:string"/> <xs:element name="Name" type="xs:string"/> <xs:element name="Columns" type="ColumnsType"/> <xs:element name="Parsers" type="ParsersType"/> </xs:sequence> </xs:complexType> </xs:element> <xs:complexType name="ColumnsType"> <xs:annotation> <xs:documentation xml:lang="en"> A list of columns </xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Column" type="ColumnType" maxOccurs="unbounded" minOccurs="1"/> </xs:sequence> </xs:complexType> <xs:complexType name="ColumnType"> <xs:annotation> <xs:documentation xml:lang="en"> The specification of an output column Index: the sequence number of the column Header: name to show at the top of the column Show: show or hide the column initially IncludeInSearch: include the text in the column when a search operation is performed on the log file Width: Initial width of the column </xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Index" type="xs:short"/> <xs:element name="Header" type="xs:string"/> <xs:element name="Show" type="xs:boolean"/> <xs:element name="IncludeInSearch" type="xs:boolean"/> <xs:element name="Width" type="xs:short"/> </xs:sequence> </xs:complexType> <xs:complexType name="ParsersType"> <xs:annotation> <xs:documentation xml:lang="en"> A list of parsers. Each parser is tried sequentially on any log line, until one succeeds </xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Parser" type="ParserType" maxOccurs="unbounded" minOccurs="1"/> </xs:sequence> </xs:complexType> <xs:complexType name="ParserType"> <xs:annotation> <xs:documentation xml:lang="en"> A Parser consists of a list of regular expressions that together match a line from the log Description: a description of what this parser does ShowParsedLine: indicates whether this line should be shown or hidden if this parser can parse the line ParseFragment: a list of ParseFragments, one for each part of a log line of a particular type. Note that there can be fewer ParseFragments than Columns </xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Description" type="xs:string" maxOccurs="1" minOccurs="0"/> <xs:element name="ShowParsedLine" type="xs:boolean" maxOccurs="1" minOccurs="1"/> <xs:element name="ParseFragment" type="ParseFragmentType" maxOccurs="unbounded" minOccurs="1"/> </xs:sequence> </xs:complexType> <xs:complexType name="ParseFragmentType"> <xs:annotation> <xs:documentation xml:lang="en"> A regular expression matching part of the log line. ColumnIndex: the column in which the string will the shown that matches this regex. ColumnIndex should be equal to one of the Index numbers in a Column However, if "Include" is false, the ColumnIndex will be ignored. Regex: a regular expression that matches part of a line from the log. Note that this should be a valid regular expression in itself Include: indicates if this column contains information that will be shown in the output. For example, use false if the Regex matches only whitespace. </xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="ColumnIndex" type="xs:short"/> <xs:element name="Regex" type="xs:string"/> <xs:element name="Include" type="xs:boolean"/> </xs:sequence> </xs:complexType> </xs:schema>