<commit_before><?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:annotation><xs:documentation>
XML schema definition of list of event types used by regulog version 0.7.x+
	</xs:documentation></xs:annotation>
	<xs:element name="Regulog">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="EventType" minOccurs="1" maxOccurs="unbounded">
					<xs:complexType>
						<xs:all>
							<xs:element name="Name" type="xs:string" minOccurs="1" maxOccurs="1">
								<xs:annotation><xs:documentation>
Name of the event (used as file name for XML/CSV export, and in Python API), available as '_name' field
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Description" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Description of the event, available as '_description' field
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Tag" type="xs:string" minOccurs="0" maxOccurs="unbounded">
								<xs:annotation><xs:documentation>
Semicolon separated list of tags applicable for this event type (used for group selection within same pattern file)
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ParentEventType" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Name of the parent event type if defined
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RequiredFile" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
File name or path of additional pattern file to be included
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexFilename" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the file name of the log to find this event 
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexText" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the text in the log file, i.e. text pattern, used to match the event. If found, the event text is available as variable '_raw'. If RexText is not defined, the event type is ignored.
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="MultilineCount" type="xs:int" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Number of lines to scan in a multiline pattern, default is 1
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="CaseSensitive" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true, text regexp is matched case sensitively
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexTimestamp" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the time stamp in the event text (parsed once event has been matched). 
								</xs:documentation></xs:annotation>								
							</xs:element>
							
							<xs:element name="DisplayOnMatch" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Display string in event is matched. This string may contain references to fields as {fieldname}
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="DisplayIfChanged" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true, DisplayOnMatch string in event is displayed only if the named groups changed 
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Immediate" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true and chronological is selected, force processing of Python code and DisplayOnMatch right after the match
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnInit" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed on start of the search session
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnFile" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed when a new file processing is started
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnMatch" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed on match of the text regexp
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnWrapup" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed at the end of the search session (all events found and sorted)
								</xs:documentation></xs:annotation>
							</xs:element>

						</xs:all>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

</xs:schema>






<commit_msg>reverted to sequence in EventType, changed Tag to Tags, changed RequiredFile into Include, added file Description<commit_after><?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:annotation><xs:documentation>
XML schema definition of list of event types used by regulog version 0.7.x+
	</xs:documentation></xs:annotation>
	<xs:element name="Regulog">
		<xs:complexType>
			<xs:sequence>

			<xs:element name="Description" type="xs:string" minOccurs="0" maxOccurs="1">
					<xs:annotation><xs:documentation>
Description of this file
					</xs:documentation></xs:annotation>
				</xs:element>

				<xs:element name="Include" type="xs:string" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation><xs:documentation>
File to be included when parsing event types
					</xs:documentation></xs:annotation>
				</xs:element>
			

				<xs:element name="EventType" minOccurs="1" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>

							<xs:element name="Parent" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Name of the parent event type if defined
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Tags" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Semi-colon separated list of tag(s) applicable for this event type (used for group selection within same pattern file)
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Name" type="xs:string" minOccurs="1" maxOccurs="1">
								<xs:annotation><xs:documentation>
Name of the event (used as file name for XML/CSV export, and in Python API), available as '_name' field
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Description" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Description of the event, available as '_description' field
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexFilename" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the file name of the log to find this event 
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexText" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the text in the log file, i.e. text pattern, used to match the event. If found, the event text is available as variable '_raw'. If RexText is not defined, the event type is ignored.
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="MultilineCount" type="xs:int" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Number of lines to scan in a multiline pattern, default is 1
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="CaseSensitive" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true, text regexp is matched case sensitively
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="RexTimestamp" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Regular expression matching the time stamp in the event text (parsed once event has been matched). 
								</xs:documentation></xs:annotation>								
							</xs:element>
							
							<xs:element name="DisplayOnMatch" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Display string in event is matched. This string may contain references to fields as {fieldname}
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="DisplayIfChanged" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true, DisplayOnMatch string in event is displayed only if the named groups changed 
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="Immediate" type="xs:boolean" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
If set to true and chronological is selected, force processing of Python code and DisplayOnMatch right after the match
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnInit" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed on start of the search session
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnFile" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed when a new file processing is started
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnMatch" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed on match of the text regexp
								</xs:documentation></xs:annotation>
							</xs:element>

							<xs:element name="ExecOnWrapup" type="xs:string" minOccurs="0" maxOccurs="1">
								<xs:annotation><xs:documentation>
Python code to be executed at the end of the search session (all events found and sorted)
								</xs:documentation></xs:annotation>
							</xs:element>

						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

</xs:schema>







{'fraction_non_alphanumeric': 0.1350930253872239, 'fraction_numerical': 0.008431857758225645, 'mean_word_length': 3.8692547969656403, 'pattern_counts': {'":': 0, '<': 251, '<?xml version=': 2, '>': 251, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1939966', 'n_tokens_mistral': 4271, 'n_tokens_neox': 3170, 'n_words': 876}