From: Jean-Marc V. <jea...@gm...> - 2009-10-30 16:14:41
|
Please read answers interspersed . 2009/10/29 Battle, Steven <ste...@hp...> > Jean-Marc, > > Thanks, I'm greatly in your debt for encouraging me to resurrect the Gloze > codebase. Sorry not to get back sooner, but I'm leaving HP tomorrow and have > been a little distracted by job hunting. I'm hoping to revise my priorities > so I have more time to work on XML<->RDF/XSD<->OWL mappings. > > I've added your contribution GlozeURL to the distribution. Fine. I would have expected to see it in Subversion too... > I haven't as yet changed the name but I've no objections to doing that once > I've had a better look at the modifications. Sure! > I've made a few modifications to Gloze that make it behave more sensibly to > your input. I've also added your example to the samples folder so people can > see how GlozeURL is used. > > The latest release is at < > http://sourceforge.net/projects/jena/files/Gloze/Gloze-1.01-beta2/Gloze-1.01-beta2.zip > > > This includes the full test suite. > I integrated it in EulerGUI. Small technical issues are: - it seems to require the source of Jena 2.5.7, but I've compiled and used Gloze beta1 with Jena 2.6.0 ; I've compiled and used Gloze beta2 with Jena 2.6.0 also; the parts of Jena used seem quite stable; in this case you should update the build.xml to 2.6.2 the latest. - I use Maven for my builds, and I was obliged to put Gloze in our public depot http://eulergui.sourceforge.net/maven2 see details here: http://eulergui.svn.sourceforge.net/viewvc/eulergui/trunk/eulergui/html/documentation.html#Uploading I have uploaded gloze.jar beta2 there. I put a snapshot of EulerGUI with the latest Gloze at the usual place: http://eulergui.sourceforge.net/tmp/ along with the Manual: http://eulergui.svn.sourceforge.net/viewvc/eulergui/trunk/eulergui/html/documentation.html I'd be interested to hear more about the applications you envisage for this > tool. EulerGUI is developement environment for rules whose central format is N3 and central meta-model is OWL. It has several importers for data and models: UML, eCore, and Gloze and ReDeFer for XML/XSD. >From a technical as well as business point of view, importing and exporting XML is essential. XForms, XHTML, XBRL, are examples I have in mind, but there are thousands of XSD everywhere, although I didn't find any repository or search site for XSD's. Currently I work on generating XForms and XHTML forms from rules which natively output RDF triples. I already have an output as Java Swing forms: http://deductions.svn.sourceforge.net/viewvc/deductions/html/GUIgenerator.html Other use cases would involve reading one or more XML or RDF/SPARQL sources, process them with N3 rules, and export the results in various XML or textual formats. So what we have can be viewed as a logic-based transform engine. What Do you think of the underlying principles of the Gloze RDF mapping. For the little I've read, and the examples, I'm OK. Also ReDeFer uses as far as I know the same mapping. I try to start from a position of simplicity - but sometimes the semantic > differences between XML and RDF makes one throw up your hands in despair. > What's your opinion on OWL2 ? I certainly like the new datatype support (the > main drawback of OWL1 in my opinion). > I agree. I also like chains of properties. I have not really begun adding rules for OWL2 in my framework. And I also have to leverage Restrictions, a big subject! Please keep me informed of any improvements you'd like to see in Gloze and > I'll do my best to help. > > Thanks again for your support, Steve. > PS. My hp.com email address goes up in smoke tomorrow, so I've cc'd my > googlemail account that you can reach me on in future. > OK. > ***** EXAMPLE FOLLOWS ***** > > The output from your example is now as follows. The warnings seem _fairly_ > reasonable now. > > WARN [main] (Content.java:129) - ignored attribute schemaLocation in schema > WARN [main] (Import.java:99) - no schema for namespace: > http://www.w3.org/2001/XMLSchema > WARN [main] (schema.java:340) - uri clash: > http://www.w3.org/2002/xforms#value > WARN [main] (schema.java:340) - uri clash: > http://www.w3.org/2002/xforms#filename > WARN [main] (schema.java:340) - uri clash: > http://www.w3.org/2002/xforms#mediatype > WARN [main] (GlozeURL.java:632) - using no schema mapping for document > element: html > <?xml version="1.0"?> > <rdf:RDF > xmlns:xf_="http://www.w3.org/2002/xforms#" > xmlns:ev="http://www.w3.org/2001/xml-events" > xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > xmlns:j.0="http://www.w3.org/1999/xhtml#" > xmlns:sample="http://www.agencexml.com/sample" > xmlns:xsd_="http://www.w3.org/2001/XMLSchema#" > xmlns:sample_="http://www.agencexml.com/sample#" > xmlns:xf="http://www.w3.org/2002/xforms" > xmlns:ns1="http://example.org#" > xmlns:ev_="http://www.w3.org/2001/xml-events#"> > <rdf:Description rdf:about=""> > <j.0:html rdf:parseType="Resource"> > <j.0:body rdf:parseType="Resource"> > <xf_:group rdf:parseType="Resource"> > <j.0:fieldset rdf:parseType="Resource"> > <xf_:input rdf:parseType="Resource"> > <xf_:label>Postal Code:</xf_:label> > <ns1:ref>LocationPostalID</ns1:ref> > </xf_:input> > <xf_:input rdf:parseType="Resource"> > <xf_:label>State:</xf_:label> > <ns1:ref>LocationStateName</ns1:ref> > </xf_:input> > <xf_:input rdf:parseType="Resource"> > <xf_:label>City:</xf_:label> > <ns1:ref>LocationCityName</ns1:ref> > </xf_:input> > <j.0:br></j.0:br> > <xf_:input rdf:parseType="Resource"> > <xf_:label>Street:</xf_:label> > <ns1:ref>LocationStreetFullText</ns1:ref> > </xf_:input> > <j.0:legend>Mailing Address</j.0:legend> > </j.0:fieldset> > <ns1:ref>/Address</ns1:ref> > </xf_:group> > </j.0:body> > <j.0:head rdf:parseType="Resource"> > <xf_:model rdf:parseType="Resource"> > <xf_:instance rdf:parseType="Resource"> > <ns1:Address rdf:parseType="Resource"> > <ns1:LocationPostalID></ns1:LocationPostalID> > <ns1:LocationStateName></ns1:LocationStateName> > <ns1:LocationCityName></ns1:LocationCityName> > <ns1:LocationStreetFullText></ns1:LocationStreetFullText> > </ns1:Address> > </xf_:instance> > </xf_:model> > <j.0:title>Address Form</j.0:title> > </j.0:head> > </j.0:html> > </rdf:Description> > </rdf:RDF> > Indeed it looks good. I actually tried the transform in the direction XForms --> RDF , to see what kind of RDF I should generate for XForms. The use case is , as I wrote, generating XForms and XHTML forms from N3 rules an OWL model in input. Kind regards -- Jean-Marc Vanel Consulting, services, training, Rule-based programming, Semantic Web http://jmvanel.free.fr/ +33 (0)6 89 16 29 52 -- +33 (0)1 39 55 58 16 ( we rarely listen to voice messages, please send a mail instead ) |