Skip to content

Commit

Permalink
Update README.
Browse files Browse the repository at this point in the history
  • Loading branch information
gkellogg committed Dec 26, 2020
1 parent 735d0b2 commit 339b6c7
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ This version tracks the [W3C N3 Community Group][] [Specification][N3] which has
* Terminals adhere closely to their counterparts in [Turtle][].
* The modifier `<-` is introduced as a synonym for `is ... of`.
* The SPARQL `BASE` and `PREFIX` declarations are supported.
* Implicit universal variables are defined at the top-level, rather than in the parent formula of the one in which they are defined.

This brings N3 closer to compatibility with Turtle.

Expand Down Expand Up @@ -152,7 +153,7 @@ Reasoning is discussed in the [Design Issues][] document.
* `time:timeZone` (See {RDF::N3::Algebra::Time::Timezone})
* `time:year` (See {RDF::N3::Algebra::Time::Year})

### Formulae
### Formulae / Quoted Graphs

N3 Formulae are introduced with the `{ statement-list }` syntax. A given formula is assigned an `RDF::Node` instance, which is also used as the graph_name for `RDF::Statement` instances provided to `RDF::N3::Reader#each_statement`. For example, the following N3 generates the associated statements:

Expand Down Expand Up @@ -184,6 +185,9 @@ results in:

Note that the behavior of both existential and universal variables is not entirely in keeping with the [Team Submission][], and neither work quite like SPARQL variables. When used in the antecedent part of an implication, universal variables should behave much like SPARQL variables. This area is subject to a fair amount of change.

* Variables, themselves, cannot be part of a solution, which limits the ability to generate updated rules for reasoning.
* Both Existentials and Universals are treated as simple variables, and there is really no preference given based on the order in which they are introduced.

### Query
Formulae are typically used to query the knowledge-base, which is set from the base-formula/default graph. A formula is composed of both constant statements, and variable statements. When running as a query, such as for the antecedent formula in `log:implies`, statements including either explicit variables or blank nodes are treated as query patterns and are used to query the knowledge base to create a solution set, which is used either prove the formula correct, or create bindings passed to the consequent formula.

Expand Down

0 comments on commit 339b6c7

Please sign in to comment.