To get all related schemas for your object, you can use the iterSchemata function provided by plone.dexterity.utils. From the list of schematas you can get the fields by using the getFields function provided by zope.schema.
from plone.dexterity.utils import iterSchemata
from zope.schema import getFields
fields = {}
schemes = iterSchemata(context)
for schema in schemes:
fields.update(getFields(schema))
for name, field in fields.items():
print("Field: {0}, value: {1}".format(name, field))