W3C

n3 definition of some Semantic Web terms

These raise the level above RDF's pure relational data, and Web Ontology's ontological level, to allow rules to be expressed and inference done. They connect the inference to the web, allowing data to be fetched from resources elsewhere, and remote servers to be queried.

The vocabulary is published by the W3C Notation-3 Community Group.

Vocabulary Terms

Class Definitions
log:Chaff Chaff (link)

Any statement mentioning anything in this class is considered boring and purged by the cwm --purge option. This is a convenience, and does not have any value when published as a general fact on the web.

log:Document log:Document (link)
rdfs:subClassOf
http://rdfs.org/ns/void#Dataset
log:Formula Formula (link)

The class of Notation-3 Formulae

rdfs:subClassOf
log:Type
log:List List (link)

A Notation-3 List, as a resource. A sub-class of an RDF List.

rdfs:subClassOf
log:Type, rdf:List
log:N3Document N3Document (link)

A document which, which parsed as Notation3 as defined in general by http://www.w3.org/DesignIssues/Notation3.html and this schema, conveys the intent of the author by the semantics defined on those specifications, and the semantics defined by the specifications of any other identifiers used in the document.

log:Other List (link)

Some other Notation-3 type

rdfs:subClassOf
log:Type
log:String List (link)

An RDF Literal

rdfs:subClassOf
log:Type, rdfs:Literal
log:Truth Truth (link)

Something which is true: believe it as you would believe this.

Understood natively by cwm in that it will execute rules in a formula declared a Truth within a formula it is already taking rules from.

log:Type Type (link)

The class of Notation3-specifiec resource types.

vs:term_status
unstable
Property Definitions
log:becomes becomes (link)

Built-in to perform RDF linear implication i.e. retracting the subject graph and asserting the object graph.

vs:term_status
unstable
log:conclusion conclusion (link)

All possible conclusions which can be drawn from a formula.

schema: $a_1 log:conclusion $a_2

definition: $a_2 is the set of conclusions which can be drawn from $a_1, by successively applying any rules it contains to the data it contains.

requires: $a_1 is a formula $a_2 is unbound or a formula.

note: This is equivalent to cwm's "--think" command line function. It does use built-ins, so it may for example indirectly invoke other documents, validate signatures, etc.

rdfs:domain
log:Formula
rdfs:range
log:Formula
log:conjunction conjunction (link)

A function to merge formulae: logical AND.

schema: ($a_1 .. $a_n) log:conjunction $a_s

definition: $a_s, which can be generated, is a formula containing a copy of each of the formulae $a_1 .. $a_n.

requires: all $a_1, .., $a_n to be formulae.

rdfs:domain
log:List
rdfs:range
log:Formula
log:content content (link)

This connects a document and a string that represents it. (Cwm knows how to go get a document in order to evaluate this.)

schema: $a_1 log:content $a_2

requires: $a_1 must be an IRI. $a_2 must be either unbound or a string.

note: The content-type of the information is not given and so must be known or guessed.

rdfs:domain
log:N3Document
rdfs:range
log:String
log:definitiveDocument definitive document (link)

When document D is the definitiveDocument for property P, any statement X P Y is true iff the semantics of document D include that statement.

For example, there may be a definitive document for the zipcode of airports by airport code, and so on. This is useful to let a reasoner know that it can extend its query to the given document. (Cwm will do this if its mode includes "r").

vs:term_status
deprecated
rdfs:domain
rdf:Property
rdfs:range
log:N3Document
log:definitiveService definitive service (link)

When service S is the definitiveService for property P, any statement X P Y is true iff and only if a query to S returns that it is. The protocol for the service S depends on the scheme. For mysql protocol, the URI of the service is like sql://user:password@host.domain/database/.

For example, there may be a definitive service for the zipcode of airports by airport code, and so on. This is useful to let a reasoner know that it can help resolve a query by delegating it to the service in question. (Cwm will do this if its mode includes "r").

vs:term_status
deprecated
rdfs:domain
rdf:Property
log:dtlit log:dtlit (link)

Takes a list of a string and a URI and creates a datatyped literal.

schema: ($a_1 $a_2) log:dtlit $a_3

definition: true if and only if the datatyped literal formed of $a_1 and $a_1 equals $a_3.

The subject is a list composed of a string and an IRI, and the object is a datatyped literal with the value $a_1 and datatype $a_2.

requires: $a_1 and $a_2 to be bound. $a_1 to be a xs:string (see note on casting to string). $a_2 to be an IRI.

