Open Journal Systems  3.3.0
O4DOIXmlFilter Class Reference
Inheritance diagram for O4DOIXmlFilter:
NativeExportFilter NativeImportExportFilter PersistableFilter Filter DataObject ArticleMedraXmlFilter IssueMedraXmlFilter GalleyMedraXmlFilter

Public Member Functions

 __construct ($filterGroup)
 
 createExtentNode ($doc, $file)
 
 createHeadNode ($doc)
 
 createIdentifierNode ($doc, $workOrProduct, $idType, $id)
 
 createJournalIssueNode ($doc, $issue, $journalLocalePrecedence)
 
 createOtherTextNode ($doc, $locale, $description)
 
 createPublisherNode ($doc, $journalLocalePrecedence)
 
 createRelatedNode ($doc, $workOrProduct, $relationCode, $ids)
 
 createRootNode ($doc, $rootNodeName)
 
 createSerialPublicationNode ($doc, $journalLocalePrecedence, $epubFormat=null)
 
 createSerialVersionNode ($doc, $issn, $productForm, $epubFormat=null)
 
 createSerialWorkNode ($doc, $journalLocalePrecedence)
 
 createTitleNode ($doc, $locale, $localizedTitle, $titleType)
 
 getDOIStructuralType ()
 
 getObjectLocalePrecedence ($context, $article, $galley)
 
 getPrimaryTranslation ($localizedData, $localePrecedence)
 
 getRootNodeName ()
 
 getTranslationsByPrecedence ($localizedData, $localePrecedence)
 
 isWork ($context, $plugin)
 
 translateLanguageToLocale ($language)
 
- Public Member Functions inherited from NativeExportFilter
 createLocalizedNodes ($doc, $parentNode, $name, $values)
 
 createOptionalNode ($doc, $parentNode, $name, $value)
 
 getNoValidation ()
 
 setNoValidation ($noValidation)
 
 setOpts ($opts)
 
 supports (&$input, &$output)
 
- Public Member Functions inherited from NativeImportExportFilter
 getDeployment ()
 
 setDeployment ($deployment)
 
- Public Member Functions inherited from PersistableFilter
 addSetting ($setting)
 
 getClassName ()
 
 getFilterGroup ()
 
 getInternalSettings ()
 
 getIsTemplate ()
 
 getLocalizedSettingNames ()
 
 getParentFilterId ()
 
 getSetting ($settingName)
 
 getSettingNames ()
 
getSettings ()
 
 hasSetting ($settingName)
 
 hasSettings ()
 
 setIsTemplate ($isTemplate)
 
 setParentFilterId ($parentFilterId)
 
- Public Member Functions inherited from Filter
 __construct ($inputType, $outputType)
 
 addError ($message)
 
 clearErrors ()
 
execute (&$input, $returnErrors=false)
 
 getDisplayName ()
 
 getErrors ()
 
getInputType ()
 
getLastInput ()
 
getLastOutput ()
 
getOutputType ()
 
getRuntimeEnvironment ()
 
 getSequence ()
 
 hasErrors ()
 
 isCompatibleWithRuntimeEnvironment ()
 
process (&$input)
 
 setDisplayName ($displayName)
 
 setRuntimeEnvironment (&$runtimeEnvironment)
 
 setSequence ($seq)
 
 setTransformationType (&$inputType, &$outputType)
 
 supportsAsInput (&$input)
 
- Public Member Functions inherited from DataObject
 __construct ()
 
 addSupportedMetadataAdapter ($metadataAdapter)
 
 extractMetadata ($metadataSchema)
 
 getAdditionalMetadataFieldNames ()
 
getAllData ()
 
 getDAO ()
 
getData ($key, $locale=null)
 
 getHasLoadableAdapters ()
 
 getId ()
 
 getLocaleMetadataFieldNames ()
 
 getLocalizedData ($key, $preferredLocale=null)
 
 getMetadataFieldNames ($translated=true)
 
 getSetMetadataFieldNames ($translated=true)
 
 getSupportedExtractionAdapters ()
 
 getSupportedInjectionAdapters ()
 
 getSupportedMetadataSchemas ()
 
 hasData ($key, $locale=null)
 
 injectMetadata ($metadataDescription)
 
 removeSupportedMetadataAdapter ($metadataSchemaName)
 
 setAllData (&$data)
 
 setData ($key, $value, $locale=null)
 
 setHasLoadableAdapters ($hasLoadableAdapters)
 
 setId ($id)
 
 unsetData ($key, $locale=null)
 
 upcastTo ($targetObject)
 

Additional Inherited Members

- Static Public Member Functions inherited from PersistableFilter
static tempGroup ($inputType, $outputType)
 
- Static Public Member Functions inherited from Filter
static supportedRuntimeEnvironmentSettings ()
 
- Data Fields inherited from NativeExportFilter
 $_noValidation = null
 
 $opts = array()
 
- Data Fields inherited from NativeImportExportFilter
 $_deployment
 
- Data Fields inherited from PersistableFilter
 $_filterGroup
 
 $_settings = array()
 
- Data Fields inherited from Filter
 $_errors = array()
 
 $_input
 
 $_inputType
 
 $_output
 
 $_outputType
 
 $_runtimeEnvironment = false
 
- Data Fields inherited from DataObject
 $_data = array()
 
 $_extractionAdaptersLoaded = false
 
 $_hasLoadableAdapters = false
 
 $_injectionAdaptersLoaded = false
 
 $_metadataExtractionAdapters = array()
 
 $_metadataInjectionAdapters = array()
 

Detailed Description

Basis class for converting objects (issues, articles, galleys) to a O4DOI XML document.

Definition at line 81 of file O4DOIXmlFilter.inc.php.

Constructor & Destructor Documentation

◆ __construct()

O4DOIXmlFilter::__construct (   $filterGroup)

Constructor

Parameters
$filterGroupFilterGroup

Reimplemented from NativeExportFilter.

Reimplemented in ArticleMedraXmlFilter, GalleyMedraXmlFilter, and IssueMedraXmlFilter.

Definition at line 86 of file O4DOIXmlFilter.inc.php.

Member Function Documentation

◆ createExtentNode()

O4DOIXmlFilter::createExtentNode (   $doc,
  $file 
)

Create an extent node.

Parameters
$docDOMDocument
$filePKPFile
Returns
DOMElement

Definition at line 369 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment().

Referenced by ArticleMedraXmlFilter\createContentItemNode(), and IssueMedraXmlFilter\createJournalIssueNode().

◆ createHeadNode()

O4DOIXmlFilter::createHeadNode (   $doc)

Create and return the head node.

Parameters
$docDOMDocument
Returns
DOMElement

Definition at line 130 of file O4DOIXmlFilter.inc.php.

References PKPApplication\get(), and NativeImportExportFilter\getDeployment().

Referenced by IssueMedraXmlFilter\process(), and ArticleMedraXmlFilter\process().

◆ createIdentifierNode()

O4DOIXmlFilter::createIdentifierNode (   $doc,
  $workOrProduct,
  $idType,
  $id 
)

Create a work or product id node.

Parameters
$docDOMDocument
$workOrProductstring "Work" or "Product"
$idTypestring One of the O4DOI_ID_TYPE_* constants
$idstring The ID.
Returns
DOMElement

Definition at line 353 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment().

Referenced by ArticleMedraXmlFilter\createArticleNode(), IssueMedraXmlFilter\createIssueNode(), createRelatedNode(), and createSerialVersionNode().

◆ createJournalIssueNode()

O4DOIXmlFilter::createJournalIssueNode (   $doc,
  $issue,
  $journalLocalePrecedence 
)

Create the journal issue node.

Parameters
$docDOMDocument
$issueIssue
$journalLocalePrecedencearray
Returns
DOMElement

Reimplemented in IssueMedraXmlFilter.

Definition at line 284 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment().

Referenced by ArticleMedraXmlFilter\createArticleNode().

◆ createOtherTextNode()

O4DOIXmlFilter::createOtherTextNode (   $doc,
  $locale,
  $description 
)

Create a description text node.

Parameters
$docDOMDocument
$localestring
$descriptionstring
Returns
DOMElement

Definition at line 388 of file O4DOIXmlFilter.inc.php.

References PKPLocale\get3LetterIsoFromLocale(), NativeImportExportFilter\getDeployment(), and PKPString\html2text().

Referenced by ArticleMedraXmlFilter\createContentItemNode(), and IssueMedraXmlFilter\createIssueNode().

◆ createPublisherNode()

O4DOIXmlFilter::createPublisherNode (   $doc,
  $journalLocalePrecedence 
)

Create a publisher node.

Parameters
$docDOMDocument
$journalLocalePrecedencearray
Returns
DOMElement

Definition at line 227 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment(), and getPrimaryTranslation().

Referenced by createSerialWorkNode().

◆ createRelatedNode()

O4DOIXmlFilter::createRelatedNode (   $doc,
  $workOrProduct,
  $relationCode,
  $ids 
)

Create a related work or product node.

Parameters
$docDOMDocument
$workOrProductstring
$relationCodestring One of the O4DOI_RELATION_* constants.
$idsarray
Returns
DOMElement

Definition at line 333 of file O4DOIXmlFilter.inc.php.

References createIdentifierNode(), and NativeImportExportFilter\getDeployment().

Referenced by ArticleMedraXmlFilter\createContentItemNode(), and IssueMedraXmlFilter\createIssueNode().

◆ createRootNode()

O4DOIXmlFilter::createRootNode (   $doc,
  $rootNodeName 
)

Create and return the root node.

Parameters
$docDOMDocument
$rootNodeNamestring
Returns
DOMElement

Definition at line 117 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment().

Referenced by IssueMedraXmlFilter\process(), and ArticleMedraXmlFilter\process().

◆ createSerialPublicationNode()

O4DOIXmlFilter::createSerialPublicationNode (   $doc,
  $journalLocalePrecedence,
  $epubFormat = null 
)

Generate O4DOI serial publication node.

Parameters
$docDOMDocument
$journalLocalePrecedencearray
$epubFormatO4DOI_EPUB_FORMAT_*
Returns
DOMElement

Definition at line 156 of file O4DOIXmlFilter.inc.php.

References createSerialVersionNode(), createSerialWorkNode(), and NativeImportExportFilter\getDeployment().

Referenced by ArticleMedraXmlFilter\createArticleNode(), and IssueMedraXmlFilter\createIssueNode().

◆ createSerialVersionNode()

O4DOIXmlFilter::createSerialVersionNode (   $doc,
  $issn,
  $productForm,
  $epubFormat = null 
)

Create a serial version node.

Parameters
$docDOMDocument
$issnstring
$productFormOne of the O4DOI_PRODUCT_FORM_* constants
$epubFormatO4DOI_EPUB_FORMAT_*
Returns
DOMElement

Definition at line 253 of file O4DOIXmlFilter.inc.php.

References createIdentifierNode(), NativeImportExportFilter\getDeployment(), and PKPString\regexp_replace().

Referenced by createSerialPublicationNode().

◆ createSerialWorkNode()

O4DOIXmlFilter::createSerialWorkNode (   $doc,
  $journalLocalePrecedence 
)

Generate O4DOI serial work node.

Parameters
$docDOMDocument
$journalLocalePrecedencearray
Returns
DOMElement

Definition at line 179 of file O4DOIXmlFilter.inc.php.

References createPublisherNode(), createTitleNode(), NativeImportExportFilter\getDeployment(), and getTranslationsByPrecedence().

Referenced by createSerialPublicationNode().

◆ createTitleNode()

O4DOIXmlFilter::createTitleNode (   $doc,
  $locale,
  $localizedTitle,
  $titleType 
)

Create a title node.

Parameters
$docDOMDocument
$localestring e.g. 'en_US'
$localizedTitlestring
$titleTypestring One of the O4DOI_TITLE_TYPE_* constants.
Returns
DOMElement

Definition at line 205 of file O4DOIXmlFilter.inc.php.

References PKPLocale\get3LetterIsoFromLocale(), NativeImportExportFilter\getDeployment(), and PKPString\html2text().

Referenced by ArticleMedraXmlFilter\createContentItemNode(), IssueMedraXmlFilter\createJournalIssueNode(), and createSerialWorkNode().

◆ getDOIStructuralType()

O4DOIXmlFilter::getDOIStructuralType ( )

Get DOIStructuralType

Returns
string

Definition at line 409 of file O4DOIXmlFilter.inc.php.

References NativeImportExportFilter\getDeployment(), and isWork().

◆ getObjectLocalePrecedence()

O4DOIXmlFilter::getObjectLocalePrecedence (   $context,
  $article,
  $galley 
)

Identify the locale precedence for this export.

Parameters
$contextContext
$articleSubmission
$galleyArticleGalley
Returns
array A list of valid PKP locales in descending order of priority.

Definition at line 428 of file O4DOIXmlFilter.inc.php.

References PKPLocale\isLocaleValid(), and translateLanguageToLocale().

Referenced by ArticleMedraXmlFilter\createArticleNode(), and IssueMedraXmlFilter\createIssueNode().

◆ getPrimaryTranslation()

O4DOIXmlFilter::getPrimaryTranslation (   $localizedData,
  $localePrecedence 
)

Identify the primary translation from an array of localized data.

Parameters
$localizedDataarray An array of localized data (key: locale, value: localized data).
$localePrecedencearray An array of locales by descending priority.
Returns
mixed|null The value of the primary locale or null if no primary translation could be found.

Definition at line 494 of file O4DOIXmlFilter.inc.php.

Referenced by ArticleMedraXmlFilter\createContentItemNode(), ArticleMedraXmlFilter\createContributorNode(), and createPublisherNode().

◆ getRootNodeName()

O4DOIXmlFilter::getRootNodeName ( )

Get root node name

Returns
string

Reimplemented in ArticleMedraXmlFilter, and GalleyMedraXmlFilter.

Definition at line 104 of file O4DOIXmlFilter.inc.php.

◆ getTranslationsByPrecedence()

O4DOIXmlFilter::getTranslationsByPrecedence (   $localizedData,
  $localePrecedence 
)

Re-order localized data by locale precedence.

Parameters
$localizedDataarray An array of localized data (key: locale, value: localized data).
$localePrecedencearray An array of locales by descending priority.
Returns
array Re-ordered localized data.

Definition at line 524 of file O4DOIXmlFilter.inc.php.

Referenced by ArticleMedraXmlFilter\createContentItemNode(), IssueMedraXmlFilter\createIssueNode(), IssueMedraXmlFilter\createJournalIssueNode(), and createSerialWorkNode().

◆ isWork()

O4DOIXmlFilter::isWork (   $context,
  $plugin 
)

Get whether the object exported is considered as work

Parameters
$contextContext
$pluginDOIPubIdExportPlugin
Returns
boolean

Reimplemented in ArticleMedraXmlFilter, GalleyMedraXmlFilter, and IssueMedraXmlFilter.

Definition at line 96 of file O4DOIXmlFilter.inc.php.

Referenced by getDOIStructuralType().

◆ translateLanguageToLocale()

O4DOIXmlFilter::translateLanguageToLocale (   $language)

Try to translate an ISO language code to an OJS locale.

Parameters
$languagestring 2- or 3-letter ISO language code
Returns
string|null An OJS locale or null if no matching locale could be found.

Definition at line 470 of file O4DOIXmlFilter.inc.php.

References PKPLocale\get3LetterFrom2LetterIsoLanguage(), PKPLocale\getLocaleFrom3LetterIso(), and PKPLocale\isLocaleValid().

Referenced by getObjectLocalePrecedence().


The documentation for this class was generated from the following file: