tuxji commented on a change in pull request #373:
URL: https://github.com/apache/incubator-daffodil/pull/373#discussion_r416791007



##########
File path: 
daffodil-core/src/main/scala/org/apache/daffodil/dpath/Expression.scala
##########
@@ -1510,6 +1510,14 @@ case class FunctionCallExpression(functionQNameString: 
String, expressions: List
         FNOneArgExpr(functionQNameString, functionQName, args,
           NodeInfo.String, NodeInfo.AnyAtomic, FNLocalName1(_, _))
 
+      case (RefQName(_, "namespace-uri", FUNC), args) if args.length == 0 =>
+        FNZeroArgExpr(functionQNameString, functionQName,
+          NodeInfo.AnyURI, NodeInfo.AnyAtomic, FNNamespaceUri0(_, _))

Review comment:
       I checked and FNZeroArgExpr is used by fn:local-name, fn:namespace-uri, 
dfdlx:outputTypeCalcNextSibling, dfdlx:repTypeValue, and 
dfdlx:logicalTypeValue.  That's five places so I agree a new issue makes more 
sense than folding the changes into this issue.  I also noticed that fn:true, 
fn:false, and dfdl:occursIndex take no arguments but get their own special 
implementation classes.  All other functions in the DFDL 
[spec](https://daffodil.apache.org/docs/dfdl/) take arguments.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to