protected function inlineInferredValue(DOMNode $node, $expr, $value)
	{
		// Get xsl:value-of descendants that match the condition
		$query = './/xsl:value-of[@select="' . $expr . '"]';
		foreach ($this->xpath($query, $node) as $valueOf)
		{
			$this->replaceValueOf($valueOf, $value);
		}

		// Get all attributes from non-XSL elements that *could* match the condition
		$query = './/*[namespace-uri() != $XSL]/@*[contains(., "{' . $expr . '}")]';
		foreach ($this->xpath($query, $node) as $attribute)
		{
			$this->replaceAttribute($attribute, $expr, $value);
		}
	}
protected function inlineInferredValue(DOMNode $node, $expr, $value)
	{
		// Get xsl:value-of descendants that match the condition
		$query = './/xsl:value-of[@select="' . $expr . '"]';
		foreach ($this->xpath($query, $node) as $valueOf)
		{
			$this->replaceValueOf($valueOf, $value);
		}

		// Get all attributes from non-XSL elements that *could* match the condition
		$query = './/*[namespace-uri() != $XSL]/@*[contains(., "{' . $expr . '}")]';
		foreach ($this->xpath($query, $node) as $attribute)
		{
			$this->replaceAttribute($attribute, $expr, $value);
		}
	}
protected function inlineInferredValue ( DOMNode $ node , $ expr , $ value ) { // Get xsl:value-of descendants that match the condition $ query = './/xsl:value-of[@select="' . $ expr . '"]' ; foreach ( $ this -> xpath ( $ query , $ node ) as $ valueOf ) { $ this -> replaceValueOf ( $ valueOf , $ value ) ; } // Get all attributes from non-XSL elements that *could* match the condition $ query = './/*[namespace-uri() != $XSL]/@*[contains(., "{' . $ expr . '}")]' ; foreach ( $ this -> xpath ( $ query , $ node ) as $ attribute ) { $ this -> replaceAttribute ( $ attribute , $ expr , $ value ) ; } }
Replace the inferred value in given node and its descendants

@param  DOMNode $node  Context node
@param  string  $expr  XPath expression
@param  string  $value Inferred value
@return void
Replace the inferred value in given node and its descendants