2016-04-11 8 views
2

Ich arbeite an einem RDF-Dokument, wo ich das Attribut b:type="OAId" einem Eigenschaftelement hinzufügen möchte, wie im Folgenden. Ist das möglich? Ich benutze Jena.Ist es möglich, RDF/XML-Eigenschaftenelemente XML-Attribute hinzuzufügen?

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
     xmlns:b="http://example.com/pred"> 

<rdf:Description 
    rdf:about="http://example.com/pred/I995aa63fa85411e28578f7ccc38dcbee"> 
    <rdf:type>Company</rdf:type> 
    <b:markedText>OKLAHOMA CORPORATION COMMISSION</b:markedText> 
    <b:target b:type="OAId">5026393404</b:target> <!-- extra attribute b:type --> 
    <!-- ... --> 
</rdf:Description> 

+1

Können Sie in natürlicher Sprache zu erklären, was Sie erreichen wollen? –

+0

Gibt es eine Möglichkeit, ein benutzerdefiniertes Literal einer Eigenschaft ähnlich wie typisiertes Literal hinzuzufügen, das Jena API hat. – hyma

Antwort

0

Wenn Sie ein XML-Attribut hinzufügen, in dem Sie einen hinzufügen möchten, werden Sie nicht legal RDF/XML mehr. Wenn ich Ihre Schnipsel in die W3C's validator einfügen, ich die Fehlermeldung:

Error: {E201} The attributes on this property element, are not permitted with any content; expecting end element tag.[Line = 8, Column = 39]

+0

Danke Taylor. Aber Apache Jena stellt typisierte Literale wie folgt zur Verfügung: 0456253 wobei rdf: datentyp = "OAID" ist ein typisiertes Literal, das ein Attribut für Prädikat ist. Ähnlich können wir ein benutzerdefiniertes Literal erstellen? – hyma

+0

@hyma Sicher, Sie können Literale mit jedem gewünschten Datentyp erstellen, aber das XML-Attribut für die Eigenschaft wird RDF: Datentyp sein, nicht B: Typ, wie in Ihrem Beispiel. Der * Wert * des Attributs rdf: data- type ist der Datentyp des Literals. –

+0

Danke Joshua. Dies ist hilfreich – hyma