blob: b0363ac68caffccbe6c8d53833588bde1bfee7f5 [file] [log] [blame]
## Licensed to the Apache Software Foundation (ASF) under one
## or more contributor license agreements. See the NOTICE file
## distributed with this work for additional information
## regarding copyright ownership. The ASF licenses this file
## to you under the Apache License, Version 2.0 (the
## "License"); you may not use this file except in compliance
## with the License. You may obtain a copy of the License at
##
## http://www.apache.org/licenses/LICENSE-2.0
##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS,
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
@prefix lm: <http://jena.hpl.hp.com/2004/08/location-mapping#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix : <#> .
<> rdfs:comment "Vocabulary for describing Jena models" ;
dc:creator "Chris Dollin" ;
dc:creator "the Jena team" ;
dc:subject "" ;
dc:publisher "HP" ;
dc:title "Jena Model Spec" ;
dc:description "Vocabulary for describing Jena models" ;
dc:date "2005-11-15" ;
dc:format "RDF" ;
dc:identifier :
.
#
# Alias for owl:imports
#
ja:imports a rdf:Property
; rdfs:label "Assembler.imports"
; rdfs:comment
"""property whose object is another JA description to
be loaded into this one; equivalent to owl:imports."""
.
#
# Assembler object: those things that can be specified and created
#
ja:Object a rdfs:Class
; rdfs:label "Assembler.Object"
; rdfs:comment "the class of Assembler objects"
.
#
# Assembler model base type.
#
ja:Model a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:subClassOf ja:Loadable
; rdfs:subClassOf ja:ContentItem
; rdfs:label "Assembler.Model"
; rdfs:comment "the class of Assembler model objects"
.
#
# every model can has some content specified by a Content object.
#
ja:content a rdf:Property
; rdfs:label "Assembler.content"
; rdfs:comment
"""specifies that the subject Loadable is to be loaded with
all the contents specified by the object Content.
"""
; rdfs:domain ja:Loadable
; rdfs:range ja:Content
.
ja:initialContent a rdf:Property
; rdfs:label "Assembler.initialContent"
; rdfs:comment
"""specifies that the subject Loadable is to be loaded with
all the contents specified by the object Load when it is first
created - ie not when eg an existing database model is opened.
"""
; rdfs:domain ja:Loadable
; rdfs:range ja:Content
.
ja:Loadable a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.Loadable"
; rdfs:comment "a Loadable object, namely a Model or a Load"
.
ja:HasFileManager a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.HasFileManager"
; rdfs:comment "an object that may have a fileManager property"
.
ja:Content a rdfs:Class
; rdfs:subClassOf ja:HasFileManager
; rdfs:label "Assembler.Content"
; rdfs:comment "content to be loaded into a Loadable"
.
#
# there are two kinds of Load. A ContentGroup collects together
# other Loads, specified with ja:content.
#
ja:ContentGroup a rdfs:Class
; rdfs:subClassOf ja:Content, ja:Loadable
.
#
# the other kind of Content is a ContentItem, which is either a
# URL or a literal string with an optional language name.
#
ja:ContentItem a rdfs:Class
; rdfs:subClassOf ja:Content
; rdfs:subClassOf [owl:onProperty ja:fileManager; owl:maxCardinality 1]
; rdfs:label "Assembler.ContentItem"
; rdfs:comment "a single loadable model item"
.
ja:externalContent a rdf:Property
; rdfs:label "Assembler.externalContent"
; rdfs:comment
"""the subject Load is to be loaded from
the object URL"""
; rdfs:domain ja:ContentItem
.
ja:literalContent a rdf:Property
; rdfs:label "Assembler.literalContent"
; rdfs:comment
"""the subject Load is to be loaded from the
object String"""
; rdfs:domain ja:ContentItem
.
ja:contentEncoding a rdf:Property
; rdfs:label "Assembler.contentEncoding"
; rdfs:comment
"""specifies the name of the encoding language (N3, RDF/XML, etc)
for the associated file or string. Overrides any guess that might
otherwise be made. Guesses when omitted: starts with '<' means
RDF/XML, starts with '@' or '#' means N3, otherwise NTRIPLE"""
; rdfs:domain ja:ContentItem
.
#
# default models [typically memory models]
#
ja:DefaultModel a rdfs:Class
; rdfs:subClassOf ja:Model
; rdfs:label "Assembler.DefaultModel"
; rdfs:comment "the default model description"
.
#
# memory models
#
ja:MemoryModel a rdfs:Class
; rdfs:subClassOf ja:Model
; rdfs:label "Assembler.MemoryModel"
; rdfs:comment "description of a memory model"
.
#
# named models [for file & database models]
#
ja:NamedModel a rdfs:Class
; rdfs:subClassOf ja:Model
; rdfs:subClassOf [owl:onProperty ja:modelName; owl:cardinality 1]
; rdfs:label "Assembler.NamedModel"
; rdfs:comment
"""shared superclass for FileModel and RDBModel,
accepting the modelName property"""
.
ja:modelName a rdf:Property
; rdfs:label "Assembler.modelName"
; rdfs:comment
"""property specifying that the subject NamedModel shall
have the object String as its name. If the object is a URI
node, it has the spelling of the URI as its name."""
; rdfs:domain ja:NamedModel
.
#
# file models
#
ja:FileModel a rdfs:Class
; rdfs:subClassOf ja:NamedModel
; rdfs:subClassOf [owl:onProperty ja:fileEncoding; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:directory; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:mapName; owl:maxCardinality 1]
; rdfs:label "Assembler.FileModel"
; rdfs:comment
"""a FileModel is a file-backed NamedModel implemented as a
MemoryModel with the name given by the modelName and in the
directory given by fromDirectory."""
.
ja:directory a rdf:Property
; rdfs:label "directory"
; rdfs:comment
"""property of a FileModel giving the directory in which the
modelName is to be resolved. Query: is the current behaviour
of FileModels to be preserved?"""
; rdfs:domain ja:FileModel
.
ja:mapName a rdf:Property
; rdfs:label "Assembler.mapName"
; rdfs:domain ja:FileModel
; rdfs:comment
"""property of a FileModel specifying whether the modelName should
be escaped by replacing _, /, and : by __, _S, _C before being used,
to allow URIs as model names without implying nested directory
structure. If omitted or not ja:true, no translation is done."""
.
ja:fileEncoding a rdf:Property
; rdfs:domain ja:FileModel
; rdfs:label "Assemble.fileEncoding"
; rdfs:comment """FileModel property to give language encoding"""
.
#
# database models
#
ja:RDBModel a rdfs:Class
; rdfs:subClassOf ja:NamedModel
; rdfs:subClassOf [owl:onProperty ja:connection; owl:cardinality 1]
; rdfs:subClassOf ja:Connectable
; owl:equivalentClass [owl:intersectionOf (ja:Connectable ja:NamedModel)]
; rdfs:label "Assembler.RDBModel"
; rdfs:comment
"""a Model from a Jena relational database, specified by a
Connection and with a given name."""
.
ja:Connectable a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.Connectable"
; rdfs:comment
"""The class of Objects which can be the subject of a ja:connection
property."""
.
ja:connection a rdf:Property
; rdfs:label "Assembler.connection"
; rdfs:comment
"""property specifying that the subject RDBModel is built
using the connection specified by the object."""
; rdfs:domain ja:Connectable
; rdfs:range ja:Connection
.
ja:ModelSource a rdfs:Class
; rdfs:subClassOf ja:Connectable
; rdfs:label "Assembler.ModelSource"
; rdfs:comment "Source of models by name for an OntModelSpec"
.
ja:RDBModelSource a rdfs:Class
; rdfs:subClassOf ja:ModelSource
; rdfs:subClassOf ja:Connectable
; rdfs:label "Assembler.RDBModelSource"
; rdfs:comment "A ModelSource backed by an RDB"
.
#
# inference models
#
ja:InfModel a rdfs:Class
; rdfs:subClassOf ja:Model
; rdfs:subClassOf [owl:onProperty ja:baseModel; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:reasoner; owl:maxCardinality 1]
; rdfs:label "Assembler.InfModel"
; rdfs:comment
"""class of inference models given by applying a reasoner to a base model
(which might be implicitly the a default model)"""
.
ja:reasoner a rdf:Property
; rdfs:label "Assembler.reasoner"
; rdfs:comment
"""property of an inference model that specifies the reasoner
to use."""
; rdfs:domain ja:InfModel
; rdfs:range ja:ReasonerFactory
.
ja:baseModel a rdf:Property
; rdfs:label "Assembler.baseModel"
; rdfs:comment
"""optional property of an inference model that specifies the
base model over which inference is done."""
; rdfs:domain ja:InfModel
; rdfs:range ja:Model
.
#
# reasoner factories; see also properties of HasRules.
#
ja:ReasonerFactory a rdfs:Class
; rdfs:subClassOf ja:HasRules
; rdfs:subClassOf [owl:onProperty ja:ReasonerURL; owl:maxCardinality 1]
; rdfs:label "Assembler.ReasonerFactory"
; rdfs:comment
"""class of ReasonerFactory objects, allowing arbitrary reasoner
properties to be attached."""
.
ja:reasonerURL a rdf:Property
; rdfs:label "Assembler.reasonerURL"
; rdfs:comment
"""property of a ReasonerFactory specifying the URL of the reasoner
in the reasoner registry; only one such property per reasoner."""
; rdfs:domain ja:ReasonerFactory
.
ja:reasonerClass a rdf:Property
; rdfs:label "Assembler.reasonerClass"
; rdfs:comment "property of a ReasonerFactory giving the class name"
; rdfs:domain ja:ReasonerFactory
.
ja:reasonerFactory a rdf:Property
; rdfs:label "Assembler.reasonerFactory"
; rdfs:comment "property of an OntModelSpec giving the reasoner for the spec"
; rdfs:range ja:ReasonerFactory
; rdfs:domain ja:OntModelSpec
.
ja:schema a rdf:Property
; rdfs:label "Assembler.schemaURL"
; rdfs:comment
"""property of a Reasoner specifying schema Models to be loaded.
Multiple schemas can be given; they are unioned
together before being supplied to the reasoner."""
; rdfs:domain ja:ReasonerFactory
; rdfs:range ja:Model
.
#
# rulesets
#
ja:HasRules a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.HasRules"
; rdfs:comment
"""the class of things that can have rules attached,
viz, Reasoners and RuleSets."""
.
ja:RuleSet a rdfs:Class
; rdfs:subClassOf ja:HasRules
; rdfs:label "Assembler.RuleSet"
; rdfs:comment
"""class of sets of rules (for a Jena rule engine) specified
within the Assembler file. A RuleSet may refer to rules by
their URL, by their containing RuleSets, or by including them
as string literals."""
.
ja:rules a rdf:Property
; rdfs:label "Assembler.rules"
; rdfs:comment
"""property of a GenericRuleReasoner or RuleSet which specifies
rules given within rulesets within the Assembler RDF. Multiple
such properties can be given."""
; rdfs:domain ja:HasRules
; rdfs:range ja:RuleSet
.
ja:rulesFrom a rdf:Property
; rdfs:label "Assembler.rulesFrom"
; rdfs:comment
"""property of a RuleSet which identifies rules by their URL.
The target resource is loaded and parsed as a rule string."""
; rdfs:domain ja:HasRules
.
ja:rule a rdf:Property
; rdfs:label "Assembler.rule"
; rdfs:comment
"""property of a RuleSet specifying a rule (or rules) as a
literal string."""
; rdfs:domain ja:HasRules
.
#
#
#
ja:LocationMapper a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:subClassOf [owl:onProperty lm:mapping; owl:maxCardinality 1]
; rdfs:label "Assembler.LocationMapper"
; rdfs:comment "class of LocationMapper specifications"
.
lm:mapping a rdf:Property
; rdfs:domain ja:LocationMapper
; rdfs:label "LocationMapper.mapping"
; rdfs:comment
"""LocationMapper property which identifies location mappings and
which we have stolen to identify ja:LocationMapper specifications."""
.
ja:FileManager a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:subClassOf [owl:onProperty ja:locationMapper; owl:maxCardinality 1]
; rdfs:label "Assembler.FileManager"
; rdfs:comment "class of FileManager specifications"
.
ja:locationMapper a rdf:Property
; rdfs:domain ja:FileManager
; rdfs:range ja:LocationMapper
; rdfs:label "Assembler.locationMapper"
; rdfs:comment "FileManager property which identifies its LocationMapper."
.
ja:DocumentManager a rdfs:Class
; rdfs:subClassOf ja:HasFileManager
; rdfs:subClassOf [owl:onProperty ja:fileManager; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:policyPath; owl:maxCardinality 1]
; rdfs:label "Assembler.DocumentManager"
; rdfs:comment "class of OntDocumentManager specificiations"
.
ja:fileManager a rdf:Property
; rdfs:domain ja:HasFileManager
; rdfs:range ja:FileManager
; rdfs:label "Assembler.fileManager"
; rdfs:comment
"""property of a DocumentManager whose value is its FileManager"""
.
ja:policyPath a rdf:Property
; rdfs:domain ja:DocumentManager
; rdfs:label "Assembler.policyPath"
; rdfs:comment
"""property of a DocumentManager whose value is its metadata policy path"""
.
#
# ontology models. every ontology model is an inference model.
#
ja:OntModel a rdfs:Class
; rdfs:subClassOf ja:InfModel, ja:UnionModel
; rdfs:label "Assembler.OntModel"
; rdfs:comment "the class of OntModel specifications"
.
ja:OntModelSpec a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:subClassOf [owl:onProperty ja:ontLanguage; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:documentManager; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:importSource; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:reasonerFactory; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:like; owl:maxCardinality 1]
; rdfs:label "Assembler.OntModelSpec"
; rdfs:comment "class of OntModelSpec objects for OntModel construction"
.
ja:ontModelSpec a rdf:Property
; rdfs:label "Assembler.ontModelSpec"
; rdfs:comment "property of an OntModel giving its OntModelSpec"
; rdfs:domain ja:OntModel
; rdfs:range ja:OntModelSpec
.
ja:likeBuiltinSpec a rdf:Property
; rdfs:label "Assembler.likeBuiltinSpec"
; rdfs:comment "property of an OntModelSpec giving an internal spec it's like"
; rdfs:domain ja:OntModelSpec
.
ja:ontLanguage a rdf:Property
; rdfs:label "Assembler.ontLanguage"
; rdfs:comment
"""property of an OntModelSpec that specifies the ontology
language."""
; rdfs:domain ja:OntModelSpec
.
ja:documentManager a rdf:Property
; rdfs:label "Assembler.docManager"
; rdfs:comment
"""property of an OntModelSpec that specifies the
document manager of the model. If omitted, the model has
the default document manager."""
; rdfs:domain ja:OntModelSpec
.
ja:importSource a rdf:Property
; rdfs:label "Assembler.importSource"
; rdfs:comment
"""property of an OntModelSpec that specifies the importSource
of the model. If omitted, the model has a default MemoryModelMaker. """
; rdfs:domain ja:OntModelSpec
.
#
# union models
#
ja:UnionModel a rdfs:Class
; rdfs:subClassOf ja:Model
; rdfs:subClassOf [owl:onProperty ja:rootModel; owl:maxCardinality 1]
; rdfs:label "Assembler.Union"
; rdfs:comment "class of Union models"
.
ja:subModel a rdf:Property
; rdfs:label "Assembler.subModel"
; rdfs:comment
"""property of a UnionModel that specifies one of its non-root sub-models.
Arbitrarily many sub-models can be supplied."""
; rdfs:domain ja:UnionModel
; rdfs:range ja:Model
.
ja:rootModel a rdf:Property
; rdfs:domain ja:UnionModel
; rdfs:range ja:Model
; rdfs:label "Assembler.rootModel"
; rdfs:comment
"""property of a UnionModel that specifies its mutable base model"""
.
#
# connections
#
ja:Connection a rdfs:Class
; rdfs:subClassOf [owl:onProperty ja:dbURL; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbURLProperty; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbUser; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbUserProperty; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbPassword; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbPasswordProperty; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbType; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbTypeProperty; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbClass; owl:maxCardinality 1]
; rdfs:subClassOf [owl:onProperty ja:dbClassProperty; owl:maxCardinality 1]
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.Connection"
; rdfs:comment
"class of RDB Connection objects for JDBC database connections."
.
ja:dbURL a rdf:Property
; rdfs:label "Assembler.dbURL"
; rdfs:comment
"""property of a Connection that specifies as a URI Resource
the URL of the database to connect to."""
; rdfs:domain ja:Connection
.
ja:dbUser a rdf:Property
; rdfs:label "Assembler.dbUser"
; rdfs:comment
"""property of a database connection that specifies as a string
the name of the database user for which the connection is to be made."""
; rdfs:domain ja:Connection
.
ja:dbPassword a rdf:Property
; rdfs:label "Assembler.dbPassword"
; rdfs:comment
"""property of a database connection that specifies as a string the
password used to authorise the connection."""
; rdfs:domain ja:Connection
.
ja:dbType a rdf:Property
; rdfs:label "Assembler.dbType"
; rdfs:comment
"""property of a database connection that specifies as a string the
type of the database to connect to."""
; rdfs:domain ja:Connection
.
ja:dbURLProperty a rdf:Property
; rdfs:label "Assembler.dbURLProperty"
; rdfs:comment
"""property of a Connection that specifies the name of a Java
system property containing the URL of the database to connect to."""
; rdfs:domain ja:Connection
.
ja:dbUserProperty a rdf:Property
; rdfs:label "Assembler.dbUserProperty"
; rdfs:comment
"""property of a database connection that specifies the name of
a Java system property containing the name of the database user
for which the connection is to be made."""
; rdfs:domain ja:Connection
.
ja:dbPasswordProperty a rdf:Property
; rdfs:label "Assembler.dbPasswordProperty"
; rdfs:comment
"""property of a database connection that specifies the name of
a Java system property the password used to authorise the connection."""
; rdfs:domain ja:Connection
.
ja:dbTypeProperty a rdf:Property
; rdfs:label "Assembler.dbTypeProperty"
; rdfs:comment
"""property of a database connection that specifies the name of a
Java system property containing the type of the database to connect to."""
; rdfs:domain ja:Connection
.
ja:dbClass a rdf:Property
; rdfs:label "Assembler.dbClass"
; rdfs:comment
"""property of a database connection that specifies as a string the
name of a Java class to be loaded before connection is attempted."""
; rdfs:domain ja:Connection
.
ja:dbClassProperty a rdf:Property
; rdfs:label "Assembler.dbClass"
; rdfs:comment
"""property of a database connection that specifies as a string the
name a Java system property containing the name of a Java class to be
loaded before connection is attemped."""
; rdfs:domain ja:Connection
.
#
# prefix mappings
#
ja:PrefixMapping a rdfs:Class
; rdfs:subClassOf ja:Object
; rdfs:label "Assembler.PrefixMapping"
; rdfs:comment
"""class encoding a Jena prefix mapping"""
.
ja:prefixMapping a rdf:Property
; rdfs:label "Assembler.prefixMapping"
; rdfs:comment
"""property used to attach a PrefixMapping to a Model"""
; rdfs:domain ja:Model
; rdfs:range ja:PrefixMapping
.
ja:includes a rdf:Property
; rdfs:label "Assembler.includes"
; rdfs:comment """property to allow one prefix mapping to include another"""
; rdfs:domain ja:PrefixMapping
; rdfs:range ja:PrefixMapping
.
ja:SinglePrefixMapping a rdfs:Class
; rdfs:subClassOf ja:PrefixMapping
; rdfs:subClassOf [owl:onProperty ja:prefix; owl:cardinality 1]
; rdfs:subClassOf [owl:onProperty ja:namespace; owl:cardinality 1]
; rdfs:label "Assembler.SinglePrefixMapping"
; rdfs:comment """class encoding a single prefix mapping maplet"""
.
ja:prefix a rdf:Property
; rdfs:label "Assembler.prefix"
; rdfs:comment """property for specifying the prefix of a SimplePrefixMapping"""
; rdfs:domain ja:SinglePrefixMapping
.
ja:namespace a rdf:Property
; rdfs:label "Assembler.namespace"
; rdfs:comment """property for specifying the URL of a SimplePrefixMapping"""
; rdfs:domain ja:SinglePrefixMapping
.
ja:RDFDataset a rdfs:Class
; rdfs:label "An RDF dataset"
.
ja:DatasetTxnMem a rdfs:Class
; rdfs:label "An RDF dataset backed by the transactional in-memory implementation"
.
ja:DatasetNull a rdfs:Class .
ja:defaultGraph a rdf:Property .
ja:namedGraph a rdf:Property .
ja:graphName a rdf:Property .
ja:graph a rdf:Property .
ja:graphData a rdf:Property .
ja:textIndex a rdf:Property .
ja:transactional a rdf:Property .
ja:context a rdf:Property .
ja:ctxName a rdf:Property .
ja:ctxValue a rdf:Property .
# Local Variables:
# tab-width: 4
# indent-tabs-mode: nil
# End: