473,396 Members | 1,966 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

How to organize orthogonal and non-orthogonal subsets?

I could use some help with a table design problem.

I have an electronic flashcard program. Actually, several of them.
They each rely on a utility program to keep track of the usage
statistics. After each practice session, the utility program tells the
flashcard program which items were learned and whihc need more
practice.

The drill stats are trracked by 3 indices: user, subject, and item.

For example, one of the subjects is the US States, which has
"categories" (subsets) for state capitals, date of admission to the
union, land area, etc. These subsets are orthogonal. That is, each
item is in exactly one subset.

Another subject is vocabulary words. The words are grouped according
to the test the user is studying for: SAT, GRE, GED, LSAT, etc. These
subsets are NOT orthogonal. Most of the words in the GRE subset are
also in the SAT subset.

The subjects with orthogonal subsets are no problem. I just assign
each subset a unique SubjectID and pass the tracking utility a list of
the subjects selected by the user.

The vocabulary subject, with its non-orthogonal subsets has me
stumped.

1. I cannot make eash subset into a subject and assign a unique
SubjectID because the utility program will track the same work in more
than onie place, which will screw up the statistics.

2. I cannot make them all part of the larger group because them the
utility program will not be able to tell them apart. If the user logs
on and asks to study the GRE set, having previously studied the GED
set, when the utility program reports back on which words need study,
it will get them from both groups.

I think I need to make the orthogonal subsets into subjects with
unique SubjectIDs, but call the non-orthogonal subsets something else
(logical subjects) and assign them a unique ID in a different address
space. When I report the results, I use the SubjectID. When I ask for
items that need to be redrilled, I use the other ID field.

Comments or suggestions?

Thanks

--
Running MS Office 2000 Pro on Win2000
Sep 19 '06 #1
4 1667
A reply from tablesdesign couldn't find comp.databases.ms-access

To my Access centric thinking, your schema sounds correct. Assuming
that the other program is cast in concrete, you have to find a way to
get information to the other program in such a was that it will
interpret it and respond to with information you can correctly
interpret.

Please post back with more details:

List your relevant tables and fields.

It is of particular interest how you "assign each subset a unique
SubjectID and pass the tracking utility a list of the subjects
selected by the user".

Exactly what information is returned to you? How is it derived? Do
you have any control over it? What relevant configuration options do
you have in the other program (I really don't want to get too much
into analyzing that other program but put in everything you think is
relevant).

By the way, have you contacted the manufacturers of that other program
(give us its name) of the grief its limitations cause you. Maybe they
have some sort of "modal" switch you can pass it. If they put a
disclaimer in their product literature about this issue you are SOL
there.

Your solution may lie in the data you put together to send in order to
generate the correct results. If your schema is already correct it's
unlikely to involve altering the schema.

HTH
--
-Larry-
--

"LurfysMa" <in*****@invalid.invalidwrote in message
news:vd********************************@4ax.com...
I could use some help with a table design problem.

I have an electronic flashcard program. Actually, several of them.
They each rely on a utility program to keep track of the usage
statistics. After each practice session, the utility program tells
the
flashcard program which items were learned and whihc need more
practice.

The drill stats are trracked by 3 indices: user, subject, and item.

For example, one of the subjects is the US States, which has
"categories" (subsets) for state capitals, date of admission to the
union, land area, etc. These subsets are orthogonal. That is, each
item is in exactly one subset.

Another subject is vocabulary words. The words are grouped according
to the test the user is studying for: SAT, GRE, GED, LSAT, etc.
These
subsets are NOT orthogonal. Most of the words in the GRE subset are
also in the SAT subset.

The subjects with orthogonal subsets are no problem. I just assign
each subset a unique SubjectID and pass the tracking utility a list
of
the subjects selected by the user.

The vocabulary subject, with its non-orthogonal subsets has me
stumped.

1. I cannot make eash subset into a subject and assign a unique
SubjectID because the utility program will track the same work in
more
than onie place, which will screw up the statistics.

2. I cannot make them all part of the larger group because them the
utility program will not be able to tell them apart. If the user
logs
on and asks to study the GRE set, having previously studied the GED
set, when the utility program reports back on which words need
study,
it will get them from both groups.

I think I need to make the orthogonal subsets into subjects with
unique SubjectIDs, but call the non-orthogonal subsets something
else
(logical subjects) and assign them a unique ID in a different
address
space. When I report the results, I use the SubjectID. When I ask
for
items that need to be redrilled, I use the other ID field.

Comments or suggestions?

Thanks

--
Running MS Office 2000 Pro on Win2000


--
-Larry-
--

"LurfysMa" <in*****@invalid.invalidwrote in message
news:vd********************************@4ax.com...
I could use some help with a table design problem.

I have an electronic flashcard program. Actually, several of them.
They each rely on a utility program to keep track of the usage
statistics. After each practice session, the utility program tells
the
flashcard program which items were learned and whihc need more
practice.

The drill stats are trracked by 3 indices: user, subject, and item.

For example, one of the subjects is the US States, which has
"categories" (subsets) for state capitals, date of admission to the
union, land area, etc. These subsets are orthogonal. That is, each
item is in exactly one subset.

