(First, I apologize for my comment about the target spreadsheet--I was confusing your situation with a similar one I was trying.)
As you saw, when importing a tsv, the first row is interpreted as the class name (column 1) and instance identifiers. If these are not present in the existing ontology, no data is imported. The rest of the rows are interpreted as named instances of the class in column-1/row-1. The key is the "existing ontology" part. Data imported from spreadsheet files is imported into the namespace of the importing document's base URI unless you specify otherwise. It worked for core.rdf because it declares a Category class in the namespace of its base URI, but for fact.rdf the base URI didn't have a Category class, which is why the import wizard complained. If you change Category to codes_core:Category in your tab-delimited file, then when you import it into fact.rdf, TBC will know which Category class declaration it refers to. That worked for me with your files. Bob From: [email protected] [mailto:[email protected]] On Behalf Of Sven Miersch Sent: Friday, July 08, 2011 5:06 AM To: [email protected] Subject: Re: [topbraid-users] Topbraid Composer: class error when importing a spreadsheet into an existing ontology Hi Bob, Thank's for the fast answer. Yes, you've understood correctly. But what do you mean with "and it's declared as a class in the target spreadsheet"? The class is defined in my ontology, but not in my spreadsheet. there it is declared as Category and as a heading in the first row. The example speadsheet: Category categoryID categoryName GastroType GAT Gastro Type GastroCuisine GAC Gastro Cuisine GastroProfile GAP Gastro Profile I used the manual from http://www.topquadrant.com/composer/videos/tutorials/spreadsheets/import.htm l and there the spreadsheet format from section "Addin to Existing Ontology". The answers to your questions: I use the maestro edition of TBC in Version: 3.5.1.v20110629-1105R (latest download yesterday) and on Windows XP SP 3 (with all recommended updates and a clean/fresh installation). And for reproduce my promblems I attached the two files. core.rdf: # Saved by TopBraid on Thu Jul 07 16:13:55 CEST 2011 # baseURI: http://hts.com/obtm/codes/codes_core @prefix : <http://hts.com/obtm/codes/codes_core# <http://hts.com/obtm/codes/codes_core> > . @prefix owl: <http://www.w3.org/2002/07/owl# <http://www.w3.org/2002/07/owl> > . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns# <http://www.w3.org/1999/02/22-rdf-syntax-ns> > . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema# <http://www.w3.org/2000/01/rdf-schema> > . @prefix xsd: <http://www.w3.org/2001/XMLSchema# <http://www.w3.org/2001/XMLSchema> > . <http://hts.com/obtm/codes/codes_core> rdf:type owl:Ontology ; owl:versionInfo "Created with TopBraid Composer"^^xsd:string . :Category rdf:type rdfs:Class ; rdfs:subClassOf :Root . :CodeObject rdf:type rdfs:Class ; rdfs:subClassOf :Root . :Root rdf:type rdfs:Class . :categoryID rdf:type owl:DatatypeProperty ; rdfs:comment "A unique identifier for the code group / category, e.g. RMA for Room Amenity Type in the OTA spezification."^^xsd:string ; rdfs:domain :Category ; rdfs:range xsd:string . :categoryName rdf:type owl:DatatypeProperty ; rdfs:comment "A human-readable name for the code category, e.g. Room Amenity Type for the RMA category in the OTA spezification."^^xsd:string ; rdfs:domain :Category ; rdfs:range xsd:string . :codeCategory rdf:type owl:ObjectProperty ; rdfs:domain :CodeObject ; rdfs:range :Category . :codeID rdf:type owl:DatatypeProperty ; rdfs:comment "A unique identifier, e.g. RMA50 for a hairdryer in the OTA spezification."^^xsd:string ; rdfs:domain :CodeObject ; rdfs:range xsd:string . :codeName rdf:type owl:DatatypeProperty ; rdfs:comment "A human-readable name for the code, e.g. hairdryer for OTA code RMA 50."^^xsd:string ; rdfs:domain :CodeObject ; rdfs:range xsd:string . :comment rdf:type owl:DatatypeProperty ; rdfs:range xsd:string . And the fact.rdf: # Saved by TopBraid on Fri Jul 08 10:52:01 CEST 2011 # baseURI: http://hts.com/obtm/codes/hto_codes # imports: http://hts.com/obtm/codes/codes_core @prefix : <http://hts.com/obtm/codes/hto_codes# <http://hts.com/obtm/codes/hto_codes> > . @prefix codes_core: <http://hts.com/obtm/codes/codes_core# <http://hts.com/obtm/codes/codes_core> > . @prefix owl: <http://www.w3.org/2002/07/owl# <http://www.w3.org/2002/07/owl> > . @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns# <http://www.w3.org/1999/02/22-rdf-syntax-ns> > . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema# <http://www.w3.org/2000/01/rdf-schema> > . @prefix xsd: <http://www.w3.org/2001/XMLSchema# <http://www.w3.org/2001/XMLSchema> > . <http://hts.com/obtm/codes/hto_codes> rdf:type owl:Ontology ; owl:imports <http://hts.com/obtm/codes/codes_core> ; owl:versionInfo "Created with TopBraid Composer"^^xsd:string . Please note that the import of the spreadsheet into fact.rdf doesn't work. The import into core.rdf works as well. Regards, Sven 2011/7/7 Bob Ducharme <[email protected]> Sven, I just tried a similar import, and it worked as I expected. Just to make sure I understand correctly, Category is the first column of your tab-delimited file, and it's declared as a class in the target spreadsheet, and all the other columns of the tab-delimited file are properties of the Category instances, right? Also, what release of TBC are you running, and on what platform? Thanks, Bob DuCharme TopQuadrant -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Sven Miersch Sent: Thursday, July 07, 2011 12:45 PM To: TopBraid Suite Users Subject: [topbraid-users] Topbraid Composer: class error when importing a spreadsheet into an existing ontology Hi, I have the following problem with importing an excel spreadsheet into an existing ontology: Environment: I use two files: one for the schema definition (core.rdf) and one for the instances (fact.rdf). The fact.rdf has imported the core.rdf, so that the schema in fact.rdf is also known. The core.rdf should be used for different facts with different namespaces (each of them in its own rdf-file). For this reason, the scheme must/should be outsourced. My procedure: Now I want to import my facts from an Excel spreadsheet. For this I open the fact.rdf and use the import function of the TBC. There I choose the option "Import Tab-Delimited Spreadsheet File" from the category "TopBraid Composer". In the following Assistant-Window I select my file and choose the option "Import to the current ontology (uses the current namespace". I skip the following window with the Next button. The Problem: The class Category, that I have defined in the first column (first row) of my spradsheet wasn't found. This class exist in my schema definition core.rdf. So I think, that the import function dosn't work with imported classes (an other namespace). But the imported properties (also defined in core.rdf) are known. Verification that my spreadsheet works: I have imported the same spradsheet into my core.rdf and it works. Can anyone help me? How can I use the 2 files and the import from an spreadsheet with classes from an other namespace? I don't understand that the TBC identifies imported properties, but not work with imported classes. Regards, Sven Miersch -- You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include TopBraid Composer, TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] <mailto:topbraid-users%[email protected]> For more options, visit this group at http://groups.google.com/group/topbraid-users?hl=en -- You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include TopBraid Composer, TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] <mailto:topbraid-users%[email protected]> For more options, visit this group at http://groups.google.com/group/topbraid-users?hl=en -- You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include TopBraid Composer, TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/topbraid-users?hl=en -- You received this message because you are subscribed to the Google Group "TopBraid Suite Users", the topics of which include TopBraid Composer, TopBraid Live, TopBraid Ensemble, SPARQLMotion and SPIN. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/topbraid-users?hl=en
