<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi,<br>
<br>
I want to implement additional morph functions in my own repository
and deploy them AS packaged jar-files<br>
<br>
There is a nice procedure with flux commands which are loaded as
plugins when they are part of the plugins directory in the
metafacture-runner repository. The only thing to be done is to
write an additional flux-commands.properties file with the new
commands.<br>
<br>
<br>
<br>
Metamorph functions in contrast have to be defined in the
metamorph.xsd schema ( <group name="function">) part of the
metafacture-core repository.<br>
An additional morph-functions.properties file isn't enough. I get
errors like:<br>
<br>
Exception in thread "main"
org.culturegraph.mf.exceptions.MetafactureException: class
org.culturegraph.mf.morph.Metamorph could not be instantiated<br>
<snip....><br>
Caused by: org.culturegraph.mf.exceptions.MorphDefException: Error
during DOM creation: Error parsing xml: cvc-complex-type.2.4.a:
Invalid content was found starting with element 'itemLink'. One of
'{<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:compose,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:regexp,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:replace,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:substring,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:lookup,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:whitelist,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:blacklist,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:isbn,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:equals,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:not-equals,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:case,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:timestamp,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:dateformat,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:htmlanchor,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:trim,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:split,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:normalize-utf8,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:occurrence,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:constant,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:count,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:urlencode,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:buffer,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:name,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:switch-name-value,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:unique,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:script,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:setreplace,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:java}' is expected.<br>
at
org.culturegraph.mf.util.xml.DomLoader$TransformerErrorHandler.handle(DomLoader.java:215)<br>
at
org.culturegraph.mf.util.xml.DomLoader$TransformerErrorHandler.error(DomLoader.java:205)<br>
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.postErrorToListener(TransformerImpl.java:811)<br>
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:754)<br>
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:359)<br>
at
org.culturegraph.mf.util.xml.DomLoader.parse(DomLoader.java:113)<br>
at
org.culturegraph.mf.morph.AbstractMetamorphDomWalker.walk(AbstractMetamorphDomWalker.java:109)<br>
at
org.culturegraph.mf.morph.AbstractMetamorphDomWalker.walk(AbstractMetamorphDomWalker.java:105)<br>
at
org.culturegraph.mf.morph.Metamorph.<init>(Metamorph.java:163)<br>
at
org.culturegraph.mf.morph.Metamorph.<init>(Metamorph.java:108)<br>
at
org.culturegraph.mf.morph.Metamorph.<init>(Metamorph.java:98)<br>
at
org.culturegraph.mf.morph.Metamorph.<init>(Metamorph.java:94)<br>
... 15 more<br>
Caused by: javax.xml.transform.TransformerException: Error parsing
xml: cvc-complex-type.2.4.a: Invalid content was found starting with
element 'itemLink'. One of
'{<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:compose,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:regexp,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:replace,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:substring,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:lookup,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:whitelist,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:blacklist,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:isbn,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:equals,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:not-equals,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:case,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:timestamp,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:dateformat,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:htmlanchor,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:trim,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:split,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:normalize-utf8,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:occurrence,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:constant,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:count,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:urlencode,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:buffer,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:name,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:switch-name-value,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:unique,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:script,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:setreplace,
<a class="moz-txt-link-rfc2396E" href="http://www.culturegraph.org/metamorph">"http://www.culturegraph.org/metamorph"</a>:java}' is expected.<br>
... 25 more<br>
<br>
<br>
At the moment I can't see a possibility to extend the metamorph.xsd
in my extensions without changing the original schema and compiling
the metafacture-core by my own.<br>
<br>
Any suggestions?<br>
<br>
<br>
Günter<br>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<pre class="moz-signature" cols="72">--
UNIVERSITÄT BASEL
Universitätsbibliothek
Günter Hipler
Projekt swissbib
Schönbeinstrasse 18-20
4056 Basel, Schweiz
Tel.: +41 61 267 31 12
Fax: +41 61 267 31 03
E-Mail <a class="moz-txt-link-abbreviated" href="mailto:guenter.hipler@unibas.ch">guenter.hipler@unibas.ch</a>
URL <a class="moz-txt-link-abbreviated" href="http://www.swissbib.org">www.swissbib.org</a></pre>
</body>
</html>