package base

// IDInferable represents models that have IDs that can be infered from names
// through communicating the server.
type IDInferable interface {
	// After InferID has been completed, all the IDs possible have to have
	// been infered from names.
	InferID(cn Connection) error
	// GetNames exists for the purpose of getting the list of names of entities.
	// The name argument is a field that points to an entity name.
	GetNames(cn Connection, name string) ([]string, error)
}

package base

// IDInferable represents models that have IDs that can be infered by names.
type IDInferable interface {
	InferID(cn Connection) error
	GetNames(cn Connection, name string) ([]string, error)
}

--- 
+++ 
@@ -1,7 +1,12 @@
 package base
 
-// IDInferable represents models that have IDs that can be infered by names.
+// IDInferable represents models that have IDs that can be infered from names
+// through communicating the server.
 type IDInferable interface {
+	// After InferID has been completed, all the IDs possible have to have
+	// been infered from names.
 	InferID(cn Connection) error
+	// GetNames exists for the purpose of getting the list of names of entities.
+	// The name argument is a field that points to an entity name.
 	GetNames(cn Connection, name string) ([]string, error)
 }
Document the IDInferable interface and its methods
