mindpin / owl-viewer

以非常酷炫的力反馈拖拽效果来呈现的 owl 元数据关联图。当然我们希望把这个效果用在更多地方!演示戳这里:http://mindpin.github.io/owl-viewer/
0 stars 0 forks source link

模型api #1

Open fushang318 opened 10 years ago

fushang318 commented 10 years ago

OntologyClass

OntologyClass 类需要如下方法

class = new OntologyClass(iri)
class.add_relation(relation)

OntologyClass 类需要如下属性

class.iri
class.name
class.relations

OntologyIndividual

OntologyIndividual 类需要如下方法

individual = new OntologyIndividual(iri)
individual.add_relation(relation)

OntologyIndividual 类需要如下属性

individual.iri
individual.name
individual.relations

OntologyAnnotation

OntologyAnnotation 类需要如下方法

anno = new OntologyAnnotation(iri) # iri 表示唯一的名字
anno.add_relation(relation)

OntologyAnnotation 类需要如下属性

anno.iri
anno.name
anno.relations

OntologyObjectProperty

OntologyObjectProperty 类需要如下方法

object_property = new OntologyObjectProperty(iri)
object_property.add_relation(relation)
object_property.add_characteristic(characteristic)

OntologyObjectProperty 类需要如下属性

object_property.iri
object_property.name
object_property.characteristics
object_property.relations

OntologyCharacteristic

OntologyCharacteristic 需要的常量

OntologyCharacteristic.FUNCTIONAL
OntologyCharacteristic.INVERSE_FUNCTIONAL
OntologyCharacteristic.SYMMETRIC
OntologyCharacteristic.ASYMMETRIC
OntologyCharacteristic.TRANSITIVE
OntologyCharacteristic.REFLEXIVE
OntologyCharacteristic.IRREFLEXIVE

这七个常量都是 OntologyCharacteristic 实例

OntologyCharacteristic 需要的属性

characteristic.name

OntologyDataProperty

OntologyDataProperty 类需要如下方法

data_property = new OntologyDataProperty(iri)
data_property.add_characteristic(characteristic)
data_property.add_relation(relation)

OntologyDataProperty 类需要如下属性

data_property.iri
data_property.name
data_property.characteristics
data_property.relations

OntologyDatatype

方法

data_type = new OntologyDatatype(iri)
data_type.add_relation(relation)

属性

data_type.iri
data_type.name
data_type.relations

class iri 的取值

1 以 "#" 开头例如 "#A" 2 默认类型 "owl:Thing"

individual iri 的取值

以 "#" 开头例如 "#a"

annotation iri 的取值

1 以 "#" 开头例如 "#anno" 2 默认类型 "owl:backwardCompatibleWith" "rdfs:comment" "owl:deprecated" "owl:incompatibleWith" "rdfs:isDefinedBy" "rdfs:label" "owl:priorVersion" "rdfs:seeAlso" "owl:versionInfo"

object_property iri

1 以 "#" 开头例如 "#opa" 2 默认类型 "owl:topObjectProperty"

data_property iri

1 以 "#" 开头例如 "#dpa" 2 默认类型 "owl:topDataProperty"

data_type iri

1 以 "#" 开头例如 "#dt" 2 默认类型 "rdf:PlainLiteral" "xsd:anyURI" "xsd:base64Binary" "xsd:boolean" "xsd:byte" "xsd:dateTime" "xsd:dateTimeStamp" "xsd:decimal" "xsd:double" "xsd:float" "xsd:hexBinary" "xsd:int" "xsd:integer" "xsd:language" "xsd:Literal" "xsd:long" "xsd:Name" "xsd:NCName" "xsd:negativeInteger" "xsd:NMTOKEN" "xsd:nonNegativeInteger" "xsd:nonPositiveInteger" "xsd:normalizedString" "xsd:positiveInteger" "xsd:rational" "xsd:real" "xsd:short" "xsd:string" "xsd:token" "xsd:unsignedByte" "xsd:unsignedInt" "xsd:unsignedLong" "xsd:unsignedShort" "xsd:XMLLiteral"

fushang318 commented 10 years ago

使用说明

owl_parser = new OwlParser(owl_string)
ontology = owl_parser.build()
ontology.classes
ontology.annotations
ontology.individuals
ontology.data_properties
ontology.object_properties
ontology.data_types
fushang318 commented 10 years ago

UI上需要展示的

OntologyClass

class.sub_classes class.parent_classes class.equivalence_classes class.individuals

class.annotation_values class.disjoint_classes

OntologyIndividual

individual.object_property_values

individual.same_individuals individual.different_individuals individual.annotation_values individual.data_property_values

OntologyAnnotation

anno.domains_classes anno.ranges_classes anno.sub_annotations anno.parent_annotations anno.annotation_values

OntologyObjectProperty

object_property.equivalence_object_properties object_property.sub_object_properties object_property.parent_object_properties object_property.inverse_object_properties object_property.disjoint_object_properties

object_property.domain_classes object_property.range_classes object_property.characteristics object_property.annotation_values

OntologyDataProperty

data_property.equivalence_data_properties data_property.sub_data_properties data_property.parent_data_properties data_property.disjoint_data_properties data_property.domain_classes data_property.range_data_types data_property.characteristics data_property.annotation_values

OntologyDatatype

data_type.annotation_values