Project

General

Profile

Actions

Feature #24043

closed

New TYPO3_DB method for select queries that fetch data from up to 3 tables based on RDF like triples

Added by Jo Hasenau about 14 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
Database API (Doctrine DBAL)
Target version:
-
Start date:
2010-11-13
Due date:
% Done:

0%

Estimated time:
PHP Version:
5.2
Tags:
Complexity:
Sprint Focus:

Description

Currenlty the SCOTTY team is going to implement semantic features into TYPO3. This will enable users to easily connect different kinds of records based on RDF-triples containing

Subject => The parent record
Predicate => The type of the relation
Object => The child record

This will be stored in a triple table that connects these tables via MMM.

fe_user => belongs to => fe_group
person => logs in as => fe_user
news => has been written by => person
content element => is tagged with => term

Attached patch introduces the new TYPO3_DB method

exec_SELECTgetRowsByTriple

that can be used for other connections as well, i.e. File abstractions or DAM records

(issue imported from #M16376)


Files

exec_SELECTgetRowsByTriple.diff (3.09 KB) exec_SELECTgetRowsByTriple.diff Administrator Admin, 2010-11-13 19:05
exec_SELECTgetRowsByTriple_v2.diff (3.17 KB) exec_SELECTgetRowsByTriple_v2.diff Administrator Admin, 2010-11-13 19:59
exec_SELECT_mmm_query.diff (4.85 KB) exec_SELECT_mmm_query.diff Administrator Admin, 2010-11-14 14:50
exec_SELECT_mmm_query_v2.diff (5.12 KB) exec_SELECT_mmm_query_v2.diff Administrator Admin, 2010-11-14 16:31
exec_SELECT_mmm_query_v3.diff (5.12 KB) exec_SELECT_mmm_query_v3.diff Administrator Admin, 2010-11-15 18:27
Actions #1

Updated by Jo Hasenau about 14 years ago

Attached a new version with a more universal naming scheme and additional table aliases

Actions #2

Updated by Jo Hasenau about 14 years ago

Fixed some CGL issues and bugs

Actions #3

Updated by Jo Hasenau about 14 years ago

Fixed an optional first parameter, that would not work in PHP, when empty

Actions #4

Updated by Alexander Opitz almost 11 years ago

  • Status changed from New to Needs Feedback
  • Target version deleted (0)

Hi,

as this issue is very old. Is this feature missing in newer versions of TYPO3 CMS (6.1.7)?
If yes, can you provide a newer patch against master by using Gerrit? http://wiki.typo3.org/CWT

IMHO Something like that isn't implemented in the Database API but on the other side shouldn't this be supported by Extbase?

Actions #5

Updated by Jo Hasenau almost 11 years ago

The feature has never been implemented, since some people did not like to provide methods in the core that would have been implmented just to serve one extension.

Since the core provides categories now out of the box, it would be very useful though to be able to select triples the described way.
So:

Yes, the feature is still missing.
Yes, I can provide a new patch.
No, this is not supported by extbase AFAIK, since the original triple approach by Jochen was based on a model with 10+ tables at that time, which would be way to complicated and slow.
IMHO the feature should be available as a native DB method, so that people with or without extbase could make use of it.

Actions #6

Updated by Alexander Opitz almost 11 years ago

  • Status changed from Needs Feedback to New
  • Assignee set to Jo Hasenau

Ok, I set you as assignee.

But I don't know if this will be accepted, maybe this is more a thing for an extension. In core the problem would be that dbal also needs support for it.

Actions #7

Updated by Mathias Schreiber almost 10 years ago

Hey joey,

wanna continue on this one?

Actions #8

Updated by Jo Hasenau almost 10 years ago

+1 :-)

Actions #9

Updated by Oliver Hader about 9 years ago

I think we should go a more generic approach here. Using tripple stores on RDBMS like MySQL is quite slow on huge data due to the habits of relational data and the amount of data-sets being referenced on joining the SPO tripples.
I'd rather go a different way to first determine what we actually wanna provide in the core and how data needs to be represented and manipulated (e.g. are we talking about JSON-LD/RDFa to generated markup or are we talking about a SPARQL interface). Besides that, I consider MySQL/RDBMS to be the poor fallback for the default environments, but having a pluggable connector to bind the data-pipes to Apache Stanbol, Cassandra, Sesame or whatever. Having the possibility to do that, offers using reasoning and inference as well - I doubt that we wanna recreate the OWL chain for MySQL or in an own in-memory store.

Actions #10

Updated by Morton Jonuschat almost 8 years ago

  • Status changed from New to Needs Feedback

Given that TYPO3_DB has been deprecated in the meantime and there hasn't been any progress for the last 6 years, is this something that is still being worked on and which should be revisited for v9 or should we close the issue for now?

Actions #11

Updated by Jo Hasenau over 7 years ago

  • Status changed from Needs Feedback to Closed
Actions

Also available in: Atom PDF