diff --git a/metatype/changelog.txt b/metatype/changelog.txt
new file mode 100644
index 0000000..839d7bc
--- /dev/null
+++ b/metatype/changelog.txt
@@ -0,0 +1,54 @@
+Changes from 1.0.4 to 1.0.6
+---------------------------
+
+** Bug
+    * [FELIX-2094] - AttributeDefinition with an empty default value must attribute must result in a single (empty string) entry string array
+    * [FELIX-2097] - DefaultMetaTypeProvider.getLocales() must not reuturn an empty string entry
+    * [FELIX-2860] - getLocales() in DefaultMetaTypeProvider needs to check return of findEntries
+    * [FELIX-2867] - getIcon() in LocalizedObjectClassDefinition keyset iteration incorrect
+    * [FELIX-2868] - Icon only works if absolute path specified, but specification allows for relative urls
+    * [FELIX-3183] - Attribute requirement is not validated
+    * [FELIX-3720] - Designate's pid attribute is optional and not mandatory
+
+** Improvement
+    * [FELIX-3167] - Add support for new PASSWORD attribute type
+    * [FELIX-3338] - Add support for optional attributes in the MetaDataReader as defined in the XML schema for metatype
+
+** New Feature
+    * [FELIX-2719] - Add name space support to the meta type implementation
+
+** Task
+    * [FELIX-2096] - Check MetaTypeProvider.getObjectClassDefinition(String, String) specification compliance
+    * [FELIX-3182] - Update to use parent POM 2.1
+    * [FELIX-3184] - Add support for metatype extension by MetatypeProvider services
+
+
+Changes from 1.0.2 to 1.0.4
+---------------------------
+** Bug
+    * [FELIX-1226] - The MetaType service should ignore the pid attribute of Designate elements if factoryPid is set.
+
+** Improvement
+    * [FELIX-718] - Update NOTICE file to new format
+    * [FELIX-1227] - Project Descriptor Enhancement
+    * [FELIX-1434] - Include service tracker in bundle instead of importing it
+
+
+Changes from 1.0.0 to 1.0.2
+---------------------------
+
+** Bug
+    * [FELIX-520] - MetaDataReader - ad.setMax
+    * [FELIX-521] - MetaType - optionValues check
+    * [FELIX-597] - Meta type service incorrectly parses attribute element content when the content is specified in value child tags
+    * [FELIX-607] - Meta type localization incorrectly resolved in the meta type folder
+
+** Improvement
+    * [FELIX-666] - Metatype OBR description
+
+
+Initial Release 1.0.0
+---------------------
+
+** New Feature
+    * [FELIX-20] - Implement Metatype Service
