O4DOIXmlFilter::createSerialVersionNode PHP Method

createSerialVersionNode() public method

Create a serial version node.
public createSerialVersionNode ( $doc, $issn, $productForm, $epubFormat = null ) : DOMElement
$doc DOMDocument
$issn string
$productForm One of the O4DOI_PRODUCT_FORM_* constants
$epubFormat O4DOI_EPUB_FORMAT_*
return DOMElement
    function createSerialVersionNode($doc, $issn, $productForm, $epubFormat = null)
    {
        $deployment = $this->getDeployment();
        $context = $deployment->getContext();
        $serialVersionNode = $doc->createElementNS($deployment->getNamespace(), 'SerialVersion');
        // Proprietary Journal Identifier
        if ($productForm == O4DOI_PRODUCT_FORM_ELECTRONIC) {
            $serialVersionNode->appendChild($this->createIdentifierNode($doc, 'Product', O4DOI_ID_TYPE_PROPRIETARY, $context->getId()));
        }
        // ISSN
        if (!empty($issn)) {
            $issn = PKPString::regexp_replace('/[^0-9]/', '', $issn);
            $serialVersionNode->appendChild($this->createIdentifierNode($doc, 'Product', O4DOI_ID_TYPE_ISSN, $issn));
        }
        // Product Form
        $serialVersionNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'ProductForm', $productForm));
        if ($productForm == O4DOI_PRODUCT_FORM_ELECTRONIC) {
            // ePublication Format
            if ($epubFormat) {
                $serialVersionNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'EpubFormat', $epubFormat));
            }
            // ePublication Format Description
            $serialVersionNode->appendChild($node = $doc->createElementNS($deployment->getNamespace(), 'EpubFormatDescription', 'Open Journal Systems (OJS)'));
        }
        return $serialVersionNode;
    }