code: def order_assets(self, asset_ids, composition_id):
          
          if (not isinstance(composition_id, ABCId) and
                  composition_id.get_identifier_namespace() != 'repository.Composition'):
              raise errors.InvalidArgument('the argument is not a valid OSID Id')
          composition_map, collection = self._get_composition_collection(composition_id)
          composition_map['assetIds'] = order_ids(asset_ids, composition_map['assetIds'])
          collection.save(composition_map)
docs: Reorders a set of assets in a composition.
  
          arg:    asset_ids (osid.id.Id[]): ``Ids`` for a set of
                  ``Assets``
          arg:    composition_id (osid.id.Id): ``Id`` of the
                  ``Composition``
          raise:  NotFound - ``composition_id`` not found or, an
                  ``asset_id`` not related to ``composition_id``
          raise:  NullArgument - ``instruction_ids`` or ``agenda_id`` is
                  ``null``
          raise:  OperationFailed - unable to complete request
          raise:  PermissionDenied - authorization failure
          *compliance: mandatory -- This method must be implemented.*