<?php
namespace ModulesAbstract\ElectronicInvoice\UBL21Structure;

/**
 * ExternalReference
 *
 * @see http://www.datypic.com/sc/ubl21/e-cac_ExternalReference.html
 */
class TypeExternalReference extends AbstractPeppolElement
{

	/**
	 * cbc:URI, 0..1, optional tag
	 *
	 * The Uniform Resource Identifier (URI) that identifies the external object as an Internet resource.
	 * @var mixed
	 */
	public $URI = null;

	/**
	 * cbc:DocumentHash, 0..1, optional tag
	 *
	 * A hash value for the externally stored object.
	 * @var mixed
	 */
	public $DocumentHash = null;

	/**
	 * cbc:HashAlgorithmMethod, 0..1, optional tag
	 *
	 * A hash algorithm used to calculate the hash value of the externally stored object.
	 * @var mixed
	 */
	public $HashAlgorithmMethod = null;

	/**
	 * cbc:ExpiryDate, 0..1, optional tag
	 *
	 * The date on which availability of the resource can no longer be relied upon.
	 * @var mixed
	 */
	public $ExpiryDate = null;

	/**
	 * cbc:ExpiryTime, 0..1, optional tag
	 *
	 * The time after which availability of the resource can no longer be relied upon.
	 * @var mixed
	 */
	public $ExpiryTime = null;

	/**
	 * cbc:MimeCode, 0..1, optional tag
	 *
	 * A code signifying the mime type of the external object.
	 * @var mixed
	 */
	public $MimeCode = null;

	/**
	 * cbc:FormatCode, 0..1, optional tag
	 *
	 * A code signifying the format of the external object.
	 * @var mixed
	 */
	public $FormatCode = null;

	/**
	 * cbc:EncodingCode, 0..1, optional tag
	 *
	 * A code signifying the encoding/decoding algorithm used with the external object.
	 * @var mixed
	 */
	public $EncodingCode = null;

	/**
	 * cbc:CharacterSetCode, 0..1, optional tag
	 *
	 * A code signifying the character set of an external document.
	 * @var mixed
	 */
	public $CharacterSetCode = null;

	/**
	 * cbc:FileName, 0..1, optional tag
	 *
	 * The file name of the external object.
	 * @var mixed
	 */
	public $FileName = null;

	/**
	 * cbc:Description, 0..*
	 *
	 * Text describing the external object.
	 * @var mixed
	 */
	public $Description = null;

}
