2013-05-21 31 views
1

我想在海龜文件中使用OGC GeoSPARQL詞彙表。這裏是一個片段:海龜中的GML字符串

:spatialextent 
a geosparql:Geometry; 
geosparql:asGML "<gml:Polygon srsName="EPSG:28992"><gml:exterior><gml:LinearRing><gml:posList srsDimension="2">97372 487153 97372 580407 149636 580407 149636 487153 97372 487153</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon>"^^geosparql:gmlLiteral; 
. 

這個符號是由在線RDF驗證我用拒絕:http://www.rdfabout.com/demo/validator/,是考慮到雙引號的,例如「EPSG:28992」。這可以通過將雙引號更改爲單引號來解決。我認爲這不會使GML無效。但我寧願保留雙引號,因爲這是GML生成的方式。

在RDF/XML的解決辦法是使用一個CDATA塊,像這樣的(例如,從GeoSPARQL文檔是的,這是高鐵總站但同樣的原則也適用。):

<sf:Polygon rdf:about="http://example.org/ApplicationSchema#AExactGeom"> 
<geo:asWKT rdf:datatype= "http://www.opengis.net/ont/geosparql#wktLiteral"> 
    <![CDATA[<http://www.opengis.net/def/crs/OGC/1.3/CRS84> Polygon((-83.6 34.1, -83.2 34.1, -83.2 34.5,-83.6 34.5, -83.6 34.1))]]> 
</geo:asWKT> 
</sf:Polygon> 

有沒有一種辦法這樣的事情在烏龜?或者還有其他方式來處理這種情況?

在此先感謝!

回答

2

只是escape the offending characters,更換"\"

:spatialextent 
    a geosparql:Geometry; 
    geosparql:asGML 
     "<gml:Polygon srsName=\"EPSG:28992\"><gml:exterior><gml:LinearRing><gml:posList srsDimension=\"2\">97372 487153 97372 580407 149636 580407 149636 487153 97372 487153</gml:posList></gml:LinearRing></gml:exterior></gml:Polygon>"^^geosparql:gmlLiteral; 
.