/**
 */
package org.hl7.fhir;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Count</b></em>'.
 * <!-- end-user-doc -->
 *
 *
 * @see org.hl7.fhir.FhirPackage#getCount()
 * @model extendedMetaData="name='Count' kind='elementOnly'"
 * @generated
 */
public interface Count extends Quantity {
} // Count
