使用本体做添加的一些方法

Posted on 2011-09-06 12:29  语义网博客  阅读(453)  评论(0)    收藏  举报

:(以下为属性的定义)

OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );

OntClass programme = m.createClass( NS + "Programme" );

OntClass orgEvent = m.createClass( NS + "OrganizedEvent" );

ObjectProperty hasProgramme = m.createObjectProperty( NS+ "hasProgramme" );

hasProgramme.addDomain( orgEvent );

body.addRange( programme );

body.addLabel( "has programme", "en" );

As a further example, I can alternatively add information to an existing ontology. Let's add a super-property hasDeadline to generalise the separate properties denoting the submission deadline, notification deadline and camera-ready deadline:

OntModel m = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );:(建立本体模型)

m.read( "http://www.eswc2006.org/technologies/ontology" );(读取本体文件)

DatatypeProperty subDeadline = m.getDatatypeProperty( NS + "hasSubmissionDeadline" );

(定义数据类型属性subDeadline,并通过getDatatypeProperty方法获取)

DatatypeProperty notifyDeadline = m.getDatatypeProperty( NS + "hasNotificationDeadline" );

(定义数据类型属性notifyDeadline,并获取)

DatatypeProperty cameraDeadline = m.getDatatypeProperty( NS + "hasCameraReadyDeadline" );

(定义数据类型属性cameraDeadline ,并获取)

DatatypeProperty deadline = m.createDatatypeProperty( NS + "deadline" );

(定义数据类型属性,并创建)

deadline.addDomain( m.getOntClass( NS + "Call" ) );

(添加定义域,该定义域通过getOntClass方法获取)

deadline.addRange( XSD.dateTime );

(添加值域)

deadline.addSubProperty( subDeadline );

(向数据类型属性subDeadline中添加子属性)

deadline.addSubProperty( notifyDeadline );

(向数据类型属性notifyDeadline中添加子属性)

deadline.addSubProperty( cameraDeadline );

(向数据类型属性cameraDeadline中添加子属性)

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3