         return @properties
       else
         return []
-
-    getListLinks: ->
-
-    getListValueProperties: ->
 
     getRevLinks: ->
       if @revs then @revs else []

        # TODO: .. and not content attr and getReference()
      if @properties and not @propertiesAsLinks
        @literal = data.getLiteral()
      if data.isInlist()
        @inlist = true

    getErrors: ->
      @data.errors

    values = obj[prop]
    unless values
      values = obj[prop] = []
    values.push(value)

  addToPropListToObj = (obj, prop, value) ->
    values = obj[prop]
    # TODO: list in Array or direct object (latter prevents sets of mixed refs+lists)
    if values instanceof Array
      if values[0]['@list']
        values = values[0]['@list']
      else
        l = []
        values.unshift({'@list': l})
        values = l
    else if values
      values = values['@list']
    else
      values = []
      obj[prop] = {"@list": values}
    values.push(value)


