0

stackoverflow 的好人...我正在尝试创建一个 XSLT 转换,它将生成一个 Turtle 文件(与 RDF 相关)。其中一部分涉及前缀命名空间的输出,如下所示:

<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:sap="http://www.sap.com/sapxsl"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:sap_coda="http://www.sapmantics.com/sap_coda#"
    version="1.0">

  <xsl:strip-space elements="*"/>

  <xsl:template match="/">
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>' .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
...

当我尝试应用转换时,我得到:

$ xsltproc zcoda_ttl_v02x.xslt zcoda_data_v02.xml > zcoda_data_v02x.ttl | x.txt
zcoda_ttl_v02x.xslt:10: namespace error : Failed to parse QName 'http:'
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>' .
                    ^
zcoda_ttl_v02x.xslt:10: parser error : error parsing attribute name
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>' .
                    ^
zcoda_ttl_v02x.xslt:10: parser error : attributes construct error
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>' .
                    ^
zcoda_ttl_v02x.xslt:10: parser error : Couldn't find end of Start Tag http: line 10
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>' .

所以,我在这里不知所措。我寻求的 Turtle 输出包含许多这样的情况。有什么方法可以停止处理器并仅将 http... 视为纯数据(如 xml 中的 CDATA 选项)?谢谢,约翰

4

2 回答 2

0

您可以将 http 内容包含在 xsl:text 我猜:

 <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
                xmlns:sap="http://www.sap.com/sapxsl" 
                xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
                xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" 
                xmlns:sap_coda="http://www.sapmantics.com/sap_coda#" 
                version="1.0">

  <xsl:strip-space elements="*"/>

  <xsl:template match="/">
@prefix rdfs: <xsl:text><![CDATA[<http://www.w3.org/2000/01/rdf-schema#>]]></xsl:text>
于 2013-04-19T12:55:58.920 回答
0

使用实体

@prefix rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;' .
@prefix owl: &lt;http://www.w3.org/2002/07/owl#&gt; .
@prefix dc: &lt;http://purl.org/dc/elements/1.1/&gt; .
于 2013-04-19T13:00:41.587 回答