Skip to content

RDF XML 1.1 langString serialization #724

@nubinub

Description

@nubinub

Description:

According to RDF XML 1.1 syntax grammar, literal property element should either be languaged or hold a datatype, but not both.

For element e, and the text event t. The Unicode string t.string-value SHOULD be in Normal Form C [NFC]. If the rdf:datatype attribute d is given then o := typed-literal(literal-value := t.string-value, literal-datatype := d.string-value) otherwise o := literal(literal-value := t.string-value, literal-language := e.language) and the following statement is added to the graph:

Current issue:

RDF XML serialization currently adds both xml:lang attribute and rdf:datatype for languaged string.

# Input file
@prefix show: <http://example.org/vocab/show/> .

show:218 show:localName "That Seventies Show"@en .       
<!-- Output file -->  
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:show="http://example.org/vocab/show/">
    <rdf:Description rdf:about="http://example.org/vocab/show/218">
        <show:localName rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#langString" xml:lang="en">That Seventies Show</show:localName>
    </rdf:Description>
</rdf:RDF>

Expected behavior:

<!-- Output file -->  
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:show="http://example.org/vocab/show/">
    <rdf:Description rdf:about="http://example.org/vocab/show/218">
        <show:localName xml:lang="en">That Seventies Show</show:localName>
    </rdf:Description>
</rdf:RDF>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions