📄 metagraph.java
字号:
table.put(c,cTemp);
metaGraph.addConcept(cTemp);
}
for(Iterator j = axiom.getHypothesisRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Antecedent_BR",l));
if(r.getArity() == 3) cTemp.setType(metaOCGL.getConceptType("Antecedent_TR",l));
cTemp.translate(0,cpt*CGConstants.Y_MAX);
table.put(r,cTemp);
metaGraph.addConcept(cTemp);
for(int index = 1;index <= r.getArity();index ++){
Concept c = (Concept) r.getLinkedConcept(index);
if(c != null){
if(index == 1){
Relation rTemp = new Relation(metaOCGL.getRelationType("role1",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
if(index == 2){
Relation rTemp = new Relation(metaOCGL.getRelationType("role2",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
if(index == 3){
Relation rTemp = new Relation(metaOCGL.getRelationType("role3",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
}
}
}
for(Iterator j = axiom.getPureConclusionConcepts().iterator();j.hasNext();){
Concept c = (Concept) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Consequent_C",l));
cTemp.translate(0,cpt*CGConstants.Y_MAX);
table.put(c,cTemp);
metaGraph.addConcept(cTemp);
}
for(Iterator j = axiom.getConclusionRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Consequent_BR",l));
if(r.getArity() == 3) cTemp.setType(metaOCGL.getConceptType("Consequent_TR",l));
cTemp.translate(0,cpt*CGConstants.Y_MAX);
table.put(r,cTemp);
metaGraph.addConcept(cTemp);
for(int index = 1;index <= r.getArity();index ++){
Concept c = (Concept) r.getLinkedConcept(index);
if(c != null){
if(index == 1){
Relation rTemp = new Relation(metaOCGL.getRelationType("role1",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
if(index == 2){
Relation rTemp = new Relation(metaOCGL.getRelationType("role2",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
if(index == 3){
Relation rTemp = new Relation(metaOCGL.getRelationType("role3",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
rTemp.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rTemp);
}
}
}
}
// Type identities
for(Iterator j = axiom.getAllConcepts().iterator();j.hasNext();){
Concept c = (Concept) j.next();
for(Iterator k = axiom.getAllConcepts().iterator();k.hasNext();){
Concept cTemp = (Concept) k.next();
if(!c.equals(cTemp) && (c.getType().equals(cTemp.getType()))){
Relation r = new Relation(metaOCGL.getRelationType("type_identity",l));
r.setLinkedConcept((Concept) table.get(c),1);
r.setLinkedConcept((Concept) table.get(cTemp),2);
r.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(r);
}
}
}
for(Iterator j = axiom.getAllRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
for(Iterator k = axiom.getAllRelations().iterator();k.hasNext();){
Relation rTemp = (Relation) k.next();
if(!r.equals(rTemp) && (r.getType().equals(rTemp.getType()))){
Relation rIdent = new Relation(metaOCGL.getRelationType("type_identity",l));
rIdent.setLinkedConcept((Concept) table.get(r),1);
rIdent.setLinkedConcept((Concept) table.get(rTemp),2);
rIdent.translate(0,cpt*CGConstants.Y_MAX);
metaGraph.addRelation(rIdent);
}
}
}
}
CGXMLParser.saveGraph(metaOCGL,metaGraph,l,target.getAbsolutePath(),true);
}
/** Returns the meta representation of the axiom a, with type identity relations.
* The name of the graph is those of the axiom. */
public Graph buildMetaGraphWithIdentities(Axiom axiom, Language l) throws FileNotFoundException,IOException{
Ontology metaOCGL = CGXMLParser.loadOntology(Constants.METAOCGL_FILE_NAME,l,true);
Graph metaGraph = new Graph(new Terms(axiom.getTerm(l)));
Hashtable table = new Hashtable();
for(Iterator j = axiom.getHypothesisConcepts().iterator();j.hasNext();){
Concept c = (Concept) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Antecedent_C",l));
table.put(c,cTemp);
metaGraph.addConcept(cTemp);
}
for(Iterator j = axiom.getHypothesisRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Antecedent_BR",l));
if(r.getArity() == 3) cTemp.setType(metaOCGL.getConceptType("Antecedent_TR",l));
table.put(r,cTemp);
metaGraph.addConcept(cTemp);
for(int index = 1;index <= r.getArity();index ++){
Concept c = (Concept) r.getLinkedConcept(index);
if(c != null){
if(index == 1){
Relation rTemp = new Relation(metaOCGL.getRelationType("role1",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
if(index == 2){
Relation rTemp = new Relation(metaOCGL.getRelationType("role2",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
if(index == 3){
Relation rTemp = new Relation(metaOCGL.getRelationType("role3",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
}
}
}
for(Iterator j = axiom.getPureConclusionConcepts().iterator();j.hasNext();){
Concept c = (Concept) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Consequent_C",l));
table.put(c,cTemp);
metaGraph.addConcept(cTemp);
}
for(Iterator j = axiom.getConclusionRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
Concept cTemp = new Concept(metaOCGL.getConceptType("Consequent_BR",l));
if(r.getArity() == 3) cTemp.setType(metaOCGL.getConceptType("Consequent_TR",l));
table.put(r,cTemp);
metaGraph.addConcept(cTemp);
for(int index = 1;index <= r.getArity();index ++){
Concept c = (Concept) r.getLinkedConcept(index);
if(c != null){
if(index == 1){
Relation rTemp = new Relation(metaOCGL.getRelationType("role1",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
if(index == 2){
Relation rTemp = new Relation(metaOCGL.getRelationType("role2",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
if(index == 3){
Relation rTemp = new Relation(metaOCGL.getRelationType("role3",l));
rTemp.setLinkedConcept(cTemp,1);
rTemp.setLinkedConcept((Concept) table.get(c),2);
metaGraph.addRelation(rTemp);
}
}
}
}
// Type identities
for(Iterator j = axiom.getAllConcepts().iterator();j.hasNext();){
Concept c = (Concept) j.next();
for(Iterator k = axiom.getAllConcepts().iterator();k.hasNext();){
Concept cTemp = (Concept) k.next();
if(!c.equals(cTemp) && (c.getType().equals(cTemp.getType()))){
Relation r = new Relation(metaOCGL.getRelationType("type_identity",l));
r.setLinkedConcept((Concept) table.get(c),1);
r.setLinkedConcept((Concept) table.get(cTemp),2);
metaGraph.addRelation(r);
}
}
}
for(Iterator j = axiom.getAllRelations().iterator();j.hasNext();){
Relation r = (Relation) j.next();
for(Iterator k = axiom.getAllRelations().iterator();k.hasNext();){
Relation rTemp = (Relation) k.next();
if(!r.equals(rTemp) && (r.getType().equals(rTemp.getType()))){
Relation rIdent = new Relation(metaOCGL.getRelationType("type_identity",l));
rIdent.setLinkedConcept((Concept) table.get(r),1);
rIdent.setLinkedConcept((Concept) table.get(rTemp),2);
metaGraph.addRelation(rIdent);
}
}
}
return metaGraph;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -