当前位置: 首页>>代码示例>>Java>>正文


Java TypeMapper类代码示例

本文整理汇总了Java中org.apache.jena.datatypes.TypeMapper的典型用法代码示例。如果您正苦于以下问题:Java TypeMapper类的具体用法?Java TypeMapper怎么用?Java TypeMapper使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


TypeMapper类属于org.apache.jena.datatypes包,在下文中一共展示了TypeMapper类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: addProperties

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public void addProperties(List<UDTValue> properties) {
  if (properties != null && !properties.isEmpty()) {
    for (UDTValue value : properties) {
      Property property = ResourceFactory.createProperty(value.getString("property"));
      RDFNode propertyValue;
      if (value.isNull("datatype")) {
        propertyValue = ResourceFactory.createResource(value.getString("value"));
      } else {
        propertyValue = ResourceFactory.createTypedLiteral(value.getString("value"),
            TypeMapper.getInstance().getSafeTypeByName(value.getString("datatype")));
      }

      addProperty(property, propertyValue);
    }
  }
}
 
开发者ID:semiotproject,项目名称:semiot-platform,代码行数:17,代码来源:CommandResult.java

示例2: exec

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
@Override
protected NodeValue exec(Node literalNode, Node datatypeNode, FunctionEnv env) {
	
	if(literalNode == null || !literalNode.isLiteral()) {
		throw new ExprEvalException();
	}
	String lex = literalNode.getLiteralLexicalForm();
	
	if(!datatypeNode.isURI()) {
		throw new ExprEvalException();
	}
	RDFDatatype datatype = TypeMapper.getInstance().getTypeByName(datatypeNode.getURI());
	
	if(datatype == null) {
		return NodeValue.TRUE;
	}
	else {
		boolean valid = datatype.isValid(lex);
		return NodeValue.makeBoolean(valid);
	}
}
 
开发者ID:TopQuadrant,项目名称:shacl,代码行数:22,代码来源:IsValidForDatatypeFunction.java

示例3: build

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public org.apache.jena.graph.Node build() {
    if (dt != null) {
        RDFDatatype dType = TypeMapper.getInstance().getSafeTypeByName(dt);
        return NodeFactory.createLiteral(value, dType);
    } else if (lang != null && !lang.isEmpty())
        return NodeFactory.createLiteral(value, lang);
    else
        return NodeFactory.createLiteral(value);
}
 
开发者ID:IBCNServices,项目名称:OBEP,代码行数:10,代码来源:RDFLiteral.java

