在 Protégé 中,我创建了一个具有类Service、Attributes等的本体,以及一个对象属性hasAttributes,如下所示:
Service有Attributes属性(serviceIdentifier:String, Type(String), Description(sting), providerIdentifier(String), InputParameter(), OutputParameter(), price(Integer)
我的问题是:我们必须将serviceidentifier、type、description等视为类Attributes的子类或数据属性吗?
本体如下:
<?xml version="1.0"?>
<!DOCTYPE Ontology [
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY xml "http://www.w3.org/XML/1998/namespace" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<Ontology xmlns="http://www.w3.org/2002/07/owl#"
xml:base="http://www.semanticweb.org/acer/ontologies/2014/1/untitled-ontology-56"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
ontologyIRI="http://www.semanticweb.org/acer/ontologies/2014/1/untitled-ontology-56">
<Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/>
<Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/>
<Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/>
<Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/>
<Declaration>
<Class IRI="#attributes"/>
</Declaration>
<Declaration>
<Class IRI="#capsule"/>
</Declaration>
<Declaration>
<Class IRI="#requirement"/>
</Declaration>
<Declaration>
<Class IRI="#service"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#hasAttribute"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#hasCapsule"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#hasRequirement"/>
</Declaration>
<Declaration>
<DataProperty IRI="#description"/>
</Declaration>
<Declaration>
<DataProperty IRI="#diskFree"/>
</Declaration>
<Declaration>
<DataProperty IRI="#diskFreeUnit"/>
</Declaration>
<Declaration>
<DataProperty IRI="#diskFreeValue"/>
</Declaration>
<Declaration>
<DataProperty IRI="#inputParameter"/>
</Declaration>
<Declaration>
<DataProperty IRI="#location"/>
</Declaration>
<Declaration>
<DataProperty IRI="#memoryFree"/>
</Declaration>
<Declaration>
<DataProperty IRI="#memoryFreeUnit"/>
</Declaration>
<Declaration>
<DataProperty IRI="#memoryFreeValue"/>
</Declaration>
<Declaration>
<DataProperty IRI="#numInstance"/>
</Declaration>
<Declaration>
<DataProperty IRI="#operationSystem"/>
</Declaration>
<Declaration>
<DataProperty IRI="#outputParameter"/>
</Declaration>
<Declaration>
<DataProperty IRI="#port"/>
</Declaration>
<Declaration>
<DataProperty IRI="#price"/>
</Declaration>
<Declaration>
<DataProperty IRI="#protocol"/>
</Declaration>
<Declaration>
<DataProperty IRI="#providerIdentifier"/>
</Declaration>
<Declaration>
<DataProperty IRI="#serviceIdentifier"/>
</Declaration>
<Declaration>
<DataProperty IRI="#type"/>
</Declaration>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#description"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#inputParameter"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#numInstance"/>
<Datatype abbreviatedIRI="xsd:integer"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#outputParameter"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#price"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#providerIdentifier"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#serviceIdentifier"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#attributes"/>
<DataAllValuesFrom>
<DataProperty IRI="#type"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#capsule"/>
<DataAllValuesFrom>
<DataProperty IRI="#location"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#capsule"/>
<DataAllValuesFrom>
<DataProperty IRI="#port"/>
<Datatype abbreviatedIRI="xsd:integer"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#capsule"/>
<DataAllValuesFrom>
<DataProperty IRI="#protocol"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#requirement"/>
<DataAllValuesFrom>
<DataProperty IRI="#diskFreeUnit"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#requirement"/>
<DataAllValuesFrom>
<DataProperty IRI="#diskFreeValue"/>
<Datatype abbreviatedIRI="xsd:integer"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#requirement"/>
<DataAllValuesFrom>
<DataProperty IRI="#memoryFreeUnit"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#requirement"/>
<DataAllValuesFrom>
<DataProperty IRI="#memoryFreeValue"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#requirement"/>
<DataAllValuesFrom>
<DataProperty IRI="#operationSystem"/>
<Datatype abbreviatedIRI="xsd:string"/>
</DataAllValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#service"/>
<ObjectSomeValuesFrom>
<ObjectProperty IRI="#hasAttribute"/>
<Class IRI="#attributes"/>
</ObjectSomeValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#service"/>
<ObjectSomeValuesFrom>
<ObjectProperty IRI="#hasCapsule"/>
<Class IRI="#capsule"/>
</ObjectSomeValuesFrom>
</SubClassOf>
<SubClassOf>
<Class IRI="#service"/>
<ObjectSomeValuesFrom>
<ObjectProperty IRI="#hasRequirement"/>
<Class IRI="#requirement"/>
</ObjectSomeValuesFrom>
</SubClassOf>
<SubDataPropertyOf>
<DataProperty IRI="#diskFreeUnit"/>
<DataProperty IRI="#diskFree"/>
</SubDataPropertyOf>
<SubDataPropertyOf>
<DataProperty IRI="#diskFreeValue"/>
<DataProperty IRI="#diskFree"/>
</SubDataPropertyOf>
<SubDataPropertyOf>
<DataProperty IRI="#memoryFreeUnit"/>
<DataProperty IRI="#memoryFree"/>
</SubDataPropertyOf>
<SubDataPropertyOf>
<DataProperty IRI="#memoryFreeValue"/>
<DataProperty IRI="#memoryFree"/>
</SubDataPropertyOf>
</Ontology>
<!-- Generated by the OWL API (version 3.4.2) http://owlapi.sourceforge.net -->