PROPPATCH/PROPFIND must preserve attribute xml:lang in scope
------------------------------------------------------------
Key: JCR-2491
URL: https://issues.apache.org/jira/browse/JCR-2491
Project: Jackrabbit Content Repository
Issue Type: Bug
Components: jackrabbit-webdav
Affects Versions: 2.1.0
Reporter: Javier Godoy
Priority: Minor
Per RFC 4918 section 4.3, in storage and transmission of dead properties,
servers MUST preserve [attributes] named "xml:lang" or any such attribute in
scope.
Current behavior is that the attribute cannot be accessed by DavResourceImpl
when the property value has only character content, because
DefaultDavProperty.createFromXml() returned a String instead of an Element.
If the property has element or mixed content, the value of the attribute
xml:lang in scope may be retrieved by inspecting parent nodes, which are
available to DavResourceImpl at PROPPATCH time. However, in the case of mixed
content, the attribute cannot be inserted in the serialized property (at
PROPFIND time), because DefaultDavProperty.toXml() appends the property content
to an element with no attributes.
(see example in section 4.3.1 of RFC 4918)
Affected methods:
- DefaultDavProperty.createFromXml() which is invoked by
WebDavRequestImpl.parsePropPatchRequest() as part of
WebDavRequestImpl.getPropPatchChangeList()
-DefaultDavProperty.toXml()
One possible aproach would be including in DefaultDavProperty a field for
storing the value of the in-scope attribute, which would be later included in
the serialized property.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.