示例4: exec

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
@Override
public List<NodeValue> exec(NodeValue cbor, NodeValue jsonpath) {
    if (cbor.getDatatypeURI() != null
            && !cbor.getDatatypeURI().equals(datatypeUri)
            && !cbor.getDatatypeURI().equals("http://www.w3.org/2001/XMLSchema#string")) {
        LOG.warn("The URI of NodeValue1 MUST be"
                + " <" + datatypeUri + "> or"
                + " <http://www.w3.org/2001/XMLSchema#string>. Got <"
                + cbor.getDatatypeURI() + ">. Returning null.");
    }

    Configuration conf = Configuration.builder()
            .options(Option.ALWAYS_RETURN_LIST).build();

    String json = new String(Base64.getDecoder().decode(cbor.asNode().getLiteralLexicalForm().getBytes()));

    try {
        List<Object> values = JsonPath
                .using(conf)
                .parse(json)
                .read(jsonpath.getString());
        List<NodeValue> nodeValues = new ArrayList<>(values.size());
        Gson gson = new Gson();
        for (Object value : values) {
            RDFDatatype dt = TypeMapper.getInstance().getSafeTypeByName(datatypeUri);
            String jsonstring = gson.toJson(value);
            Node node = NodeFactory.createLiteral(jsonstring, dt);
            NodeValue nodeValue = new NodeValueNode(node);
            nodeValues.add(nodeValue);
        }
        return nodeValues;
    } catch (Exception ex) {
        LOG.debug("No evaluation of " + cbor + ", " + jsonpath, ex);
        throw new ExprEvalException("No evaluation of " + cbor + ", " + jsonpath, ex);
    }
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:37,代码来源:ITER_CBOR.java

示例5: exec

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
@Override
public List<NodeValue> exec(NodeValue json, NodeValue jsonquery) {
    if (json.getDatatypeURI() != null
            && !json.getDatatypeURI().equals(datatypeUri)
            && !json.getDatatypeURI().equals("http://www.w3.org/2001/XMLSchema#string")) {
        LOG.warn("The URI of NodeValue1 MUST be"
                + " <" + datatypeUri + "> or"
                + " <http://www.w3.org/2001/XMLSchema#string>. Got "
                + json.getDatatypeURI());
    }
    Configuration conf = Configuration.builder()
            .options(Option.ALWAYS_RETURN_LIST).build();

    try {
        List<Object> values = JsonPath
                .using(conf)
                .parse(json.asNode().getLiteralLexicalForm())
                .read(jsonquery.getString());
        List<NodeValue> nodeValues = new ArrayList<>(values.size());
        Gson gson = new Gson();
        for (Object value : values) {
            RDFDatatype dt = TypeMapper.getInstance().getSafeTypeByName(datatypeUri);
            String jsonstring = gson.toJson(value);
            Node node = NodeFactory.createLiteral(jsonstring, dt);
            NodeValue nodeValue = new NodeValueNode(node);
            nodeValues.add(nodeValue);
        }
        return nodeValues;
    } catch (Exception ex) {
        LOG.debug("No evaluation for " + json + ", " + jsonquery, ex);
        throw new ExprEvalException("No evaluation for " + json + ", " + jsonquery, ex);
    }
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:34,代码来源:ITER_JSONPath.java

示例6: exec

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
@Override
public List<NodeValue> exec(NodeValue html, NodeValue cssSelector) {
    if (html.getDatatypeURI() != null
            && !html.getDatatypeURI().equals(datatypeUri)
            && !html.getDatatypeURI().equals("http://www.w3.org/2001/XMLSchema#string")) {
        LOG.warn("The URI of NodeValue1 MUST be"
                + " <" + datatypeUri + "> or"
                + " <http://www.w3.org/2001/XMLSchema#string>. Got <"
                + html.getDatatypeURI() + ">. Returning null.");
    }
    RDFDatatype dt = TypeMapper.getInstance()
            .getSafeTypeByName(datatypeUri);
    try {

        String sourceHtml = String.valueOf(html.asNode().getLiteralLexicalForm());
        Document htmldoc = Jsoup.parse(sourceHtml);

        String selectPath = String.valueOf(cssSelector.asNode().getLiteralValue());
        Elements elements = htmldoc.select(selectPath);

        LOG.debug("===> Number of iterations for " + cssSelector + " " + elements.size());

        List<NodeValue> nodeValues = new ArrayList<>(elements.size());

        NodeValue nodeValue;
        for (Element element : elements) {
            String htmlValue = element.toString();
            Node node = NodeFactory.createLiteral(htmlValue, dt);
            nodeValue = new NodeValueNode(node);

            nodeValues.add(nodeValue);
        }

        return nodeValues;
    } catch (Exception ex) {
        LOG.debug("No evaluation of " + html + ", " + cssSelector, ex);
        throw new ExprEvalException("No evaluation of " + html + ", " + cssSelector, ex);
    }
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:40,代码来源:ITER_CSSPath.java

示例7: addParameters

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public void addParameters(List<UDTValue> parameters) {
  if (parameters != null && !parameters.isEmpty()) {
    for (UDTValue value : parameters) {
      Resource parameter = ResourceFactory.createResource(value.getString("for_parameter"));
      RDFNode parameterValue = ResourceFactory.createTypedLiteral(value.getString("value"),
          TypeMapper.getInstance().getSafeTypeByName(value.getString("datatype")));

      addParameter(parameter, parameterValue);
    }
  }
}
 
开发者ID:semiotproject,项目名称:semiot-platform,代码行数:12,代码来源:CommandResult.java

示例8: literal

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public JSLiteral literal(String value, Object langOrDatatype) {
	if(langOrDatatype instanceof JSNamedNode) {
		return new JSLiteral(NodeFactory.createLiteral(value, TypeMapper.getInstance().getTypeByName(((JSNamedNode)langOrDatatype).getValue())));
	}
	else if(langOrDatatype instanceof String) {
		return new JSLiteral(NodeFactory.createLiteral(value, (String)langOrDatatype));
	}
	else {
		throw new IllegalArgumentException("Invalid type of langOrDatatype argument");
	}
}
 
开发者ID:TopQuadrant,项目名称:shacl,代码行数:12,代码来源:TermFactory.java

示例9: getNode

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
public static Node getNode(Object obj) {
	if(obj == null) {
		return null;
	}
	else if(obj instanceof JSTerm) {
		return ((JSTerm)obj).getNode();
	}
	else if(obj instanceof Map) {
		Map som = (Map) obj;
		String value = (String) som.get(VALUE);
		if(value == null) {
			throw new IllegalArgumentException("Missing value");
		}
		String termType = (String) som.get(TERM_TYPE);
		if(NAMED_NODE.equals(termType)) {
			return NodeFactory.createURI(value);
		}
		else if(BLANK_NODE.equals(termType)) {
			return NodeFactory.createBlankNode(value);
		}
		else if(LITERAL.equals(termType)) {
			String lang = (String) som.get(LANGUAGE);
			Map dt = (Map)som.get(DATATYPE);
			String dtURI = (String)dt.get(VALUE);
			RDFDatatype datatype = TypeMapper.getInstance().getSafeTypeByName(dtURI);
			return NodeFactory.createLiteral(value, lang, datatype);
		}
		else {
			throw new IllegalArgumentException("Unsupported term type " + termType);
		}
	}
	else {
		return null;
	}
}
 
开发者ID:TopQuadrant,项目名称:shacl,代码行数:37,代码来源:JSFactory.java

示例10: addNamespace

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public static Resource addNamespace(Resource ontology, String prefix, String namespace) {
	Resource declaration = ontology.getModel().createResource(SH.PrefixDeclaration);
	ontology.addProperty(SH.declare, declaration);
	declaration.addProperty(SH.prefix, prefix);
	declaration.addProperty(SH.namespace, ResourceFactory.createTypedLiteral(namespace, TypeMapper.getInstance().getSafeTypeByName(XSD.anyURI.getURI())));
	return declaration;
}
 
开发者ID:TopQuadrant,项目名称:shacl,代码行数:8,代码来源:PrefixUtil.java

示例11: bodyCall

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public boolean bodyCall(Node[] args, int length, RuleContext context) {
	BindingEnvironment env = context.getEnv();
	Node value = env.getGroundVersion(args[0]);
	TypeMapper tm = TypeMapper.getInstance();
	RDFDatatype type = tm.getTypeByName(PrintUtil.expandQname(args[2].toString()));
	Node cast = NodeFactory.createLiteral(value.getLiteral().getValue().toString(),null,type);
	env.bind(args[1],cast);
	return type.isValid(value.getLiteral().getValue().toString());
}
 
开发者ID:stevebattle,项目名称:Gloze,代码行数:10,代码来源:Cast.java

示例12: bodyCall

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public boolean bodyCall(Node[] args, int length, RuleContext context) {
	BindingEnvironment env = context.getEnv();
	InfGraph graph = context.getGraph();

	Node s = env.getGroundVersion(args[0]);
	Node p = env.getGroundVersion(args[1]);
	ExtendedIterator i = graph.find(s,p,null);
	int n = i.toSet().size();
	
	TypeMapper tm = TypeMapper.getInstance();
	RDFDatatype type = tm.getTypeByName(XSD.xint.getURI());
	Node count = NodeFactory.createLiteral(Integer.toString(n),null,type);
	env.bind(args[2],count);
	return true;
}
 
开发者ID:stevebattle,项目名称:Gloze,代码行数:16,代码来源:CountValues.java

示例13: createTypedLiteral

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
/**
 *
 * @param label
 * @param typeURI
 * @return
 */
@Override
public RDFNode createTypedLiteral( final String label,
                                   final String typeURI )
{
    final RDFDatatype dt = TypeMapper.getInstance()
                                     .getSafeTypeByName( typeURI );
    return ResourceFactory.createTypedLiteral( label, dt );
}
 
开发者ID:LinkedDataFragments,项目名称:Server.Java,代码行数:15,代码来源:TriplePatternElementParserForJena.java

示例14: datatype

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
public static Node datatype(Object value, Object type) {
    String typeURI = type.toString();
    if (typeURI.startsWith("xsd:")) {
        typeURI = typeURI.replace("xsd:", XSD.getURI());
    }
    RDFDatatype typeR = TypeMapper.getInstance().getSafeTypeByName( typeURI );
    return NodeFactory.createLiteral(value.toString(), typeR);
}
 
开发者ID:epimorphics,项目名称:dclib,代码行数:9,代码来源:GlobalFunctions.java

示例15: fromDateTime

import org.apache.jena.datatypes.TypeMapper; //导入依赖的package包/类
protected static Value fromDateTime(DateTime time, String typeURI, boolean withTZ) {
    String formatted;
    if (typeURI.equals(XSD.dateTime.getURI())) {
        if (time.getMillisOfSecond() == 0) {
            formatted = (withTZ ? DATETIME_TZ_FMT : DATETIME_FMT).print(time);
        } else {
            formatted = (withTZ ? DATETIME_TZ_FMT_MS : DATETIME_FMT_MS).print(time);
        }
    } else if (typeURI.equals(XSD.date.getURI())) {
        formatted = (withTZ ? DATE_TZ_FMT : DATE_FMT).print(time);
    } else if (typeURI.equals(XSD.time.getURI())) {
        if (time.getMillisOfSecond() == 0) {
            formatted = (withTZ ? TIME_TZ_FMT : TIME_FMT).print(time);
        } else {
            formatted = (withTZ ? TIME_TZ_FMT_MS : TIME_FMT_MS).print(time);
        }
    } else if (typeURI.equals(XSD.gYearMonth.getURI())) {
        formatted = GYEARMONTH_FMT.print(time);
    } else if (typeURI.equals(XSD.gYear.getURI())) {
        formatted = GYEAR_FMT.print(time);
    } else {
        throw new EpiException("Unrecognized datetime type");
    }
    if (formatted.endsWith("UTC")) {
        formatted = formatted.replace("UTC", "Z");
    }
    Node n = NodeFactory.createLiteral(formatted, TypeMapper.getInstance().getSafeTypeByName(typeURI));
    return new ValueDate(n);        
}
 
开发者ID:epimorphics,项目名称:dclib,代码行数:30,代码来源:ValueDate.java


注:本文中的org.apache.jena.datatypes.TypeMapper类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。