Another subject is vocabulary words. The words are grouped according
to the test the user is studying for: SAT, GRE, GED, LSAT, etc.
These
subsets are NOT orthogonal. Most of the words in the GRE subset are
also in the SAT subset.

The subjects with orthogonal subsets are no problem. I just assign
each subset a unique SubjectID and pass the tracking utility a list
of
the subjects selected by the user.

The vocabulary subject, with its non-orthogonal subsets has me
stumped.

1. I cannot make eash subset into a subject and assign a unique
SubjectID because the utility program will track the same work in
more
than onie place, which will screw up the statistics.

2. I cannot make them all part of the larger group because them the
utility program will not be able to tell them apart. If the user
logs
on and asks to study the GRE set, having previously studied the GED
set, when the utility program reports back on which words need
study,
it will get them from both groups.

I think I need to make the orthogonal subsets into subjects with
unique SubjectIDs, but call the non-orthogonal subsets something
else
(logical subjects) and assign them a unique ID in a different
address
space. When I report the results, I use the SubjectID. When I ask
for
items that need to be redrilled, I use the other ID field.

Comments or suggestions?

Thanks

--
Running MS Office 2000 Pro on Win2000

Sep 19 '06 #2
To my Access centric thinking, your schema sounds correct. Assuming
that the other program is cast in concrete, you have to find a way to
get information to the other program in such a was that it will
interpret it and respond to with information you can correctly
interpret.

Please post back with more details:

List your relevant tables and fields.

It is of particular interest how you "assign each subset a unique
SubjectID and pass the tracking utility a list of the subjects
selected by the user".

Exactly what information is returned to you? How is it derived? Do
you have any control over it? What relevant configuration options do
you have in the other program (I really don't want to get too much
into analyzing that other program but put in everything you think is
relevant).

By the way, have you contacted the manufacturers of that other program
(give us its name) of the grief its limitations cause you. Maybe they
have some sort of "modal" switch you can pass it. If they put a
disclaimer in their product literature about this issue you are SOL
there.

Your solution may lie in the data you put together to send in order to
generate the correct results. If your schema is already correct it's
unlikely to involve altering the schema.

HTH
--
-Larry-
--

"LurfysMa" <in*****@invalid.invalidwrote in message
news:vd********************************@4ax.com...
I could use some help with a table design problem.

I have an electronic flashcard program. Actually, several of them.
They each rely on a utility program to keep track of the usage
statistics. After each practice session, the utility program tells
the
flashcard program which items were learned and whihc need more
practice.

The drill stats are trracked by 3 indices: user, subject, and item.

For example, one of the subjects is the US States, which has
"categories" (subsets) for state capitals, date of admission to the
union, land area, etc. These subsets are orthogonal. That is, each
item is in exactly one subset.

Another subject is vocabulary words. The words are grouped according
to the test the user is studying for: SAT, GRE, GED, LSAT, etc.
These
subsets are NOT orthogonal. Most of the words in the GRE subset are
also in the SAT subset.

The subjects with orthogonal subsets are no problem. I just assign
each subset a unique SubjectID and pass the tracking utility a list
of
the subjects selected by the user.

The vocabulary subject, with its non-orthogonal subsets has me
stumped.

1. I cannot make eash subset into a subject and assign a unique
SubjectID because the utility program will track the same work in
more
than onie place, which will screw up the statistics.

2. I cannot make them all part of the larger group because them the
utility program will not be able to tell them apart. If the user
logs
on and asks to study the GRE set, having previously studied the GED
set, when the utility program reports back on which words need
study,
it will get them from both groups.

I think I need to make the orthogonal subsets into subjects with
unique SubjectIDs, but call the non-orthogonal subsets something
else
(logical subjects) and assign them a unique ID in a different
address
space. When I report the results, I use the SubjectID. When I ask
for
items that need to be redrilled, I use the other ID field.

Comments or suggestions?

Thanks

--
Running MS Office 2000 Pro on Win2000

Sep 19 '06 #3
On Tue, 19 Sep 2006 16:14:02 -0700, "Larry Daugherty"
<La********************@verizon.netwrote:
>To my Access centric thinking, your schema sounds correct. Assuming
that the other program is cast in concrete, you have to find a way to
get information to the other program in such a was that it will
interpret it and respond to with information you can correctly
interpret.

Please post back with more details:

List your relevant tables and fields.
I don't have the tables worked out just yet. I'll work on it and post
them.
>It is of particular interest how you "assign each subset a unique
SubjectID and pass the tracking utility a list of the subjects
selected by the user".
There are two databases: (1) the subjects database that has all of the
study material. (2) the tracking database used by the tracking
utility. In the subjects database, there is a master subjects table
with an autonum primary key. That's the unique subjectid. That id (or
list of ids) is passed to the tracking utility.
>Exactly what information is returned to you?
The tracking utility returns a list of the items that need to be
redrilled.
>How is it derived?
Simple statistics: number of tries, number right.
>Do you have any control over it?
Yes, I wrote it. I have total control.
>What relevant configuration options do
you have in the other program (I really don't want to get too much
into analyzing that other program but put in everything you think is
relevant).
I can change the tracking utility any way I want, but the interface it
the way I want it to be for other reasons.
>By the way, have you contacted the manufacturers of that other program
(give us its name) of the grief its limitations cause you. Maybe they
have some sort of "modal" switch you can pass it. If they put a
disclaimer in their product literature about this issue you are SOL
there.

