.. _Modify_DerivePropertyShapesFromInstances: Modify > Derive property shapes from instances """""""""""""""""""""""""""""""""""""""""""""" This feature is available from the :ref:`ModifyMenu` of classes and node shapes in an Ontology asset collection. If you have data that contains property values for which no property shapes exist in an ontology, this feature can auto-generate suitable property definitions. Data that will be analyzed must be located in one of the asset collections. TopBraid will display a dialog where you can: #. Identify an asset collection containing data #. Specify the max number of instances to analyze – the default is 1,000 #. Optionally, specify a Property Group for the newly created properties The algorithm behind this dialog will apply some heuristics to generate property declarations and constraints. For example, if all instances have at most one value for a property then that property will get ``sh:maxCount 1``, and if all values are *integers* then the property shape will use ``sh:datatype xsd:integer``. **See Also** * :ref:`Modify_DeriveMissingClasses` **Further Reading on SHACL** * `Form Generation using SHACL and DASH (External Link) `_ * `SHACL Advanced Features Specification (External Link) `_ * `SHACL W3C Specification (External Link) `_ **Further Reading on Ontologies** * :ref:`working_with_ontologies_target` **Further Reading on Modify Menu** * :ref:`scripting_actions` **Further Reading on TopBraid** * :ref:`introduction`