Implementing SubjectInterface
=============================

To characterize an object using attribute, it needs to implement the **SubjectInterface** interface:

* ``getAttributes()``
* ``setAttributes(Collection $attributes)``
* ``addAttribute(AttributeValue $attribute)``
* ``removeAttribute(AttributeValue $attribute)``
* ``hasAttribute(AttributeValue $attribute)``
* ``hasAttributeByName($attributeName)``
* ``getAttributeByName($attributeName)``

Implementing AttributeSubjectInterface
======================================

To characterize an object with attributes, the object class needs to implement the ``AttributeSubjectInterface``.

* ``getAttributes()``
* ``setAttributes(Collection $attributes)``
* ``addAttribute(AttributeValue $attribute)``
* ``removeAttribute(AttributeValue $attribute)``
* ``hasAttribute(AttributeValue $attribute)``
* ``hasAttributeByName($attributeName)``
* ``getAttributeByName($attributeName)``

Correct the interface name for attribute subjects
Correct the interface name for attribute subjects

Additionally, improve the description.
