@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#> a owl:Ontology;
  <http://purl.org/vocab/vann/preferredNamespacePrefix> "rlog";
  <http://purl.org/vocab/vann/preferredNamespaceUri> "http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#";
  <http://purl.org/vocab/vann/changes> <https://github.com/NLP2RDF/persistence.uni-leipzig.org/commits/master/ontologies/rlog>;
  owl:versionInfo "1.1.0";
  owl:versionIRI <https://github.com/NLP2RDF/ontologies/blob/master/rlog/rlog.ttl>;
  <http://purl.org/dc/terms/license> <http://creativecommons.org/licenses/by/3.0/>,
    <http://www.apache.org/licenses/LICENSE-2.0>;
  <http://purl.org/dc/terms/title> "RLOG - an RDF Logging Ontology"@en;
  rdfs:label "RLOG - an RDF Logging Ontology"@en;
  rdfs:comment "This is a helper ontology for NIF 2.0 to be able to log errors and warning messages."@en;
  <http://purl.org/dc/elements/1.1/creator> "Sebastian Hellmann";
  <http://purl.org/dc/elements/1.1/contributor> "TODO";
  <http://purl.org/dc/elements/1.1/publisher> "AKSW, University Leipzig";
  <http://purl.org/dc/elements/1.1/rights> "This ontology is licensed under Apache 2.0 (http://www.apache.org/licenses/LICENSE-2.0) and CC-BY (http://creativecommons.org/licenses/by/3.0/)"@en;
  <http://purl.org/dc/elements/1.1/description> """We built this ontology by looking at log4j version 1.2 and version 2 beta: http://logging.apache.org/log4j/2.x/manual/layouts.html, http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html 
	Is this complete? No! But it will be sufficient for most use cases, please feel free to extend and adapt the ontology, if you need more. 
    Loglevels: TRACE, DEBUG, INFO, WARN, ERROR and FATAL
    
    Feedback
	If you'd like to leave feedback, please open an issue on GitHub (https://github.com/NLP2RDF/ontologies/issues) and read the README (https://github.com/NLP2RDF/ontologies#readme) or write an email to the mailing list: http://lists.informatik.uni-leipzig.de/mailman/listinfo/nlp2rdf

	Versioning process is explained here: http://persistence.uni-leipzig.org/nlp2rdf/specification/version.html
    
    Changelog:
    * 1.0.0 initial version
    * 1.0.1 added Error Code class and errcode property
    * 1.1.0 change Error Code class to Status Code
    """@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry> a owl:Class;
  rdfs:label "Log Entry"@en;
  rdfs:comment "An entry in a log."@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level> a owl:Class;
  rdfs:label "Log Level"@en;
  rdfs:comment "look here: http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html "@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#StatusCode> a owl:Class;
  rdfs:label "Status Code"@en;
  rdfs:comment "A status code which can occur in an application. Instances of this class must put the name of the status as rdfs:label and describe it with rdfs:comment."@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#className> a owl:DatatypeProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:label "class name"@en;
  rdfs:comment "Outputs the fully qualified class name of the caller issuing the logging request."@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#resource> a owl:ObjectProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:label "an associated resource"@en;
  rdfs:comment "If we mix normal and log output, this can be used to refer to the resource in the RDF the error is connected to. "@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#hasCode> a owl:ObjectProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:range <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#StatusCode>;
  rdfs:label "has code"@en;
  rdfs:comment "Links a log message to a status code."@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#codeId> a owl:DatatypeProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#StatusCode>;
  rdfs:label "code id"@en;
  rdfs:comment "The numerical value of the code, e.g. 200, 404 or 42."@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#message> a owl:DatatypeProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:label "Logging message"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#date> a owl:DatatypeProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:range xsd:dateTime;
  rdfs:label "Logging datetime (or just date)"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#level> a owl:ObjectProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  rdfs:range <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>;
  rdfs:label "logLevel"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> a owl:DatatypeProperty;
  rdfs:domain <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>;
  rdfs:range xsd:int;
  rdfs:comment "Attention: the ids here can change, they are just used to define an order over the levels!"@en;
  rdfs:label "logLevel"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#ALL> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "0"^^xsd:int;
  rdfs:comment "The ALL has the lowest possible rank and is intended to turn on all logging."@en;
  rdfs:label "ALL"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#TRACE> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "1"^^xsd:int;
  rdfs:comment "The TRACE Level designates finer-grained informational events than the DEBUG."@en;
  rdfs:label "TRACE"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#DEBUG> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "2"^^xsd:int;
  rdfs:comment "The DEBUG Level designates fine-grained informational events that are most useful to debug an application."@en;
  rdfs:label "DEBUG"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#INFO> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "3"^^xsd:int;
  rdfs:comment "The INFO level designates informational messages that highlight the progress of the application at coarse-grained level."@en;
  rdfs:label "INFO"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#WARN> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "4"^^xsd:int;
  rdfs:comment "The WARN level designates potentially harmful situations."@en;
  rdfs:label "WARN"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#ERROR> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "5"^^xsd:int;
  rdfs:comment "The ERROR level designates error events that might still allow the application to continue running."@en;
  rdfs:label "ERROR"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#FATAL> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "6"^^xsd:int;
  rdfs:comment "The FATAL level designates very severe error events that will presumably lead the application to abort."@en;
  rdfs:label "FATAL"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#OFF> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Level>,
    owl:NamedIndividual;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#priority> "7"^^xsd:int;
  rdfs:comment "The OFF has the highest possible rank and is intended to turn off logging."@en;
  rdfs:label "OFF"@en .

<http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#mylog1> a <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#Entry>;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#level> <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#INFO>;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#date> "2013-06-08T17:00:00Z"^^xsd:dateTime;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#className> "org.nlp2rdf.core.SPARQLValidator";
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#resource> <http://example.org/aResourceRelatedToThisLogEntry>;
  <http://persistence.uni-leipzig.org/nlp2rdf/ontologies/rlog#message> "Example log message, put whatever you want."@en .