Your solution may lie in the data you put together to send in order to
generate the correct results. If your schema is already correct it's
unlikely to involve altering the schema.

HTH
--
-Larry-

--
Running MS Office 2000 Pro on Win2000
Sep 20 '06 #4

You need to be able to pass another term for the subsets you are
trying to isolate and the Utility side needs to receive it and may
need to respond with sufficient identifiers that the item report is
unambiguous. Those SAT, GRE, etc. subsets represent a very real part
of the hierarchy of your data.

The long and the short of it is that you need to be able to pass a
term for each level of the hierarchy on the sending side that you
intend to track. The receiving side needs to be able to handle them
all and to respond in kind or at least in a way that is unambiguous to
the database you are creating.

All the rest is the details of getting it done. Implicitly, the bits
of the solution lie on each side of the current interface. I don't
know your complete application nor your reasons for wanting to leave
the existing interface alone.

Please post back with what you decide. If it's a long time in the
future, decode my email address and drop me a line. I am interested.
As I write this I should be busy instead working on a Test Generator
application for my daughter.

HTH
--

--
-Larry-
--

"LurfysMa" <in*****@invalid.invalidwrote in message
news:49********************************@4ax.com...
On Tue, 19 Sep 2006 16:14:02 -0700, "Larry Daugherty"
<La********************@verizon.netwrote:
To my Access centric thinking, your schema sounds correct.
Assuming
that the other program is cast in concrete, you have to find a way
to
get information to the other program in such a was that it will
interpret it and respond to with information you can correctly
interpret.

Please post back with more details:

List your relevant tables and fields.

I don't have the tables worked out just yet. I'll work on it and
post
them.
It is of particular interest how you "assign each subset a unique
SubjectID and pass the tracking utility a list of the subjects
selected by the user".

There are two databases: (1) the subjects database that has all of
the
study material. (2) the tracking database used by the tracking
utility. In the subjects database, there is a master subjects table
with an autonum primary key. That's the unique subjectid. That id
(or
list of ids) is passed to the tracking utility.
Exactly what information is returned to you?

The tracking utility returns a list of the items that need to be
redrilled.
How is it derived?

Simple statistics: number of tries, number right.
Do you have any control over it?

Yes, I wrote it. I have total control.
What relevant configuration options do
you have in the other program (I really don't want to get too much
into analyzing that other program but put in everything you think
is
relevant).

I can change the tracking utility any way I want, but the interface
it
the way I want it to be for other reasons.
By the way, have you contacted the manufacturers of that other
program
(give us its name) of the grief its limitations cause you. Maybe
they
have some sort of "modal" switch you can pass it. If they put a
disclaimer in their product literature about this issue you are SOL
there.

Your solution may lie in the data you put together to send in order
to
generate the correct results. If your schema is already correct
it's
unlikely to involve altering the schema.

HTH
--
-Larry-


--
Running MS Office 2000 Pro on Win2000

Sep 20 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
by: Bruce W...1 | last post by:
I've been learning about PHP for a couple of weeks. With includes, PHP scripts, and HTML I can see where a large and complex website could easily turn in to a big hairy mess with files all over...
3
by: _andrea | last post by:
I'd like to write a web-application with other people. It is the first time I write code together other person. I'd like to ask you some advices: 1)have an advice? 2)wich program to use for VCS...
8
by: Andy | last post by:
Hi, all I am trying to design a parser for C program using C++. Currently what I did for syntax tree is to design a class for each nontermials in the grammar, and use inherentance to link them....
4
by: cirano | last post by:
Here is an example http://free.prohosting.com/iskrica/ Originally, this page is close to 1.5Mb but it was compressed with javascript. Any idea how to make it smaller (some automatic chunking...
10
by: TokiDoki | last post by:
Hello there, I have been programming python for a little while, now. But as I am beginning to do more complex stuff, I am running into small organization problems. It is possible that what I...
1
by: Rudderius | last post by:
Hey, I'm working on a winform app in VS 2005. I'm wondering if someone knows some best practices on how to organize the toolstrips. I have a menuToolStrip and some other toolstrips. As in many...
1
by: ASP Developer | last post by:
I have a user control with exposed properties. I have about 100 properties. I would like to organize them so they are easier for other programmers to peruse. Is it possible to organize the misc...
6
by: Larry Bud | last post by:
Been working with .net 2 since January, and am in the middle of my first large project. It's becoming obvious that one must organize their code well in a large project to make maintenance...
1
by: Thomas Wittek | last post by:
Hi! Is there any possibility/tool to automatically organize the imports at the beginning of a module? I don't mean automatic imports like autoimp does as I like seeing where my...
29
by: pereges | last post by:
By main file, I mean the one which contains the main routine. Can some one please provide suggestions as to how I can improve the organization of main file ? I have just though about a rough...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.