@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix gen: <http://www.w3.org/2006/gen/ont> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix acl: <http://www.w3.org/ns/auth/acl#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix tac: <http://ns.bergnet.org/tac/0.1/triple-access-control#> .
@prefix vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#> .
@prefix rdfg: <http://www.w3.org/2004/03/trix/rdfg-1/> .

<http://ns.bergnet.org/tac/0.1/triple-access-control> a owl:Ontology ;
	dc:title "TripleAccessControl Ontology"@en ;
	dc:description "TripleAccessControl extension for WebAccessControl"@en ;
	dc:created "2011-09-02" ;
	dc:creator <http://www.bergnet.org/people/bergi/card#me> ;
	owl:imports <http://www.w3.org/ns/auth/acl#> , <http://purl.org/dc/elements/1.1/> , <http://xmlns.com/foaf/0.1/> , <http://www.w3.org/2006/gen/ont> , <http://www.w3.org/2004/03/trix/rdfg-1/> , <http://www.w3.org/ns/auth/acl> ;
	vs:term_status "testing"@en .

tac:TripleAuthorization a owl:Class ;
	rdfs:label "TripleAuthorization"@en ;
	rdfs:comment "A triple authorization."@en ;
	rdfs:subClassOf acl:Authorization ;
	vs:term_status "testing"@en .

tac:Filter a owl:Class ;
	rdfs:label "Filter"@en ;
	rdfs:comment "A triple filter."@en ;
	vs:term_status "testing" .

tac:accessToTriple a owl:ObjectProperty ;
	rdfs:label "accesToTriple"@en ;
	rdfs:comment "Contains triple authorization information."@en ;
	rdfs:domain acl:Authorization , tac:TripleAuthorization ;
	rdfs:range tac:TripleAuthorization ;
	vs:term_status "testing"@en .

tac:filter a owl:ObjectProperty ;
	rdfs:label "filter"@en ;
	rdfs:comment "Contains triple filter rules."@en ;
	rdfs:domain tac:TripleAuthorization ;
	rdfs:range tac:Filter ;
	vs:term_status "testing"@en .

tac:children a owl:ObjectProperty ;
	rdfs:label "children"@en ;
	rdfs:comment "Contains sub triple authorization informations."@en ;
	rdfs:domain tac:TripleAuthorization ;
	rdfs:range tac:Authorization ;
	vs:term_status "testing"@en .

tac:required a owl:ObjectProperty ;
	rdfs:label "required"@en ;
	rdfs:comment "If this property is true access to the parent triple is only granted if childrens are found."@en ;
	rdfs:domain tac:TripleAuthorization ;
	vs:term_status "testing"@en .

tac:subject a owl:ObjectProperty ;
	rdfs:label "subject"@en ;
	rdfs:comment "Subject for a triple filter."@en ;
	rdfs:domain tac:Filter ;
	vs:term_status "testing"@en .

tac:predicate a owl:ObjectProperty ;
	rdfs:label "predicate"@en ;
	rdfs:comment "Predicate for a triple filter."@en ;
	rdfs:domain tac:Filter ;
	vs:term_status "testing"@en .

tac:object a owl:ObjectProperty ;
	rdfs:label "object"@en ;
	rdfs:comment "Object for a triple filter"@en ;
	rdfs:domain tac:Filter ;
	vs:term_status "testing"@en .

tac:graph a owl:ObjectProperty ;
	rdfs:label "graph" ;
	rdfs:comment "Graph for a triple filter."@en ;
	rdfs:domain tac:Filter ;
	rdfs:range rdfg:Graph ;
	vs:term_status "testing"@en .

tac:statement a owl:ObjectProperty ;
	rdfs:label "statement"@en ;
	rdfs:comment "Statement for a triple filter."@en ;
	rdfs:domain tac:Filter ;
	vs:term_status "testing"@en .

tac:mode a owl:ObjectProperty ;
	rdfs:label "mode"@en ;
	rdfs:comment "Access mode is defined per triple authorization."@en ;
	rdfs:domain tac:TripleAuthorization ;
	rdfs:subPropertyOf acl:mode ;
	vs:term_status "testing"@en .
