⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rdfmtinferencer.java

📁 这是外国一个开源推理机
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			URINode aaa = (URINode)nt.getPredicate();			ValueNode uuu = (ValueNode)nt.getObject();			if (uuu instanceof ResourceNode) {				StatementIterator t1Iter = _repository.getStatements(aaa, _repository.RDFS_RANGE_NODE, null);				while (t1Iter.hasNext()) {					Statement t1 = t1Iter.next();					ValueNode zzz = (ValueNode)t1.getObject();					if (zzz instanceof ResourceNode) {						boolean added = _addInferredStatement((ResourceNode)uuu, _repository.RDF_TYPE_NODE, zzz);						if (added) {							nofInferred++;						}					}				}				t1Iter.close();			}		}		ntIter.close();		_updateTriggers(Rdfs3_1, nofInferred);		return nofInferred;	}	/* rdfs3.	 * 3_2. aaa rdfs:range zzz &&  (nt)	 *     xxx aaa uuu -->        (t1)	 *     uuu rdf:type zzz       (t2)	 */	private int _applyRuleRdfs3_2() {		if (! _checkRule[Rdfs3_2]) {			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration, null, _repository.RDFS_RANGE_NODE, null);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			ResourceNode aaa = (ResourceNode)nt.getSubject();			ValueNode zzz = (ValueNode)nt.getObject();			if (aaa instanceof URINode && zzz instanceof ResourceNode) {				StatementIterator t1Iter = _repository.getStatements(null, (URINode)aaa, null);				while (t1Iter.hasNext()) {					Statement t1 = t1Iter.next();					ValueNode uuu = (ValueNode)t1.getObject();					if (uuu instanceof ResourceNode) {						boolean added = _addInferredStatement((ResourceNode)uuu, _repository.RDF_TYPE_NODE, zzz);						if (added) {							nofInferred++;						}					}				}				t1Iter.close();			}		}		ntIter.close();		_updateTriggers(Rdfs3_2, nofInferred);		return nofInferred;	}	/* rdfs4a. 	 * xxx aaa yyy --> xxx rdf:type rdfs:Resource	 */	private int _applyRuleRdfs4a() {		if (! _checkRule[Rdfs4a]) {			return 0;		}		int nofInferred = 0;		StatementIterator iter = new MemStatementIterator(_newThisIteration);		while (iter.hasNext()) {			Statement st = iter.next();			boolean added = _addInferredStatement(					(ResourceNode)st.getSubject(), _repository.RDF_TYPE_NODE, _repository.RDFS_RESOURCE_NODE);			if (added) {				nofInferred++;			}		}		iter.close();		_updateTriggers(Rdfs4a, nofInferred);		return nofInferred;	}	/* rdfs4b. 	 * xxx aaa uuu --> uuu rdf:type rdfs:Resource	 */	private int _applyRuleRdfs4b() {		if (! _checkRule[Rdfs4b]) {			return 0;		}		int nofInferred = 0;		StatementIterator iter = new MemStatementIterator(_newThisIteration);		while (iter.hasNext()) {			Statement st = iter.next();			ValueNode uuu = (ValueNode)st.getObject();			if (uuu instanceof ResourceNode) {				boolean added = _addInferredStatement(						(ResourceNode)uuu, _repository.RDF_TYPE_NODE, _repository.RDFS_RESOURCE_NODE);				if (added) {					nofInferred++;				}			}		}		iter.close();		_updateTriggers(Rdfs4b, nofInferred);		return nofInferred;	}	/* rdfs5. 	 * 5_1. aaa rdfs:subPropertyOf bbb &&   (nt)	 *     bbb rdfs:subPropertyOf ccc -->  (t1)	 *     aaa rdfs:subPropertyOf ccc      (t2)	 */	private int _applyRuleRdfs5_1() {		if (! _checkRule[Rdfs5_1]) {			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration,				null, _repository.RDFS_SUBPROPERTYOF_NODE, null);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			ResourceNode aaa = (ResourceNode)nt.getSubject();			ValueNode bbb = (ValueNode)nt.getObject();			if (bbb instanceof ResourceNode) {				StatementIterator t1Iter = _repository.getStatements(						(ResourceNode)bbb, _repository.RDFS_SUBPROPERTYOF_NODE, null);				while (t1Iter.hasNext()) {					Statement t1 = t1Iter.next();					ValueNode ccc = (ValueNode)t1.getObject();					if (ccc instanceof ResourceNode) {						boolean added = _addInferredStatement(aaa, _repository.RDFS_SUBPROPERTYOF_NODE, ccc);						if (added) {							nofInferred++;						}					}				}				t1Iter.close();			}		}		ntIter.close();		_updateTriggers(Rdfs5_1, nofInferred);		return nofInferred;	}	/* rdfs5.	 * 5_2. bbb rdfs:subPropertyOf ccc && (nt)	 *     aaa rdfs:subPropertyOf bbb -->  (t1)	 *     aaa rdfs:subPropertyOf ccc      (t2)	 */	private int _applyRuleRdfs5_2() {		if (! _checkRule[Rdfs5_2]) {			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration,				null, _repository.RDFS_SUBPROPERTYOF_NODE, null);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			ResourceNode bbb = (ResourceNode)nt.getSubject();			ValueNode ccc = (ValueNode)nt.getObject();			if (ccc instanceof ResourceNode) {				StatementIterator t1Iter = _repository.getStatements(null, _repository.RDFS_SUBPROPERTYOF_NODE, bbb);				while (t1Iter.hasNext()) {					Statement t1 = t1Iter.next();					ResourceNode aaa = (ResourceNode)t1.getSubject();					boolean added = _addInferredStatement(aaa, _repository.RDFS_SUBPROPERTYOF_NODE, ccc);					if (added) {						nofInferred++;					}				}				t1Iter.close();			}		}		ntIter.close();		_updateTriggers(Rdfs5_2, nofInferred);		return nofInferred;	}	/* rdfs6. 	 * xxx rdf:type rdf:Property --> xxx rdfs:subPropertyOf xxx	 * reflexivity of rdfs:subPropertyOf	 */	private int _applyRuleRdfs6() {		if (! _checkRule[Rdfs6]) {			return 0;		}		int nofInferred = 0;		StatementIterator iter = new MemStatementIterator(_newThisIteration,				null, _repository.RDF_TYPE_NODE, _repository.RDF_PROPERTY_NODE);		while (iter.hasNext()) {			Statement st = iter.next();			ResourceNode xxx = (ResourceNode)st.getSubject();			boolean added = _addInferredStatement(xxx, _repository.RDFS_SUBPROPERTYOF_NODE, xxx);			if (added) {				nofInferred++;			}		}		iter.close();		_updateTriggers(Rdfs6, nofInferred);		return nofInferred;	}	/* rdfs7.	 * 7_1. xxx aaa yyy &&                  (nt)	 *     aaa rdfs:subPropertyOf bbb -->  (t1)	 *     xxx bbb yyy                     (t2)	 */	private int _applyRuleRdfs7_1() {		if (! _checkRule[Rdfs7_1]) {			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			ResourceNode xxx = (ResourceNode)nt.getSubject();			URINode aaa = (URINode)nt.getPredicate();			ValueNode yyy = (ValueNode)nt.getObject();			StatementIterator t1Iter = _repository.getStatements(aaa, _repository.RDFS_SUBPROPERTYOF_NODE, null);			while (t1Iter.hasNext()) {				Statement t1 = t1Iter.next();				ValueNode bbb = (ValueNode)t1.getObject();				if (bbb instanceof URINode) {					boolean added = _addInferredStatement(xxx, (URINode)bbb, yyy);					if (added) {						nofInferred++;					}				}			}			t1Iter.close();		}		ntIter.close();		_updateTriggers(Rdfs7_1, nofInferred);		return nofInferred;	}	/* rdfs7.	 * 7_2. aaa rdfs:subPropertyOf bbb &&  (nt)	 *     xxx aaa yyy -->                (t1)	 *     xxx bbb yyy                    (t2)	 */	private int _applyRuleRdfs7_2() {		if (! _checkRule[Rdfs7_2]) {			return 0;		}		int nofInferred = 0;		StatementIterator ntIter = new MemStatementIterator(_newThisIteration,				null, _repository.RDFS_SUBPROPERTYOF_NODE, null);		while (ntIter.hasNext()) {			Statement nt = ntIter.next();			ResourceNode aaa = (ResourceNode)nt.getSubject();			ValueNode bbb = (ValueNode)nt.getObject();			if (aaa instanceof URINode && bbb instanceof URINode) {				StatementIterator t1Iter = _repository.getStatements(null, (URINode)aaa, null);				while (t1Iter.hasNext()) {					Statement t1 = t1Iter.next();					ResourceNode xxx = (ResourceNode)t1.getSubject();					ValueNode yyy = (ValueNode)t1.getObject();					boolean added = _addInferredStatement(xxx, (URINode)bbb, yyy);					if (added) {						nofInferred++;					}				}				t1Iter.close();			}		}		ntIter.close();		_updateTriggers(Rdfs7_2, nofInferred);		return nofInferred;	}	/* rdfs8.	 *  xxx rdf:type rdfs:Class --> xxx rdfs:subClassOf rdfs:Resource */	private int _applyRuleRdfs8() {		if (! _checkRule[Rdfs8]) {			return 0;		}		int nofInferred = 0;		StatementIterator iter = new MemStatementIterator(_newThisIteration,				null, _repository.RDF_TYPE_NODE, _repository.RDFS_CLASS_NODE);		while (iter.hasNext()) {			Statement st = iter.next();			ResourceNode xxx = (ResourceNode)st.getSubject();			boolean added = _addInferredStatement(xxx, _repository.RDFS_SUBCLASSOF_NODE, _repository.RDFS_RESOURCE_NODE);			if (added) {				nofInferred++;			}		}		iter.close();		_updateTriggers(Rdfs8, nofInferred);		return nofInferred;	}	/* rdfs10.	 * xxx rdf:type rdfs:Class --> xxx rdfs:subClassOf xxx	 * reflexivity of rdfs:subClassOf	 */	private int _applyRuleRdfs10() {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -