/** * Constructor * * @param $filterGroup FilterGroup * @param $displayName string * * NB: The input side of the transformation must always * be an XML format. See the XMLTypeDescription class for * more details how to enable XML validation. */ function XSLTransformationFilter(&$filterGroup, $displayName = 'XSL Transformation') { // Check that we only get xml input, the output type is arbitrary. if (!substr($filterGroup->getInputType(), 0, 5) == 'xml::') { fatalError('XSL filters need XML as input.'); } // Instantiate the settings of this filter import('lib.pkp.classes.filter.FilterSetting'); $this->addSetting(new FilterSetting('xsl', null, null)); $this->addSetting(new FilterSetting('xslType', null, null)); $this->addSetting(new FilterSetting('resultType', null, null, FORM_VALIDATOR_OPTIONAL_VALUE)); $this->setDisplayName($displayName); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup * @param $supportedPublicationTypes array */ function Nlm30CitationSchemaFilter(&$filterGroup, $supportedPublicationTypes = array()) { // All NLM citation filters require XSL functionality // that is only present in PHP5. $this->setData('phpVersionMin', '5.0.0'); $this->_supportedPublicationTypes = $supportedPublicationTypes; // Instantiate the "isOptional" setting // which is common to all NLM citation filters. // It contains the information whether a filter // will be used automatically within a given context // or whether the user will have to use it // explicitly (e.g. when parsing citations for // an article, conference paper or monograph). $isOptional = new BooleanFilterSetting('isOptional', 'metadata.filters.settings.isOptional.displayName', 'metadata.filters.settings.isOptional.validationMessage'); $this->addSetting($isOptional); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function MetadataDataObjectAdapter($filterGroup, $mode = null) { // Initialize the adapter. parent::PersistableFilter($filterGroup); // Extract information from the input/output types. // Find out whether this filter is injecting or // extracting meta-data. $metadataTypeDescription = null; /* @var $metadataTypeDescription MetadataTypeDescription */ $dataObjectTypeDescription = null; /* @var $dataObjectTypeDescription ClassTypeDescription */ $inputType =& $this->getInputType(); $outputType =& $this->getOutputType(); if (is_null($mode)) { if (is_a($inputType, 'MetadataTypeDescription')) { $mode = METADATA_DOA_INJECTION_MODE; } else { $mode = METADATA_DOA_EXTRACTION_MODE; } } $this->_mode = $mode; if ($mode == METADATA_DOA_INJECTION_MODE) { // We are in meta-data injection mode (or both input and output are meta-data descriptions). $metadataTypeDescription =& $inputType; /* @var $metadataTypeDescription MetadataTypeDescription */ assert(is_a($outputType, 'ClassTypeDescription')); $dataObjectTypeDescription =& $outputType; /* @var $dataObjectTypeDescription ClassTypeDescription */ } else { // We are in meta-data extraction mode. assert(is_a($outputType, 'MetadataTypeDescription')); $metadataTypeDescription =& $outputType; assert(is_a($inputType, 'ClassTypeDescription')); $dataObjectTypeDescription =& $inputType; } // Extract information from the input/output types. $this->_metadataSchemaName = $metadataTypeDescription->getMetadataSchemaClass(); $this->_assocType = $metadataTypeDescription->getAssocType(); $this->_dataObjectName = $dataObjectTypeDescription->getTypeName(); // Set the display name. if ($mode == METADATA_DOA_INJECTION_MODE) { $this->setDisplayName('Inject metadata into a(n) ' . $this->getDataObjectClass()); } else { $this->setDisplayName('Extract metadata from a(n) ' . $this->getDataObjectClass()); } }
/** * Constructor * $filterGroup FilterGroup */ function Mods34DescriptionXmlFilter(&$filterGroup) { $this->setDisplayName('MODS 3.4'); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup * @param $displayName string */ function CompositeFilter(&$filterGroup, $displayName = null) { $this->setDisplayName($displayName); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function NativeImportExportFilter($filterGroup) { parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function TemplateBasedFilter($filterGroup) { parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function PersistableTestFilter($filterGroup) { import('lib.pkp.classes.filter.FilterSetting'); $this->addSetting(new FilterSetting('some-key', null, null)); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function Epc10DescriptionXmlFilter($filterGroup) { $this->setDisplayName('Epicur 1.0'); parent::PersistableFilter($filterGroup); }
/** * Constructor * @param $filterGroup FilterGroup */ function Xmdp22DescriptionXmlFilter($filterGroup) { $this->setDisplayName('XMDP 2.2'); parent::PersistableFilter($filterGroup); }