Chemistry
  1. Chemistry
  2. CMIS-504

workbench sets document specific filters on properties while asking for children

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: OpenCMIS 0.6.0
    • Fix Version/s: None
    • Component/s: opencmis-workbench
    • Labels:
      None

      Description

      When asking for children, workbench sets filters that are document specific, like: "cmis:contentStreamLength", "cmis:contentStreamMimeType", "cmis:contentStreamFileName".

      Specification says next for filters:
      >>>>
      2.2.1.2.1 Properties

      ...
      Optional Input Parameter:

      String filter: Value indicating which properties for Objects MUST be returned. Values are:
      ...
      A comma-delimited list of property definition Query Names: The properties listed MUST be returned.
      >>>>>

      For children that are folders there are no content specific properties (like "cmis:contentStreamLength" for ex.). Workbench shouldn't set document specific properties while calling getChildren() service because those can't be returned for children of folder type.

        Activity

        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Resolved Resolved
        115d 23h 31m 1 Florian Müller 08/Jun/12 14:53
        Florian Müller made changes -
        Field Original Value New Value
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Won't Fix [ 2 ]
        Hide
        Florian Müller added a comment -

        The getChildren section (2.2.3.1) states for the filter parameter:

        "String filter: See section ‎2.2.1.2.1 Properties. The service will only return the properties in the matched object if they exist on the matched object type definition and in the filter."

        Therefore, it seems to be valid to set this filter.

        The current CMIS 1.1 draft (which admittedly isn't an approved specification, yet) clarifies this topic even further. It states in section 2.2.1.2.1 Properties:

        "Unknown query names or query names that are not defined for the object-type SHOULD be ignored. For example, if getChildren is called with a filter that contains the property cmis:contentStreamMimeType, it SHOULD return all non-document objects without this property and SHOULD NOT return an error."

        So, even if the CMIS 1.0 specification is consider unclear in this regard, for the sake of forward compatibility a repository should ignore properties that are not defined in the object-type.

        Show
        Florian Müller added a comment - The getChildren section (2.2.3.1) states for the filter parameter: "String filter: See section ‎2.2.1.2.1 Properties. The service will only return the properties in the matched object if they exist on the matched object type definition and in the filter." Therefore, it seems to be valid to set this filter. The current CMIS 1.1 draft (which admittedly isn't an approved specification, yet) clarifies this topic even further. It states in section 2.2.1.2.1 Properties: "Unknown query names or query names that are not defined for the object-type SHOULD be ignored. For example, if getChildren is called with a filter that contains the property cmis:contentStreamMimeType, it SHOULD return all non-document objects without this property and SHOULD NOT return an error." So, even if the CMIS 1.0 specification is consider unclear in this regard, for the sake of forward compatibility a repository should ignore properties that are not defined in the object-type.
        Nikola Soljaga created issue -

          People

          • Assignee:
            Unassigned
            Reporter:
            Nikola Soljaga
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development