example: `{ ("2005-03-30T11:00:00" :tz) log:dtlit ?X } => { ?X a :Answer } . will produce "2005-03-30T11:00:00"^^:tz a :Answer .

rdfs:domain
log:List
rdfs:range
rdfs:Literal
log:equalTo equalTo (link)

Determines if two RDF resources are the same.

schema: $a_1 log:equalTo $a_2

definition: true if and only if $a_1 and $a_2 are the same RDF node (symbol or literal).

Do not confuse with owl:sameAs.

log:findall findall (link)

Built-in used as ?SCOPE e:findall (?SELECT ?WHERE ?ANSWER). Within the subject ?SCOPE it unifies ?ANSWER with a list that contains all the instantiations of ?SELECT satisfying the ?WHERE clause.

vs:term_status
unstable
rdfs:domain
log:Formula
rdfs:range
log:List
log:forAllIn forAllIn (link)

Built-in for implementing a scoped universal quantification.

vs:term_status
unstable
log:forAllInClosure forAllInClosure (link)

Built-in for implementing a scoped universal quantification.

vs:term_status
unstable
log:implies implies (link)

Logical implication.

This is the relation between the antecedent (subject) and conclusion (object) of a rule.

schema: $a_1 log:implies $a_2

definition: The application of a rule to a knowledge-base is as follows. For every substitution which, applied to the antecedent ($a_1), gives a formula ($a_2) which is a subset of the knowledge-base, then the result of applying that same substitution to the conclusion may be added to the knowledge-base.

requires: $a_1 and $a_2 must be formulae.

related: See log:conclusion.

rdfs:domain
log:Formula
rdfs:range
log:Formula
log:includes includes (link)

The subject formula includes the object formula.

schema: $a_1 log:includes $a_2

definition: $a_1 includes $a_2 if there exists some substitution which when applied to $a_2 creates a formula B' such that for every statement in B' is also in $a_1, every variable universally (or existentially) quantified in B' is quantified in the same way in $a_1.

Variable substitution is applied recursively to nested compound terms such as formulae, lists and sets.

requires: $a_1 and $a_2 must be formulae.

note: You can use this to peer inside nested formulae.

rdfs:domain
log:Formula
rdfs:range
log:Formula
log:n3String n3 string (link)

The subject formula, expressed as N3, gives this string.

schema: $a_1 log:n3String $a_2

definition: $a_1, serialized as N3, gives $a_2.

requires: $a_1 is a formula.

related: See log:parsedAsN3.

rdfs:domain
log:Formula
rdfs:range
log:N3
log:notEqualTo notEqualTo (link)

Determines if two RDF resources are not the same.

schema: $a_1 log:notEqualTo $a_2

definition: true if and only if $a_1 and $a_2 are not the same RDF node (symbol or literal).

owl:inverse
log:equalTo
log:notIn notIn (link)

Custom built-in for implementing scoped negation-as-failure (SNAF).

vs:term_status
unstable
log:notInClosure notInClosure (link)

Custom built-in for implementing scoped negation-as-failure (SNAF).

vs:term_status
unstable
log:notIncludes not includes (link)

The object formula is NOT a subset of subject.

schema: $a_1 log:notIncludes $a_2

definition: true if and only if log:includes is false. The converse of log:includes.

related: See log:includes.

rdfs:domain
log:Formula
rdfs:range
log:Formula
log:outputString output string (link)

The subject is a key and the object is a string, where the strings are to be output in the order of the keys. See cwm --strings in cwm --help.

vs:term_status
deprecated
rdfs:range
log:String
log:parsedAsN3 parses to N3 (link)

The subject string, parsed as N3, gives this formula.

schema: $a_1 log:parsedAsN3 $a_2

definition: $a_1, parsed as N3, gives $a_2.

requires: $a_1 is a syntactically valid string in N3 format.

related: See log:n3String.

rdfs:domain
log:N3
rdfs:range
log:Formula
log:racine racine (link)

For anything identified by a URI with a fragid, this is the thing identified by the same URI without a hash or fragid. For anything else, it is itself.

log:rawType rawType (link)

Returns an identifier based on the type of the RDF Resource.

schema: $a_1 log:rawType $a_2

definition: true if the type of $a_1 is the same as $a_2, or binds the type to $a_2.

requires: $a_2 is unbound or one of log:Formula, log:Literal, log:List, log:Set or log:Other.

example: log:semanticsOrError returns either a formula or a string, and you can check which using log:rawType.

rdfs:range
log:Type
log:rawUri raw uri (link)

This allows one to look at the actual string of the URI which identifies this, for anything, even a blank node or a formula. This peeks into the internal workings of cwm, and so is not normally used. Use log:uri instead.

rdfs:range
log:String
log:semantics semantics (link)

The log:semantics of a document is the formula achieved by parsing representation of the document.

schema: $a_1 log:semantics $a_2

definition: For a document in Notation3, log:semantics is the log:parsedAsN3 of the log:content of the document.

For a document in another RDF syntax, it is parsed according to the appropriate specification to yield an RDF formula (a subclass of N3 log:Formula).

Evaluates to false if an unrecognized document format is retrieved.

requires: $a_1 must be an IRI.

aside: Philosophers will be distracted here into worrying about the meaning of meaning. At least we didn't call this function "meaning"! In as much as N3 is used as an interlingua for interoperability for different systems, this for an N3 based system is the meaning expressed by a document.

related: See log:parsedAsN3 and log:content.

rdfs:domain
log:N3Document
rdfs:range
log:Formula
log:semanticsOrError semantics or error message (link)

This connects a document and either the formula it parses to, or an error message explaining what went wrong with trying.

schema: $a_1 log:semanticsOrError $a_2

requires: $a_1 must be an IRI.

related: See log:semantics.

rdfs:domain
log:N3Document
log:skolem skolem (link)

Built-in to generate a Skolem IRI object which is a function of the arguments in the subject list

vs:term_status
unstable
rdfs:domain
log:List
rdfs:range
log:String
log:uri log:uri (link)

This allows one to look at the actual string of the URI which identifies this.

(Cwm can get the URI of a resource or get the resource from the URI.) This is a level breaker, breaking the rule of not looking inside a URI. Use (eg with string:match) to replace RDF's old "aboutEach" functionality. Use to implement the URI spec and protocol specs, etc.

rdfs:range
log:String
Datatype Definitions
log:N3 log:N3 (link)

The class log:N3 is the class of N3 literal values. log:N3 is an instance of rdfs:Datatype and a subclass of rdfs:Literal. The value of log:content of a log:N3Document is a literal with datatype log:N3.

vs:term_status
unstable
rdfs:subClassOf
rdfs:Literal