         'border-color': '#9AA1AC'
         'border-width': '2px'
         'text-color-internal': '#FFFFFF'
-        'caption': '{id}'
         'font-size': '10px'
       'relationship':
         'color': '#A5ABB6'

      forNode: (node = {}, idx = 0) ->
        selector = @nodeSelector(node, idx)
        if node.labels?.length > 0
          @setDefaultStyling(selector)
        @calculateStyle(selector, node)

      forRelationship: (rel) ->
        @calculateStyle(@relationshipSelector(rel))


        return provider.defaultColors[0]

      setDefaultStyling: (selector, item) ->
        rule = @findRule(selector)

        if not rule?
          rule = new StyleRule(selector, angular.extend(@findAvailableDefaultColor(), @getDefaultCaption(item)))
          @rules.push(rule)
          @persist()
        if not rule.props.caption?
          default_caption = @getDefaultCaption(item)
          return unless default_caption.caption?
          angular.extend(rule.props, default_caption)
          @rules.push(rule)
          @persist()

      getDefaultCaption: (item) ->
        return {caption: '{id}'} if not item or not item.propertyList?.length > 0
        default_caption = {caption: "{#{item.propertyList?[0].key}}"}
        default_caption

      #
      # Methods for getting and modifying rules
