zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #08769
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
Diogo Simões has proposed merging lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module.
Requested reviews:
Zorba Coders (zorba-coders)
For more details, see:
https://code.launchpad.net/~diogo-simoes89/zorba/DC-documentation/+merge/103902
Addition of return types in functions signatures:
Applied in conversion, consolidation and set-similarity modules.
--
https://code.launchpad.net/~diogo-simoes89/zorba/DC-documentation/+merge/103902
Your team Zorba Coders is requested to review the proposed merge of lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module.
=== modified file 'src/com/zorba-xquery/www/modules/data-cleaning/consolidation.xq'
--- src/com/zorba-xquery/www/modules/data-cleaning/consolidation.xq 2011-08-01 11:26:53 +0000
+++ src/com/zorba-xquery/www/modules/data-cleaning/consolidation.xq 2012-04-27 15:23:42 +0000
@@ -50,7 +50,7 @@
: @return The most frequent node in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-frequent.xq
:)
-declare function con:most-frequent ( $s ) {
+declare function con:most-frequent ( $s ) as item(){
(for $str in set:distinct($s) order by count($s[deep-equal(.,$str)]) descending return $str)[1]
};
@@ -67,7 +67,7 @@
: @return The least frequent node in the input sequence.
: @example test/Queries/data-cleaning/consolidation/leastfrequent_1.xq
:)
-declare function con:least-frequent ( $s ) {
+declare function con:least-frequent ( $s ) as item(){
let $aux := for $str in set:distinct($s) order by count($s[deep-equal(.,$str)]) return $str
return if (count($aux) = 0) then () else ($aux[1])
};
@@ -242,7 +242,7 @@
: @return The node having the largest number of descending elements in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-elements.xq
:)
-declare function con:most-elements ( $s ) {
+declare function con:most-elements ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::element()) descending return $str)[1]
};
@@ -260,7 +260,7 @@
: @return The node having the largest number of descending attributes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-attributes.xq
:)
-declare function con:most-attributes ( $s ) {
+declare function con:most-attributes ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::*/attribute()) descending return $str)[1]
};
@@ -278,7 +278,7 @@
: @return The node having the largest number of descending nodes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-nodes.xq
:)
-declare function con:most-nodes ( $s ) {
+declare function con:most-nodes ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::node()) descending return $str)[1]
};
@@ -296,7 +296,7 @@
: @return The node having the smallest number of descending elements in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-elements.xq
:)
-declare function con:least-elements ( $s ) {
+declare function con:least-elements ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::element()) return $str)[1]
};
@@ -314,7 +314,7 @@
: @return The node having the smallest number of descending attributes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-attributes.xq
:)
-declare function con:least-attributes ( $s ) {
+declare function con:least-attributes ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::*/attribute()) return $str)[1]
};
@@ -332,7 +332,7 @@
: @return The node having the smallest number of descending nodes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-nodes.xq
:)
-declare function con:least-nodes ( $s ) {
+declare function con:least-nodes ( $s ) as element(){
(for $str in set:distinct($s) order by count($str/descendant-or-self::node()) return $str)[1]
};
@@ -350,7 +350,7 @@
: @return The node having the largest number of distinct descending elements in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-distinct-elements.xq
:)
-declare function con:most-distinct-elements ( $s ) {
+declare function con:most-distinct-elements ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::element())) descending return $str)[1]
};
@@ -368,7 +368,7 @@
: @return The node having the largest number of distinct descending attributes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-distinct-attributes.xq
:)
-declare function con:most-distinct-attributes ( $s ) {
+declare function con:most-distinct-attributes ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::*/attribute())) descending return $str)[1]
};
@@ -386,7 +386,7 @@
: @return The node having the largest number of distinct descending nodes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/most-distinct-nodes.xq
:)
-declare function con:most-distinct-nodes ( $s ) {
+declare function con:most-distinct-nodes ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::node())) descending return $str)[1]
};
@@ -404,7 +404,7 @@
: @return The node having the smallest number of distinct descending elements in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-distinct-elements.xq
:)
-declare function con:least-distinct-elements ( $s ) {
+declare function con:least-distinct-elements ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::element())) return $str)[1]
};
@@ -422,7 +422,7 @@
: @return The node having the smallest number of distinct descending attributes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-distinct-attributes.xq
:)
-declare function con:least-distinct-attributes ( $s ) {
+declare function con:least-distinct-attributes ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::*/attribute())) return $str)[1]
};
@@ -440,7 +440,7 @@
: @return The node having the smallest number of distinct descending nodes in the input sequence.
: @example test/Queries/data-cleaning/consolidation/least-distinct-nodes.xq
:)
-declare function con:least-distinct-nodes ( $s ) {
+declare function con:least-distinct-nodes ( $s ) as element(){
(for $str in set:distinct($s) order by count(set:distinct($str/descendant-or-self::node())) return $str)[1]
};
@@ -457,7 +457,7 @@
: @param $paths A sequence of strings denoting XPath expressions.
: @return The elements that, when matched to the given set of XPath expressions, always return a non-empty set of nodes.
:)
-declare function con:all-xpaths ( $s as element()* , $paths as xs:string* ) {
+declare function con:all-xpaths ( $s as element()* , $paths as xs:string* ) as element()*{
(:
for $str in set:distinct($s)
where every $path in $paths satisfies count(
@@ -484,7 +484,7 @@
: @return The elements that, when matched to the given set of XPath expressions, return a non-empty set of nodes
: for at least one of the cases.
:)
-declare function con:some-xpaths ( $s as element()* , $paths as xs:string* ) {
+declare function con:some-xpaths ( $s as element()* , $paths as xs:string* ) as element()*{
(:
for $str in set:distinct($s)
where some $path in $paths satisfies count(
@@ -512,7 +512,7 @@
: @return The element that matches the largest number of XPath expressions producing a non-empty set of nodes.
:)
-declare function con:most-xpaths ( $s as element()* , $paths as xs:string* ) {
+declare function con:most-xpaths ( $s as element()* , $paths as xs:string* ) as element()*{
(:
(
for $str in set:distinct($s)
@@ -543,7 +543,7 @@
: @return The element that matches the smallest number of XPath expressions producing a non-empty set of nodes.
:)
-declare function con:least-xpaths ( $s as element()* , $paths as xs:string* ) {
+declare function con:least-xpaths ( $s as element()* , $paths as xs:string* ) as element()*{
(:
(
for $str in set:distinct($s)
@@ -574,6 +574,6 @@
: <br/><br/><b> Attention : This function is still not implemented. </b> <br/>
:
:)
-declare function con:validating-schema ( $s as element()*, $schema as element() ) {
+declare function con:validating-schema ( $s as element()*, $schema as element() ) as element()*{
false()
};
=== modified file 'src/com/zorba-xquery/www/modules/data-cleaning/conversion.xq'
--- src/com/zorba-xquery/www/modules/data-cleaning/conversion.xq 2012-04-11 09:50:34 +0000
+++ src/com/zorba-xquery/www/modules/data-cleaning/conversion.xq 2012-04-27 15:23:42 +0000
@@ -191,7 +191,7 @@
: @return The value resulting from the conversion
: @example test/Queries/data-cleaning/conversion/unit-convert.xq
:)
-declare %an:nondeterministic function conversion:unit-convert ( $v as xs:double, $t as xs:string, $m1 as xs:string, $m2 as xs:string ) {
+declare %an:nondeterministic function conversion:unit-convert ( $v as xs:double, $t as xs:string, $m1 as xs:string, $m2 as xs:string ) as xs:double {
if ( $m1 = $m2 ) then $v else
let $conversion-table :=
@@ -351,7 +351,7 @@
: @see http://www.ecb.int/stats/exchange/eurofxref/html/index.en.html
: @example test/Queries/data-cleaning/conversion/currency-convert.xq
:)
-declare %an:nondeterministic function conversion:currency-convert ( $v as xs:double, $m1 as xs:string, $m2 as xs:string, $date as xs:string ) {
+declare %an:nondeterministic function conversion:currency-convert ( $v as xs:double, $m1 as xs:string, $m2 as xs:string, $date as xs:string ) as xs:double{
let $daily := "http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml"
let $hist := "http://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml"
let $doc := if (string-length($date) = 0) then http:get-node($daily)[2] else
@@ -374,7 +374,7 @@
: <br/><br/><b> Attention : This function is still not implemented. </b> <br/>
:
:)
-declare function conversion:phone-from-domain ( $domain as xs:string ) {
+declare function conversion:phone-from-domain ( $domain as xs:string ) as xs:string*{
()
};
@@ -388,7 +388,7 @@
: <br/><br/><b> Attention : This function is still not implemented. </b> <br/>
:
:)
-declare function conversion:address-from-domain ( $domain as xs:string ) {
+declare function conversion:address-from-domain ( $domain as xs:string ) as xs:string*{
()
};
@@ -402,6 +402,6 @@
: <br/><br/><b> Attention : This function is still not implemented. </b> <br/>
:
:)
-declare function conversion:name-from-domain ( $domain as xs:string ) {
+declare function conversion:name-from-domain ( $domain as xs:string ) as xs:string*{
()
};
=== modified file 'src/com/zorba-xquery/www/modules/data-cleaning/set-similarity.xq'
--- src/com/zorba-xquery/www/modules/data-cleaning/set-similarity.xq 2011-08-01 11:26:53 +0000
+++ src/com/zorba-xquery/www/modules/data-cleaning/set-similarity.xq 2012-04-27 15:23:42 +0000
@@ -46,7 +46,7 @@
: @return The union of both sets.
: @example test/Queries/data-cleaning/set-similarity/deep-union.xq
:)
-declare function set:deep-union ( $s1 , $s2 ) {
+declare function set:deep-union ( $s1 , $s2 ) as item()*{
let $s := ( $s1 , $s2 )
for $a at $apos in $s
where every $ba in subsequence($s, 1, $apos - 1) satisfies not(deep-equal($ba,$a))
@@ -66,7 +66,7 @@
: @return The intersection of both sets.
: @example test/Queries/data-cleaning/set-similarity/deep-intersect.xq
:)
-declare function set:deep-intersect ( $s1 , $s2 ) {
+declare function set:deep-intersect ( $s1 , $s2 ) as item()*{
for $a at $apos in $s1
let $t1 := every $ba in subsequence($s1, 1, $apos - 1) satisfies not(deep-equal($ba,$a))
let $t2 := some $bb in $s2 satisfies deep-equal($bb,$a)
@@ -86,7 +86,7 @@
: @return The set provided as input without the exact duplicates (i.e., returns the distinct nodes from the set provided as input).
: @example test/Queries/data-cleaning/set-similarity/distinct.xq
:)
-declare function set:distinct ( $s ) {
+declare function set:distinct ( $s ) as item()*{
for $a at $apos in $s
where every $ba in subsequence($s, 1, $apos - 1) satisfies not(deep-equal($ba,$a))
return $a
Follow ups
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: noreply, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Sorin Marian Nasoi, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-05-01
-
Re: [Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Sorin Marian Nasoi, 2012-05-01
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-04-30
-
Re: [Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-04-30
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Zorba Build Bot, 2012-04-30
-
[Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Sorin Marian Nasoi, 2012-04-30
-
Re: [Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Sorin Marian Nasoi, 2012-04-30
-
Re: [Merge] lp:~diogo-simoes89/zorba/DC-documentation into lp:zorba/data-cleaning-module
From: Bruno Martins, 2012-04-29