XCase is a case tool for conceptual modeling of XML data based on MDA as it separates the conceptual modeling process to two levels: Platform-Independent and Platform-Specific Model. From each PSM diagram you can derive an XML schema describing a data view.
We all know how long it can take to learn a new DTD, XML schema, or an object model for an object-relational mapping. Some of these documents can be 20 pages or longer, and while XML is undoubtedly useful, let's face it - reading through 20 pages of XML is not a walk in the park.
This is why we created Linguine Maps.
Linguine Maps is an open-source Java library that conducts programmatic visualization of various text files, generating from them easy-to-understand entity-relation diagrams. With a diagram it will take you and your team minutes now, instead of perhaps hours, to get familiar with new schema, object-relational mappings, or DTDs. And you can always go back to the source files when more details are needed. Curious what this looks like? There is an image gallery with many samples!
All diagrams produced by the Linguine Maps are precise reflection of the source code. There is absolutely no manual work! It is fully automatic! Try it online now!
In this release we support programmatic visualization for:
* WSDL; for these files we draw relations between service, ports and port types
* Apache ANT build files; for these files we draw task dependency diagrams
* Document Type Definition (DTD) for XML documents; for these files we draw relations between various entities and their attributes
* Apache ObJectRelationBridge (OJB) mapping files; for these files we draw UML-style class diagrams
* Hibernate mapping files; for these files we draw UML-style class diagrams
Programmatic visualization offers a very effective communication tool for software development teams. Integrated into the build process?, it helps to keep documentation up to date automatically. All members of your development team now can have a common set of visual documents, constructed automatically from the source code. The idea was floating around for a while, but we find that our approach has a key advantage.
Jersey 1.0 is an open-source, production-ready reference implementation of JAX-RS, the Java API for RESTful Web Services (JSR-311). Jersey makes it easy to create RESTful web services in Java.
In an earlier Tech Tip, Implementing RESTful Web Services in Java, Paul Sandoz and I introduced RESTful Web Services, JAX-RS, and Jersey, and showed how to write RESTful web services in Java that conform to the JAX-RS specification. In this tip you will learn how to configure data in JSON (JavaScript Object Notation) using Jersey 1.0. JSON is a lightweight data-interchange format that is based on the object notation of the JavaScript language. Because of it's simple text format, JSON provides a good alternative to other data interchange formats such as XML and is particularly attractive as a data interchange format for RESTful web services.
In this tip you will build a Jersey-based web application that provides information about printer status. The application returns the information in JSON format. To build the application, you will use the Maven 2 software project management tool. For more information about Maven, see Welcome to Maven and Building Web Applications with Maven 2.
This project started from my frustration that I could not find any simple, portable XML Parser to use inside my tools (see CONDOR for example). Let's look at the well-known Xerces C++ library: the complete Xerces project is 53 MB! (11 MB compressed in a zipfile). I am currently developping many small tools. I am using XML as standard for all my input /ouput configuration and data files. The source code of my small tools is usually around 600KB.
JSefa (Java Simple exchange format api) is a simple library for stream-based serialization of java objects to XML, CSV, and FLR (extensible to other formats) and back again using an iterator-style interface independent of the serialization format. The mapping between java object types and types of the serialization format (e. g. xml complex element types) can be defined either by annotating the java classes or programmatically using a simple API. The current implementation supports XML, CSV and FLR (Fixed Length Record) - for XML it is based on JSR 173.
JSR 173 (Stax) is a popular stream-based XML API for java providing an iterator-style interface ("pull"-mechanism in contrast to the "push"-mechanism provided by SAX). But JSR 173 defines a low-level API not designed for directly serializing java objects and back again. On the other hand traditional high-level APIs like JAXB or Castor are not stream-based, so that reading a xml document will generate java objects holding the data of the complete xml document in memory at the same time. Even the integration of StAX into JAXB 2.0 is only a first step to high-level streaming, as two independent APIs have to be used in parallel. JSefa provides a convenient and performant approach to high-level streaming using an iterator-style interface. It has a layered API with the top layer allowing the streaming to be independent of the serialization format type (XML, CSV or whatever). The current implementation provides support for XML, CSV, and FLR.
Sphinx is a full-text search engine, distributed under GPL version 2. Commercial license is also available for embedded use.
Generally, it's a standalone search engine, meant to provide fast, size-efficient and relevant fulltext search functions to other applications. Sphinx was specially designed to integrate well with SQL databases and scripting languages. Currently built-in data sources support fetching data either via direct connection to MySQL or PostgreSQL, or using XML pipe mechanism (a pipe to indexer in special XML-based format which Sphinx recognizes).
As for the name, Sphinx is an acronym which is officially decoded as SQL Phrase Index. Yes, I know about CMU's Sphinx project.
Platypus is a full-featured and easy-to-use page layout and typesetting system.
Inspired by technologies such as TeX, Platypus adds new features and, especially, ease of use to the generation of documents of all kinds. It is particularly adept at listing code, and so is frequently used for documentation. Input consists of text files with embedded formatting commands. These files are converted by Platypus to PDF, HTML, or Microsoft Rich Text Format (RTF).
Platypus is written in Java and relies on the iText library. It is available at no charge under the Apache open-source license. For more information, see the links to the left.
It is currently common to build a number of releases from a single code base. For example, a development release, a QA release, a production release and perhaps customer-specific releases. However, these releases seem to differ mostly in the contents of their XML configuration files, and then only very little. Maintaining all these slightly different configuration files is a real nuisance.
XConf was created to simplify this maintenance. Its fundamental premise is that a single development-release (or production-release) configuration file is created and maintained, and is processed by XConf at either build or deployment time into an appropriate release by applying one or more XML-based scripts. Each script contains only the differences required to create the appropriate release, thus removing the need for the mass duplication of configuration files.
This is not really a new solution, since XSLT has been used in the past to do this quite successfully, but XPath can get a little arcane, and maintaining transformation scripts using XSLT can become really complex very quickly. XConf uses a very simple and compact method of specifying elements that need to be processed, and provides some very useful constructs to make transformations painless.
The Semantic Web Research Group is a group of people working with Semantic Web technology inside the MIND LAB at University of Maryland Institute for Advanced Computer Studies
Flying Saucer is an XHTML renderer written in Java. It's 100% Java, not a native wrapper, and it only handles well-formed XHTML + CSS. It is intended for embedding web-based user interfaces into Java applications (ex. web photo album generator, help viewer, iTunes Music Store clone). It cannot be used as a general purpose web browser since it does not support the malformed legacy HTML found on the web, though recent work on compatibility libraries may be enough to do what you need. You may be able to work with legacy HTML (e.g. HTML that is not well-formed XML) by using a pre-processor that cleans it up; there are several of these, including JTidy and TagSoup.
Model-based Data Export Tool
Features
* Mass data export to XML and SQL.
* Generates hierarchically structured XML and topologically sorted SQL-DML.
* Exports consistent and referentially intact row-sets from your productive database and imports the data into your development and test environment.
* Removes and archives obsolete data from your productive database without violating integrity.
* Open Source. Entirely written in Java. Platform independent. DBMS agnostic.