2016-06-15 5 views
1

Я хочу создать файл формата черепахи RDF, который имеет конфигурацию для ввода и вывода. Ниже приведен код, который я придумал:Файл свойства на основе RDF

@prefix ex: <http://www.example.com/ex#> . 
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . 
@prefix ebucore: <http://www.ebu.ch/metadata/ontologies/ebucore/ebucore#>. 

#ex:hasHeterogeneity can have multiple heterogeneites seperate by ","# 

#generateFiles enables or disables generation of files.# 

ex:seed-1 
    ex:hasHeterogeneity "M1,M2"; 
    ex:hasInputPath  "C:\\seed-1.txt" 
    ex:hasOutputPath  "C:\\output" 
    ebucore:filename  "seed-1.txt"; 
    rdf:type    ex:Heterogeneity . 

ex:seed-2 
     ex:hasHeterogeneity "M2,M3"; 
     ex:hasInputPath  "C:\\seed2.aml" 
     ex:hasOutputPath  "C:\\output" 
     ebucore:filename  "seed-2.aml"; 
     ex:generateFiles  "true"; 
     rdf:type    ex:Heterogeneity . 

Моя цель состоит в том, чтобы иметь входной файл seed1.aml и иметь свой входной и выходной путь и тип неоднородности она содержит. Однако M2, M3 являются кодами этих неоднородностей, но я не уверен, могу ли я выразить это как литералы в rdf. Мне нужно определить, что они первые, а затем подключить к моему rdf.

m1 a ex:Heterogeneity ; 
m1 schema:name "Data types"@en; 
m2........ 

Затем каким-то образом соединить таким образом:

ex:seed-1 
ex:hasHeterogeneity m1 , m2 

Любая помощь будет оценена для окончательного вывода.

+1

Ваш файл плохо сформирован. В некоторых строках отсутствуют точки с запятой, например 'ex: hasOutputPath 'C: \\ output" 'не имеет точки с запятой в конце. Файл не должен разбираться так. –

+0

спасибо, что указал, это была опечатка. –

ответ

2

Однако M2, M3 кода этих неоднородностей, но им не уверен, если я могу поставить его как литералы это в ФРРЕ.

ex:seed-2 
     ex:hasHeterogeneity "M2,M3"; 

Если вам нужно несколько буквенных значений, почему на самом деле не использовать несколько значений. Например,

ex:seed-2 
    ex:hasHeterogeneity "M2", "M3" ; 
    ex:hasInputPath  "C:\\seed2.aml" ; 
    # ... 

Затем вы можете запросить значения отдельно. Например, если вы определили значения в другом месте, например:

ex:M2 rdfs:label "M2" ; 
    # ... 

Тогда вы могли бы написать запрос SPARQL, как

?seed ex:hasHeterogeneity ?hLabel . 
?heterogeneity rdfs:label ?hLabel . 

Тем не менее, вместо того чтобы использовать строковые значения, то почему бы просто не использовать значения гетерогенности, как в:

ex:seed-2 
    ex:hasHeterogeneity ex:M2, ex:M3 ; 
    ex:hasInputPath  "C:\\seed2.aml" ; 
    # ... 
+0

Спасибо, он отлично поработал. Однако я не хочу, чтобы мой объект был именем файла. Любая другая альтернатива, о которой я могу думать? так как это мой входной файл, не имеет смысла его размещать. что-то вроде гетерогенности-1? ex: hasID «Неоднородность-1»; –

+0

@omar Я не знаю, что вы подразумеваете под «не хотите, чтобы объект был именем файла». Здесь я не упоминал имена файлов. –