Union 在Jena中创建类联合

Union 在Jena中创建类联合,union,jena,semantic-web,Union,Jena,Semantic Web,我正在尝试使用Jena框架创建两个类 我目前有以下代码 RDFNode[] nodes1 = {apple, banana}; RDFList fruit_list= model.createList(nodes1); UnionClass fruit_union= model.createUnionClass(NS + "Fruit_Union", fruist_list); 作为一个例子,我从互联网上的某个地方得到了这段代码,但不知何故,这并没有生成我想要的必要代码 如何创建两个类

我正在尝试使用Jena框架创建两个类

我目前有以下代码

 RDFNode[] nodes1 = {apple, banana};
 RDFList fruit_list= model.createList(nodes1);

 UnionClass fruit_union= model.createUnionClass(NS + "Fruit_Union", fruist_list);

作为一个例子,我从互联网上的某个地方得到了这段代码,但不知何故,这并没有生成我想要的必要代码


如何创建两个类或资源的并集,然后将其用作ObjectProperty的范围?

我不确定您期望的结果。但是,请检查以下解决方案

public void unionClassObjectProperty(){
    OntModel model = ModelFactory.createOntologyModel( OntModelSpec.OWL_MEM );
    String NS = "http://example.com/q/123456/";
    //creating a union of two classes
    OntClass apple = model.createClass( NS+"apple" );
    OntClass banana = model.createClass( NS+"banana" );
    OntClass fruit_union = model.createUnionClass( null, model.createList( new RDFNode[] { apple, banana } ));
    //use it as a range for a ObjectProperty
    ObjectProperty objectProperty = model.createObjectProperty(NS +"fruitObjectProperty");
    objectProperty.addRange(fruit_union);
    model.write( System.out, "RDF/XML-ABBREV" );
}

但不知何故,这并没有生成我想要的必要代码。“你怎么知道?它创建了什么?你希望它创建什么?请注意,“寻求调试帮助的问题(“为什么这段代码不工作?”)必须包括所需的行为,一个特定的问题或错误,以及在问题本身中重现它所需的最短代码。“我想你已经得到了代码,但我们不知道你试图实现什么,以及什么不起作用。