|
From: <lh...@us...> - 2008-11-18 14:08:00
|
Revision: 200
http://tinytim.svn.sourceforge.net/tinytim/?rev=200&view=rev
Author: lheuer
Date: 2008-11-18 14:07:47 +0000 (Tue, 18 Nov 2008)
Log Message:
-----------
- CXTMTopicMapWriter: Datatype locators are not normalized anymore (not yet in the draft dtd. 2008-05-15)
- XTM20TopicMapWriter: iids are taken into account
- AbstractTopicMapReader: Did wrongly checked if field _deserializer is null and not against the argument "deserializer")
- TinyTimMapInputHandler:
* Tried to set an element outside the array to null. Fixed
* Using construct.equals(other) instead of construct == other (since that may only work for the memory impl of tinyTiM)
Modified Paths:
--------------
tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapReader.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapWriter.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractXTMTopicMapReader.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/CXTMTopicMapWriter.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/TinyTimMapInputHandler.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM10TopicMapWriter.java
tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM20TopicMapWriter.java
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapReader.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapReader.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapReader.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -71,7 +71,7 @@
protected AbstractTopicMapReader(final TopicMap topicMap,
final Syntax syntax, final File source, final String docIRI)
throws IOException {
- this(topicMap, syntax, new Source(new FileInputStream(source), docIRI));
+ this(topicMap, syntax, new FileInputStream(source), docIRI);
}
/**
@@ -82,8 +82,8 @@
* @param source
* @param docIRI
*/
- protected AbstractTopicMapReader(TopicMap topicMap, Syntax syntax,
- InputStream source, String docIRI) {
+ protected AbstractTopicMapReader(final TopicMap topicMap, final Syntax syntax,
+ final InputStream source, final String docIRI) {
this(topicMap, syntax, new Source(source, docIRI));
}
@@ -108,14 +108,15 @@
*/
protected AbstractTopicMapReader(final IMapHandler handler,
final Syntax syntax, final Source source) {
- this(handler, DeserializerRegistry.createDeserializer(syntax), source);
+ this(handler, DeserializerRegistry.createDeserializer(syntax), source, syntax);
}
protected AbstractTopicMapReader(final IMapHandler handler,
- final IDeserializer deserializer, final Source source) {
- if (_deserializer == null) {
- throw new IllegalArgumentException("Deserializer not found");
+ final IDeserializer deserializer, final Source source, final Syntax syntax) {
+ if (deserializer == null) {
+ throw new IllegalArgumentException("Deserializer for " + syntax.getName() + " not found");
}
+ _deserializer = deserializer;
_deserializer.setProperty(Property.VALIDATE, Boolean.FALSE);
_deserializer.setMapHandler(handler);
_source = source;
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapWriter.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapWriter.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractTopicMapWriter.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -56,7 +56,8 @@
continue;
}
id = reference.substring(fragIdx+1);
- if (id.startsWith("id")) {
+ System.out.println("Id: " + id);
+ if (id.startsWith("id-")) {
id = null;
}
if (id != null) {
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractXTMTopicMapReader.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractXTMTopicMapReader.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/AbstractXTMTopicMapReader.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -33,7 +33,7 @@
* @author Lars Heuer (heuer[at]semagia.com) <a href="http://www.semagia.com/">Semagia</a>
* @version $Rev$ - $Date$
*/
-abstract class AbstractXTMTopicMapReader extends AbstractTopicMapReader {
+public abstract class AbstractXTMTopicMapReader extends AbstractTopicMapReader {
public AbstractXTMTopicMapReader(TopicMap topicMap, Syntax syntax,
File source) throws IOException {
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/CXTMTopicMapWriter.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/CXTMTopicMapWriter.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/CXTMTopicMapWriter.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -448,7 +448,7 @@
_out.endElement("value");
_out.newline();
_out.startElement("datatype");
- _out.characters(_normalizeLocator(obj.getDatatype()));
+ _out.characters(obj.getDatatype().getReference());
_out.endElement("datatype");
_out.newline();
}
@@ -652,7 +652,7 @@
normLoc = normLoc.substring(slashPos);
}
}
- if (normLoc.startsWith("/")) {
+ if (normLoc.charAt(0) == '/') {
normLoc = normLoc.substring(1);
}
_locator2Norm.put(locator, normLoc);
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/TinyTimMapInputHandler.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/TinyTimMapInputHandler.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/TinyTimMapInputHandler.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -435,7 +435,7 @@
private IConstruct _leaveStatePopConstruct(int state) throws MIOException {
_leaveState(state);
final IConstruct construct = _peekConstruct();
- _constructStack[_constructSize] = null;
+ _constructStack[_constructSize-1] = null;
_constructSize--;
return construct;
}
@@ -494,7 +494,7 @@
*/
private void _merge(Topic source, ITopic target) {
for (int i=0; i <_constructSize; i++) {
- if (_constructStack[i] == source) {
+ if (_constructStack[i].equals(source)) {
_constructStack[i] = target;
}
}
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM10TopicMapWriter.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM10TopicMapWriter.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM10TopicMapWriter.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -138,7 +138,6 @@
protected void _writeAssociation(final Association assoc) throws IOException {
Set<Role> roles = assoc.getRoles();
if (roles.isEmpty()) {
- LOG.info("Omitting association id " + assoc.getId() + " since it has no roles");
return;
}
_attrs.clear();
Modified: tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM20TopicMapWriter.java
===================================================================
--- tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM20TopicMapWriter.java 2008-11-15 13:17:29 UTC (rev 199)
+++ tinytim-mio/trunk/src/main/java/org/tinytim/mio/XTM20TopicMapWriter.java 2008-11-18 14:07:47 UTC (rev 200)
@@ -18,7 +18,6 @@
import java.io.IOException;
import java.io.OutputStream;
import java.util.Set;
-import java.util.logging.Logger;
import org.tinytim.internal.api.IScope;
import org.tinytim.internal.api.IScoped;
@@ -53,8 +52,6 @@
*/
public class XTM20TopicMapWriter extends AbstractXTMWriter {
- private static final Logger LOG = Logger.getLogger(XTM20TopicMapWriter.class.getName());
-
private Topic _defaultNameType;
/**
@@ -108,11 +105,12 @@
protected void _writeTopic(final Topic topic) throws IOException {
// Ignore the topic if it is the default name type and it has no further
- // characteristics (iids do not count)
+ // characteristics
if (_isDefaultNameType(topic)
&& topic.getReified() == null
&& topic.getSubjectIdentifiers().size() == 1
&& topic.getSubjectLocators().isEmpty()
+ && topic.getItemIdentifiers().isEmpty()
&& topic.getRolesPlayed().isEmpty()
&& topic.getTypes().isEmpty()
&& topic.getNames().isEmpty()
@@ -142,7 +140,6 @@
protected void _writeAssociation(final Association assoc) throws IOException {
Set<Role> roles = assoc.getRoles();
if (roles.isEmpty()) {
- LOG.info("Omitting association id " + assoc.getId() + " since it has no roles");
return;
}
_out.startElement("association", _reifier(assoc));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|