* Do xml-like namespaces make sense for Reiser4? (re: metas thread) @ 2004-04-12 15:45 John D. Heintz 2004-04-12 16:00 ` Hubert Chan 2004-04-12 18:15 ` Hans Reiser 0 siblings, 2 replies; 26+ messages in thread From: John D. Heintz @ 2004-04-12 15:45 UTC (permalink / raw) To: reiserfs-list Hi all, I work with XML quite a lot in my job and deal with XML namespaces often. While I think they have some problems in the XML world (poor integration with XML InfoSet) they might be useful for Reiser4 and they seem to play well with the Set Theoretic underlying models (as far as I can tell :). Here's what I'm thinking: Instead of `cat foo.txt/metas/uid` it would be `cat foo.txt/reiser4:metas/uid` or perhaps `cat foo.txt/reiser4:uid`. Here the "reiser4" shorthand would map to "http://www.namesys.com/v4" or whatever Hans and team decided. The reiser4 namespace could be hardcoded or compiled in and exposed via `cat /proc/fs/reiser4/namespace`. Other namespaces could be added to files/directories and I'd assume something like: `cat foo.txt/reiser4:namespaces` would list all the namespaces available for a particular file. Something like: reiser4 http://www.namesys.com/v4 streams http://www.evil-empire.com/streams snapcm http://www.snapcm.com/snapcm John D. Heintz ps - SnapCM is the name of a versioned linking model that I developed some time ago and hope one day to build a plugin for Reiser4. I'm being optimistic listing it in the available namespaces. ;-) ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 15:45 Do xml-like namespaces make sense for Reiser4? (re: metas thread) John D. Heintz @ 2004-04-12 16:00 ` Hubert Chan 2004-04-12 19:21 ` John D. Heintz 2004-04-12 18:15 ` Hans Reiser 1 sibling, 1 reply; 26+ messages in thread From: Hubert Chan @ 2004-04-12 16:00 UTC (permalink / raw) To: reiserfs-list XML namespaces seems like overkill to me, but I'll let someone more qualified say something more intelligent. I just have one other comment. >>>>> "John" == John D Heintz <jheintz@pobox.com> writes: [...] John> Other namespaces could be added to files/directories and I'd John> assume something like: `cat foo.txt/reiser4:namespaces` would list John> all the namespaces available for a particular file. Something John> like: John> reiser4 http://www.namesys.com/v4 John> streams http://www.evil-empire.com/streams John> snapcm http://www.snapcm.com/snapcm It's probably better to do: # ls foo.txt/reiser4:namespaces reiser4 streams snapcm # cat foo.txt/reiser4:namespaces/reiser4 http://www.namespaces.com/v4 -- Hubert Chan <hubert@uhoreg.ca> - http://www.uhoreg.ca/ PGP/GnuPG key: 1024D/124B61FA Fingerprint: 96C5 012F 5F74 A5F7 1FF7 5291 AF29 C719 124B 61FA Key available at wwwkeys.pgp.net. Encrypted e-mail preferred. ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 16:00 ` Hubert Chan @ 2004-04-12 19:21 ` John D. Heintz 2004-04-12 21:28 ` Hubert Chan 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-12 19:21 UTC (permalink / raw) To: Hubert Chan; +Cc: reiserfs-list Hi Hubert, Hubert, I agree with you, but I don't think our suggestions are exclusive. An "ls" can return the contents of the directory as you suggested and a "cat" could return tab and newline separated content. I'm using the ReiserFS /etc/passwd example as a template. What you suggested would be a good first step, I was just trying to intuitively make my point. Thanks, John Hubert Chan wrote: >XML namespaces seems like overkill to me, but I'll let someone more >qualified say something more intelligent. I just have one other >comment. > > > >>>>>>"John" == John D Heintz <jheintz@pobox.com> writes: >>>>>> >>>>>> > >[...] > >John> Other namespaces could be added to files/directories and I'd >John> assume something like: `cat foo.txt/reiser4:namespaces` would list >John> all the namespaces available for a particular file. Something >John> like: >John> reiser4 http://www.namesys.com/v4 >John> streams http://www.evil-empire.com/streams >John> snapcm http://www.snapcm.com/snapcm > >It's probably better to do: > ># ls foo.txt/reiser4:namespaces >reiser4 >streams >snapcm ># cat foo.txt/reiser4:namespaces/reiser4 >http://www.namespaces.com/v4 > > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 19:21 ` John D. Heintz @ 2004-04-12 21:28 ` Hubert Chan 0 siblings, 0 replies; 26+ messages in thread From: Hubert Chan @ 2004-04-12 21:28 UTC (permalink / raw) To: reiserfs-list >>>>> "John" == John D Heintz <jheintz@pobox.com> writes: John> Hi Hubert, Hubert, John> I agree with you, but I don't think our suggestions are exclusive. John> An "ls" can return the contents of the directory as you suggested John> and a "cat" could return tab and newline separated content. I'm John> using the ReiserFS /etc/passwd example as a template. Sigh. Thanks for reminding me of that. I guess it's still too easy to get caught up in the old filesystem paradigms, even when you're talking about the cool new features of Reiser4. (Ha! Just imagine how much trouble the regular users are going to have, if us uber-hackers can't get it straight. ;-) ) -- Hubert Chan <hubert@uhoreg.ca> - http://www.uhoreg.ca/ PGP/GnuPG key: 1024D/124B61FA Fingerprint: 96C5 012F 5F74 A5F7 1FF7 5291 AF29 C719 124B 61FA Key available at wwwkeys.pgp.net. Encrypted e-mail preferred. ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 15:45 Do xml-like namespaces make sense for Reiser4? (re: metas thread) John D. Heintz 2004-04-12 16:00 ` Hubert Chan @ 2004-04-12 18:15 ` Hans Reiser 2004-04-12 18:59 ` Hubert Chan 2004-04-12 19:12 ` John D. Heintz 1 sibling, 2 replies; 26+ messages in thread From: Hans Reiser @ 2004-04-12 18:15 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list Mhy colon instead of / ? There is no reason for it. Implementing a storage layer to make XML storage more efficient might be commercially interesting, but XML is not what we should copy for namespace style. Hans John D. Heintz wrote: > Hi all, > > I work with XML quite a lot in my job and deal with XML namespaces > often. While I think they have some problems in the XML world (poor > integration with XML InfoSet) they might be useful for Reiser4 and > they seem to play well with the Set Theoretic underlying models (as > far as I can tell :). > > Here's what I'm thinking: > Instead of `cat foo.txt/metas/uid` > it would be `cat foo.txt/reiser4:metas/uid` or perhaps `cat > foo.txt/reiser4:uid`. > > Here the "reiser4" shorthand would map to "http://www.namesys.com/v4" > or whatever Hans and team decided. > > The reiser4 namespace could be hardcoded or compiled in and exposed > via `cat /proc/fs/reiser4/namespace`. > > Other namespaces could be added to files/directories and I'd assume > something like: > `cat foo.txt/reiser4:namespaces` would list all the namespaces > available for a particular file. > Something like: > reiser4 http://www.namesys.com/v4 > streams http://www.evil-empire.com/streams > snapcm http://www.snapcm.com/snapcm > > John D. Heintz > > ps - SnapCM is the name of a versioned linking model that I developed > some time ago and hope one day to build a plugin for Reiser4. I'm > being optimistic listing it in the available namespaces. ;-) > > -- Hans ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 18:15 ` Hans Reiser @ 2004-04-12 18:59 ` Hubert Chan 2004-04-12 19:12 ` John D. Heintz 1 sibling, 0 replies; 26+ messages in thread From: Hubert Chan @ 2004-04-12 18:59 UTC (permalink / raw) To: reiserfs-list >>>>> "Hans" == Hans Reiser <reiser@namesys.com> writes: Hans> Mhy colon instead of / ? There is no reason for it. Implementing Hans> a storage layer to make XML storage more efficient might be Hans> commercially interesting, but XML is not what we should copy for Hans> namespace style. Interestingly enough, for a course that I'm taking, I have to write a research proposal, and that's the topic I've chosen, more or less. Basically, I'm proposing to export a filesystem interface to XML, so that you can do XML querying straight through the filesystem. I'll post the proposal to the list after I'm done. Whether or not actual research will come out of that proposal is a different question. (I'd like to pursue it further, but it's out of my current research area, so I would have to switch areas, or figure out how to mutate it to look like an algorithms topic.) -- Hubert Chan <hubert@uhoreg.ca> - http://www.uhoreg.ca/ PGP/GnuPG key: 1024D/124B61FA Fingerprint: 96C5 012F 5F74 A5F7 1FF7 5291 AF29 C719 124B 61FA Key available at wwwkeys.pgp.net. Encrypted e-mail preferred. ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 18:15 ` Hans Reiser 2004-04-12 18:59 ` Hubert Chan @ 2004-04-12 19:12 ` John D. Heintz 2004-04-13 14:40 ` John D. Heintz 1 sibling, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-12 19:12 UTC (permalink / raw) To: Hans Reiser; +Cc: reiserfs-list Ah, I didn't do a good job of explaining the key benefit that I see in something like this. "foo.txt/reiser4:uid" is syntactic magic for "foo.txt/www.namesys.com/meta/uid" when "reiser:" means "www.namesys.com/meta/uid" and ignoring URI prefix. To me this is all about 1) a correct mechanism to both unify namespaces 2) _and_ avoid name conflicts 3) _and_ keep nice short file paths. The chance that somebody else is going to name a file "meta" or "metas" is really high, the chance that someone will name a file "www.namesys.com/meta" is really low. But I don't want to type that in all the time. I've drank the cool-aid about unified namespaces, but I feel that naming conflicts is still way too big a problem to just say "it's not a big deal" over. Thanks, John Hans Reiser wrote: > Mhy colon instead of / ? > > There is no reason for it. Implementing a storage layer to make XML > storage more efficient might be commercially interesting, but XML is > not what we should copy for namespace style. > > Hans > > John D. Heintz wrote: > >> Hi all, >> >> I work with XML quite a lot in my job and deal with XML namespaces >> often. While I think they have some problems in the XML world (poor >> integration with XML InfoSet) they might be useful for Reiser4 and >> they seem to play well with the Set Theoretic underlying models (as >> far as I can tell :). >> >> Here's what I'm thinking: >> Instead of `cat foo.txt/metas/uid` >> it would be `cat foo.txt/reiser4:metas/uid` or perhaps `cat >> foo.txt/reiser4:uid`. >> >> Here the "reiser4" shorthand would map to "http://www.namesys.com/v4" >> or whatever Hans and team decided. >> >> The reiser4 namespace could be hardcoded or compiled in and exposed >> via `cat /proc/fs/reiser4/namespace`. >> >> Other namespaces could be added to files/directories and I'd assume >> something like: >> `cat foo.txt/reiser4:namespaces` would list all the namespaces >> available for a particular file. >> Something like: >> reiser4 http://www.namesys.com/v4 >> streams http://www.evil-empire.com/streams >> snapcm http://www.snapcm.com/snapcm >> >> John D. Heintz >> >> ps - SnapCM is the name of a versioned linking model that I developed >> some time ago and hope one day to build a plugin for Reiser4. I'm >> being optimistic listing it in the available namespaces. ;-) >> >> > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-12 19:12 ` John D. Heintz @ 2004-04-13 14:40 ` John D. Heintz 2004-04-13 16:31 ` Hans Reiser 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-13 14:40 UTC (permalink / raw) To: John D. Heintz; +Cc: Hans Reiser, reiserfs-list Hans, If I understand the naming system primitives correctly then the ":" introduces a new sequence operator and does evil things to closure, right? Let's use an example that is likely to conflict: Security plugins introducing a name "permissions" to objects. Here is my list of how to expose this: 1) foo.txt/permissions * likely to conflict with end-user names and other security provider names 2) foo.txt/white-hat-permissions * verbose, but negligible risk of conflicts 3) foo.txt/white-hat-security/permissions * nested namespace to provide isolation 4) foo.txt/<wh-sec>permissions * syntax implying substitution before name resolution * could be some other syntax like foo.txt/wh-sec:permissions I don't like 1) or 2), and I also don't see much real difference between 3) and 4). I'm guessing that the syntax of 4) is problem: like the ":" is introduces new sequencial operations. I'm viewing it as just a syntactic shorthand with a clear translation to the actual name. Thanks, John John D. Heintz wrote: > Ah, I didn't do a good job of explaining the key benefit that I see in > something like this. > > "foo.txt/reiser4:uid" > is syntactic magic for > "foo.txt/www.namesys.com/meta/uid" > > when "reiser:" means "www.namesys.com/meta/uid" and ignoring URI prefix. > > To me this is all about > 1) a correct mechanism to both unify namespaces > 2) _and_ avoid name conflicts > 3) _and_ keep nice short file paths. > > The chance that somebody else is going to name a file "meta" or > "metas" is really high, the chance that someone will name a file > "www.namesys.com/meta" is really low. But I don't want to type that in > all the time. > > I've drank the cool-aid about unified namespaces, but I feel that > naming conflicts is still way too big a problem to just say "it's not > a big deal" over. > > Thanks, > John > > Hans Reiser wrote: > >> Mhy colon instead of / ? >> >> There is no reason for it. Implementing a storage layer to make XML >> storage more efficient might be commercially interesting, but XML is >> not what we should copy for namespace style. >> >> Hans >> >> John D. Heintz wrote: >> >>> Hi all, >>> >>> I work with XML quite a lot in my job and deal with XML namespaces >>> often. While I think they have some problems in the XML world (poor >>> integration with XML InfoSet) they might be useful for Reiser4 and >>> they seem to play well with the Set Theoretic underlying models (as >>> far as I can tell :). >>> >>> Here's what I'm thinking: >>> Instead of `cat foo.txt/metas/uid` >>> it would be `cat foo.txt/reiser4:metas/uid` or perhaps `cat >>> foo.txt/reiser4:uid`. >>> >>> Here the "reiser4" shorthand would map to >>> "http://www.namesys.com/v4" or whatever Hans and team decided. >>> >>> The reiser4 namespace could be hardcoded or compiled in and exposed >>> via `cat /proc/fs/reiser4/namespace`. >>> >>> Other namespaces could be added to files/directories and I'd assume >>> something like: >>> `cat foo.txt/reiser4:namespaces` would list all the namespaces >>> available for a particular file. >>> Something like: >>> reiser4 http://www.namesys.com/v4 >>> streams http://www.evil-empire.com/streams >>> snapcm http://www.snapcm.com/snapcm >>> >>> John D. Heintz >>> >>> ps - SnapCM is the name of a versioned linking model that I >>> developed some time ago and hope one day to build a plugin for >>> Reiser4. I'm being optimistic listing it in the available >>> namespaces. ;-) >>> >>> >> >> > > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 14:40 ` John D. Heintz @ 2004-04-13 16:31 ` Hans Reiser 2004-04-13 16:57 ` John D. Heintz 0 siblings, 1 reply; 26+ messages in thread From: Hans Reiser @ 2004-04-13 16:31 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list John D. Heintz wrote: > > Hans, > > If I understand the naming system primitives correctly then the ":" > introduces a new sequence operator and does evil things to closure, > right? > > Let's use an example that is likely to conflict: Security plugins > introducing a name "permissions" to objects. > > Here is my list of how to expose this: > 1) foo.txt/permissions > * likely to conflict with end-user names and other security provider > names this would be foo/metas/permissions/owner, does that resolve the problem in your eyes? > 2) foo.txt/white-hat-permissions > * verbose, but negligible risk of conflicts > 3) foo.txt/white-hat-security/permissions > * nested namespace to provide isolation > 4) foo.txt/<wh-sec>permissions > * syntax implying substitution before name resolution > * could be some other syntax like foo.txt/wh-sec:permissions > > I don't like 1) or 2), and I also don't see much real difference > between 3) and 4). > > I'm guessing that the syntax of 4) is problem: like the ":" is > introduces new sequencial operations. I'm viewing it as just a > syntactic shorthand with a clear translation to the actual name. > > Thanks, > John > > > John D. Heintz wrote: > >> Ah, I didn't do a good job of explaining the key benefit that I see >> in something like this. >> >> "foo.txt/reiser4:uid" >> is syntactic magic for >> "foo.txt/www.namesys.com/meta/uid" >> >> when "reiser:" means "www.namesys.com/meta/uid" and ignoring URI prefix. >> >> To me this is all about >> 1) a correct mechanism to both unify namespaces >> 2) _and_ avoid name conflicts >> 3) _and_ keep nice short file paths. >> >> The chance that somebody else is going to name a file "meta" or >> "metas" is really high, the chance that someone will name a file >> "www.namesys.com/meta" is really low. But I don't want to type that >> in all the time. >> >> I've drank the cool-aid about unified namespaces, but I feel that >> naming conflicts is still way too big a problem to just say "it's not >> a big deal" over. >> >> Thanks, >> John >> >> Hans Reiser wrote: >> >>> Mhy colon instead of / ? >>> >>> There is no reason for it. Implementing a storage layer to make XML >>> storage more efficient might be commercially interesting, but XML is >>> not what we should copy for namespace style. >>> >>> Hans >>> >>> John D. Heintz wrote: >>> >>>> Hi all, >>>> >>>> I work with XML quite a lot in my job and deal with XML namespaces >>>> often. While I think they have some problems in the XML world (poor >>>> integration with XML InfoSet) they might be useful for Reiser4 and >>>> they seem to play well with the Set Theoretic underlying models (as >>>> far as I can tell :). >>>> >>>> Here's what I'm thinking: >>>> Instead of `cat foo.txt/metas/uid` >>>> it would be `cat foo.txt/reiser4:metas/uid` or perhaps `cat >>>> foo.txt/reiser4:uid`. >>>> >>>> Here the "reiser4" shorthand would map to >>>> "http://www.namesys.com/v4" or whatever Hans and team decided. >>>> >>>> The reiser4 namespace could be hardcoded or compiled in and >>>> exposed via `cat /proc/fs/reiser4/namespace`. >>>> >>>> Other namespaces could be added to files/directories and I'd assume >>>> something like: >>>> `cat foo.txt/reiser4:namespaces` would list all the namespaces >>>> available for a particular file. >>>> Something like: >>>> reiser4 http://www.namesys.com/v4 >>>> streams http://www.evil-empire.com/streams >>>> snapcm http://www.snapcm.com/snapcm >>>> >>>> John D. Heintz >>>> >>>> ps - SnapCM is the name of a versioned linking model that I >>>> developed some time ago and hope one day to build a plugin for >>>> Reiser4. I'm being optimistic listing it in the available >>>> namespaces. ;-) >>>> >>>> >>> >>> >> >> >> > > > > -- Hans ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 16:31 ` Hans Reiser @ 2004-04-13 16:57 ` John D. Heintz 2004-04-13 17:06 ` Grant Miner 2004-04-13 17:47 ` Hans Reiser 0 siblings, 2 replies; 26+ messages in thread From: John D. Heintz @ 2004-04-13 16:57 UTC (permalink / raw) To: Hans Reiser; +Cc: reiserfs-list Hans Reiser wrote: > John D. Heintz wrote: > >> >> Hans, >> >> If I understand the naming system primitives correctly then the ":" >> introduces a new sequence operator and does evil things to closure, >> right? >> >> Let's use an example that is likely to conflict: Security plugins >> introducing a name "permissions" to objects. >> >> Here is my list of how to expose this: >> 1) foo.txt/permissions >> * likely to conflict with end-user names and other security provider >> names > > > this would be foo/metas/permissions/owner, does that resolve the > problem in your eyes? > Let me verify something: You are suggesting that the "metas" namespace be the entry point for all of the plugin namespaces? I had assumed that each plugin would create it's own. That does certainly reduce the scope of my problem. I'm not sure it removes the problem though, it just pushes the bottleneck one level away. That is still a good thing: it removes those conflicts from user created names, but not from plugin suppliers. What if two suppliers of security plugins wanted to expose "permissions"? I'm thinking of the GNOME or KDE file managers growing a GUI permisions dialog to edit the structure of data/information in the permissions namespace. If # cat foo/meta/permissions # WhiteHat open source LDAP security plugin owner jheintz grant some stuff... .... then user applications (like GUI filemanagers) will start depending on that. (Or the sub-structure exposed as further names...) Do you not think this will cause problems when # cat foo/meta/permissions # NSA Cryptographic security plugin authority The Office of John Heintz status confidential grant some stuff... .... If I didn't mind typing really long names I'd say the following is absolutely correct and gives no worry about naming conflict: cat foo/metas/nsa.gov/permissions cat foo/metas/whitehat.com/permissions (But then again I'd say the following does as well: cat foo/nsa.gov/permissions cat foo/whitehat.com/permissions) I just don't want to type more than I have to. Thanks for the replies, John Heintz >> 2) foo.txt/white-hat-permissions >> * verbose, but negligible risk of conflicts >> 3) foo.txt/white-hat-security/permissions >> * nested namespace to provide isolation >> 4) foo.txt/<wh-sec>permissions >> * syntax implying substitution before name resolution >> * could be some other syntax like foo.txt/wh-sec:permissions >> >> I don't like 1) or 2), and I also don't see much real difference >> between 3) and 4). >> >> I'm guessing that the syntax of 4) is problem: like the ":" is >> introduces new sequencial operations. I'm viewing it as just a >> syntactic shorthand with a clear translation to the actual name. >> >> Thanks, >> John >> >> ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 16:57 ` John D. Heintz @ 2004-04-13 17:06 ` Grant Miner 2004-04-13 18:09 ` John D. Heintz 2004-04-13 17:47 ` Hans Reiser 1 sibling, 1 reply; 26+ messages in thread From: Grant Miner @ 2004-04-13 17:06 UTC (permalink / raw) To: reiserfs-list John D. Heintz wrote: > Hans Reiser wrote: > >> John D. Heintz wrote: >> >>> >>> Hans, >>> >>> If I understand the naming system primitives correctly then the ":" >>> introduces a new sequence operator and does evil things to closure, >>> right? >>> >>> Let's use an example that is likely to conflict: Security plugins >>> introducing a name "permissions" to objects. >>> >>> Here is my list of how to expose this: >>> 1) foo.txt/permissions >>> * likely to conflict with end-user names and other security provider >>> names >> >> >> >> this would be foo/metas/permissions/owner, does that resolve the >> problem in your eyes? >> > > Let me verify something: You are suggesting that the "metas" namespace > be the entry point for all of the plugin namespaces? I had assumed that > each plugin would create it's own. That does certainly reduce the scope > of my problem. > > I'm not sure it removes the problem though, it just pushes the > bottleneck one level away. That is still a good thing: it removes those > conflicts from user created names, but not from plugin suppliers. > > What if two suppliers of security plugins wanted to expose > "permissions"? I'm thinking of the GNOME or KDE file managers growing a > GUI permisions dialog to edit the structure of data/information in the > permissions namespace. > > If > # cat foo/meta/permissions > # WhiteHat open source LDAP security plugin > owner jheintz > grant some stuff... > .... > > then user applications (like GUI filemanagers) will start depending on > that. (Or the sub-structure exposed as further names...) Do you not > think this will cause problems when > # cat foo/meta/permissions > # NSA Cryptographic security plugin > authority The Office of John Heintz > status confidential > grant some stuff... > .... > > If I didn't mind typing really long names I'd say the following is > absolutely correct and gives no worry about naming conflict: > cat foo/metas/nsa.gov/permissions > cat foo/metas/whitehat.com/permissions > > (But then again I'd say the following does as well: > cat foo/nsa.gov/permissions > cat foo/whitehat.com/permissions) > > I just don't want to type more than I have to. Thanks for the replies, > John Heintz > > >>> 2) foo.txt/white-hat-permissions >>> * verbose, but negligible risk of conflicts >>> 3) foo.txt/white-hat-security/permissions >>> * nested namespace to provide isolation >>> 4) foo.txt/<wh-sec>permissions >>> * syntax implying substitution before name resolution >>> * could be some other syntax like foo.txt/wh-sec:permissions >>> >>> I don't like 1) or 2), and I also don't see much real difference >>> between 3) and 4). >>> >>> I'm guessing that the syntax of 4) is problem: like the ":" is >>> introduces new sequencial operations. I'm viewing it as just a >>> syntactic shorthand with a clear translation to the actual name. >>> >>> Thanks, >>> John >>> >>> > > Are you familiar with the extended attribute name space? An extended attribute name has the form of namespace.attribute, eg. user.mime-type, trusted.md5sum, or system.posix_acl_access. Currently the user, trusted, and system extended attribute classes are defined; more may be defined in the future. User attributes may be assigned to files and directories for storing arbitrary additional information such as the mime type, character set or encoding of a file. The access permissions for user attributes are defined by the file permission bits. Trusted attributes are visible and accessible only to processes that have the CAP_SYS_ADMIN capability (the super user usually has this capability). Attributes in this class are used to implement mechanisms in user space (i.e., outside the kernel) which keep information in extended attributes to which ordinary processes should not have access. System attributes are used by the kernel to store system objects such as Access Control Lists and Capabilities. Read and write access permissions to system attributes depend on the policy implemented for each system attribute implemented in the kernel. ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 17:06 ` Grant Miner @ 2004-04-13 18:09 ` John D. Heintz 2004-04-13 18:36 ` Grant Miner 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-13 18:09 UTC (permalink / raw) To: Grant Miner; +Cc: reiserfs-list Hi Grant, No, I'm not familiar with this. I was trying to frame my questions strictly in terms of Reiser4 naming constructs (the '/' operator only). Do the extended attributes show up as file system paths? Or is there a separate API to access them? If they show up as paths then I think they are very loosely like what I'm talking about: a shorthand syntax that by convention disabiguates similiar names. Thanks for the reference, I'll look into this when time permits. John Grant Miner wrote: > > Are you familiar with the extended attribute name space? An extended > attribute name has the form of namespace.attribute, eg. > user.mime-type, trusted.md5sum, or system.posix_acl_access. Currently > the user, trusted, and system extended attribute classes are defined; > more may be defined in the future. > > User attributes may be assigned to files and directories for > storing arbitrary additional information such as the mime type, > character set or encoding of a file. The access permissions for > user attributes are defined by the file permission bits. > > Trusted attributes are visible and accessible only to processes > that have the CAP_SYS_ADMIN capability (the super user usually has > this capability). Attributes in this class are used to implement > mechanisms in user space (i.e., outside the kernel) which keep > information in extended attributes to which ordinary processes should > not have access. > > System attributes are used by the kernel to store system objects such > as Access Control Lists and Capabilities. Read and write access > permissions to system attributes depend on the policy implemented for > each system attribute implemented in the kernel. > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 18:09 ` John D. Heintz @ 2004-04-13 18:36 ` Grant Miner 0 siblings, 0 replies; 26+ messages in thread From: Grant Miner @ 2004-04-13 18:36 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list John D. Heintz wrote: > Hi Grant, > > No, I'm not familiar with this. I was trying to frame my questions > strictly in terms of Reiser4 naming constructs (the '/' operator only). I only bring it up because extended attributes seem to have dealt with your mentioned problem, potential name conflicts, without trouble. They use a "." as name separator but it is immaterial. > > Do the extended attributes show up as file system paths? Or is there a > separate API to access them? If they show up as paths then I think they > are very loosely like what I'm talking about: a shorthand syntax that by > convention disabiguates similiar names. They are invisible through normal POSIX API. They have new system calls: getxattr, setxattr, listxattr, and removexattr which get, set list, and remove extended attributes. > > Thanks for the reference, I'll look into this when time permits. > > John > Thanks ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 16:57 ` John D. Heintz 2004-04-13 17:06 ` Grant Miner @ 2004-04-13 17:47 ` Hans Reiser 2004-04-13 18:23 ` John D. Heintz 1 sibling, 1 reply; 26+ messages in thread From: Hans Reiser @ 2004-04-13 17:47 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list John D. Heintz wrote: > Hans Reiser wrote: > >> John D. Heintz wrote: >> >>> >>> Hans, >>> >>> If I understand the naming system primitives correctly then the ":" >>> introduces a new sequence operator and does evil things to closure, >>> right? >>> >>> Let's use an example that is likely to conflict: Security plugins >>> introducing a name "permissions" to objects. >>> >>> Here is my list of how to expose this: >>> 1) foo.txt/permissions >>> * likely to conflict with end-user names and other security provider >>> names >> >> >> >> this would be foo/metas/permissions/owner, does that resolve the >> problem in your eyes? >> > > Let me verify something: You are suggesting that the "metas" namespace > be the entry point for all of the plugin namespaces? I had assumed > that each plugin would create it's own. That does certainly reduce the > scope of my problem. It can use metas, but what it does is up to it. metas is a style convention. > > I'm not sure it removes the problem though, it just pushes the > bottleneck one level away. That is still a good thing: it removes > those conflicts from user created names, but not from plugin suppliers. > > What if two suppliers of security plugins wanted to expose > "permissions"? I'm thinking of the GNOME or KDE file managers growing > a GUI permisions dialog to edit the structure of data/information in > the permissions namespace. > > If > # cat foo/meta/permissions > # WhiteHat open source LDAP security plugin > owner jheintz > grant some stuff... > .... > > then user applications (like GUI filemanagers) will start depending on > that. (Or the sub-structure exposed as further names...) Do you not > think this will cause problems when > # cat foo/meta/permissions > # NSA Cryptographic security plugin > authority The Office of John Heintz > status confidential > grant some stuff... > .... this is the beauty of there being an official maintainer for reiserfs to handle such issues;-) plugins are not created as easily as files;-), there will be few enough that I can manage the issue as it happens > > If I didn't mind typing really long names I'd say the following is > absolutely correct and gives no worry about naming conflict: > cat foo/metas/nsa.gov/permissions > cat foo/metas/whitehat.com/permissions > > (But then again I'd say the following does as well: > cat foo/nsa.gov/permissions > cat foo/whitehat.com/permissions) > > I just don't want to type more than I have to. Thanks for the replies, > John Heintz > > >>> 2) foo.txt/white-hat-permissions >>> * verbose, but negligible risk of conflicts >>> 3) foo.txt/white-hat-security/permissions >>> * nested namespace to provide isolation >>> 4) foo.txt/<wh-sec>permissions >>> * syntax implying substitution before name resolution >>> * could be some other syntax like foo.txt/wh-sec:permissions >>> >>> I don't like 1) or 2), and I also don't see much real difference >>> between 3) and 4). >>> >>> I'm guessing that the syntax of 4) is problem: like the ":" is >>> introduces new sequencial operations. I'm viewing it as just a >>> syntactic shorthand with a clear translation to the actual name. >>> >>> Thanks, >>> John >>> >>> > > > -- Hans ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 17:47 ` Hans Reiser @ 2004-04-13 18:23 ` John D. Heintz 2004-04-13 18:28 ` Hans Reiser 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-13 18:23 UTC (permalink / raw) To: Hans Reiser; +Cc: reiserfs-list Hans Reiser wrote: > John D. Heintz wrote: > >> Hans Reiser wrote: >> >> Let me verify something: You are suggesting that the "metas" >> namespace be the entry point for all of the plugin namespaces? I had >> assumed that each plugin would create it's own. That does certainly >> reduce the scope of my problem. > > > It can use metas, but what it does is up to it. metas is a style > convention. > Okay, that is what I thought originally. That still means that user defined names and plugin defined names can in general conflict though. > > this is the beauty of there being an official maintainer for reiserfs > to handle such issues;-) > I would have been much happier to hear some strategy would enable plugins names to disambiguate themselves from each other and user defined names. In practice you might be right that a few dozen plugins can be "officially" integrated without too much trouble. Also, this issue could be dealt with later as well - I don't think now is the only opportunity for addressing it. > plugins are not created as easily as files;-), there will be few > enough that I can manage the issue as it happens > Yes, in the short to medium term you are probably right that you can deal with these issues as they happen. I'd like there to be some better way of dealing with resolving conflicts from unified namespaces then always "ask Hans". Does some sort of syntactic shorthand actually break the set theoretic naming system rules? Or is this just something you view as needless complexity? Thanks for the replies, John Heintz ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 18:23 ` John D. Heintz @ 2004-04-13 18:28 ` Hans Reiser 2004-04-13 18:47 ` John D. Heintz 0 siblings, 1 reply; 26+ messages in thread From: Hans Reiser @ 2004-04-13 18:28 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list John D. Heintz wrote: > Hans Reiser wrote: > >> John D. Heintz wrote: >> >>> Hans Reiser wrote: >>> >>> Let me verify something: You are suggesting that the "metas" >>> namespace be the entry point for all of the plugin namespaces? I had >>> assumed that each plugin would create it's own. That does certainly >>> reduce the scope of my problem. >> >> >> >> It can use metas, but what it does is up to it. metas is a style >> convention. >> > Okay, that is what I thought originally. That still means that user > defined names and plugin defined names can in general conflict though. > >> >> this is the beauty of there being an official maintainer for reiserfs >> to handle such issues;-) >> > I would have been much happier to hear some strategy would enable > plugins names to disambiguate themselves from each other and user > defined names. In practice you might be right that a few dozen plugins > can be "officially" integrated without too much trouble. Also, this > issue could be dealt with later as well - I don't think now is the > only opportunity for addressing it. > >> plugins are not created as easily as files;-), there will be few >> enough that I can manage the issue as it happens >> > Yes, in the short to medium term you are probably right that you can > deal with these issues as they happen. I'd like there to be some > better way of dealing with resolving conflicts from unified namespaces > then always "ask Hans". > > Does some sort of syntactic shorthand actually break the set theoretic > naming system rules? Or is this just something you view as needless > complexity? precisely what syntactic shorthand? > > Thanks for the replies, > > John Heintz > > > -- Hans ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 18:28 ` Hans Reiser @ 2004-04-13 18:47 ` John D. Heintz 2004-04-13 20:31 ` Valdis.Kletnieks 2004-04-14 2:50 ` David Masover 0 siblings, 2 replies; 26+ messages in thread From: John D. Heintz @ 2004-04-13 18:47 UTC (permalink / raw) To: Hans Reiser; +Cc: reiserfs-list Hans Reiser wrote: > John D. Heintz wrote: > >> >> Does some sort of syntactic shorthand actually break the set >> theoretic naming system rules? Or is this just something you view as >> needless complexity? > > > precisely what syntactic shorthand? foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions This assumes a mapping from "nsa" -> "nsa.gov/security/". The characters up to the ':' would be looked up in a namespaces map, and if found the substituion would occur before further name-> object resolution. I don't think this breaks the goals set out in the "Future Vision" white paper, but I guess that is exactly what I am asking you ;-) John ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 18:47 ` John D. Heintz @ 2004-04-13 20:31 ` Valdis.Kletnieks 2004-04-14 2:18 ` Enrique Perez-Terron 2004-04-14 2:50 ` David Masover 1 sibling, 1 reply; 26+ messages in thread From: Valdis.Kletnieks @ 2004-04-13 20:31 UTC (permalink / raw) To: John D. Heintz; +Cc: Hans Reiser, reiserfs-list [-- Attachment #1: Type: text/plain, Size: 879 bytes --] On Tue, 13 Apr 2004 13:47:12 CDT, "John D. Heintz" said: > foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions > > This assumes a mapping from "nsa" -> "nsa.gov/security/". > > The characters up to the ':' would be looked up in a namespaces map, and > if found the substituion would occur before further name-> object > resolution. I don't think this breaks the goals set out in the "Future > Vision" white paper, but I guess that is exactly what I am asking you ;-) This needs to be done *very* carefully, as all sorts of ugliness can result from a user being able to muck about with the mappings. Anybody who's ever used a VMS system and fiddled with the values of the various SYS$WHATEVER values knows what I mean - and yes, there were security holes caused by software that made the rash assumption that the SYS$FOO variables weren't altered by the user..... [-- Attachment #2: Type: application/pgp-signature, Size: 226 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 20:31 ` Valdis.Kletnieks @ 2004-04-14 2:18 ` Enrique Perez-Terron 2004-04-14 15:06 ` John D. Heintz 0 siblings, 1 reply; 26+ messages in thread From: Enrique Perez-Terron @ 2004-04-14 2:18 UTC (permalink / raw) To: reiserfs-list On Tue, 2004-04-13 at 22:31, Valdis.Kletnieks@vt.edu wrote: > On Tue, 13 Apr 2004 13:47:12 CDT, "John D. Heintz" said: > > foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions > > > > This assumes a mapping from "nsa" -> "nsa.gov/security/". Implementing a mapping "nsa" -> "nsa.gov/security/" does not remove the headache of what to do with a tarball containing a directory named "nsa". While domain names are assigned in a process that guarantees uniqueness, subdirectories in software distributions are not naturally subject to the same constraints. This invalidates much of the theory in this thread of discussion. (Of course, the likelihood of anyone other than Hans & al actually using a directory name www.namesys.com is more than sufficiently remote to be a non-problem. Remember Murphy's law? I think the pseudodirectory name "metas" will bite us in our metas. (Recall, "meta" is a Greek word meaning "behind" or "after", right? Aristotle's Metaphysics got its name because it was the tome after Physics, Nature.) People with startup businesses look for sexy names for their pets, and names like MetaCity are sexy. When all names like InfoSoft, UniSoft, MicroSoft etc ad nauseam are used up, combinations with meta might become the next wave any time. Directories named metas are certain to show up often enough to be of concern. The very same reasons why filesystem people talk about file metadata, apply to other people as well. It is not hard to imagine a source code control system calling some of its files "metafiles" or something similar. Both Spanish and Portuguese have "metas" as commonly used words meaning goals. This is another source of conflicting file and directory names. Tar file makers will swear that people installing a file system that do not allow arbitrary a-z names of length <= eight, deserve all the problems they get. They will refuse to have to learn by heart all the non-portable names in this category. System administrators don't want to have complaints from users just because some names consisting of only a-z characters are reserved. Especially if one of the users is their boss. They don't care how seldom the problem actually arises. They will simplify matters to the rule: "Reiser4 is not a general-purpose file system, there are some files it cannot store." Linux distributors, system administrators and tar ball maintainers will read eachother's minds, and the distributors will recompile the kernel with some punctuation character in the reserved name. The major distributors will look at eachother and agree on the same name. Their choice will be a good one, provided they find reiser4 interesting for their users. They won't care about Hans' aesthetic senses. In the mean time, the xml namespace theoreticians are close to making a good point: Any software maintainer (other than Hans & al) creating tarballs with files or directories named reiser4 deserve bad luck. And their number is close enough to zero. On the other hand, end users that have never used Linux and who dislike punctuation characters, dislike '/' no less. They want to be able to put '/' into the file names, like "Spending proposal 2004/3Q". But they usually never see a shell, and navigate the file system by clicking on one folder at the time. They will never grep the metadata. They will only see the metadata in specially tailored dialogs. Regards, Enrique Pérez-Terrón ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-14 2:18 ` Enrique Perez-Terron @ 2004-04-14 15:06 ` John D. Heintz 2004-04-14 23:39 ` Enrique Perez-Terron 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-14 15:06 UTC (permalink / raw) To: Enrique Perez-Terron; +Cc: reiserfs-list Enrique, Enrique Perez-Terron wrote: > On Tue, 2004-04-13 at 22:31, Valdis.Kletnieks@vt.edu wrote: > >>On Tue, 13 Apr 2004 13:47:12 CDT, "John D. Heintz" said: >> >>>foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions >>> >>>This assumes a mapping from "nsa" -> "nsa.gov/security/". > > > Implementing a mapping "nsa" -> "nsa.gov/security/" does not remove the > headache of what to do with a tarball containing a directory named > "nsa". A directory or file named "nsa" doesn't conflict with this scheme, look more closely at the left hand side: foo/nsa:permissions foo/nsa/permissions wouldn't receive the same treatment and would instead just be a regular file or directory lookup. Two conditions are necessary to trigger the syntactic manipulation I'm suggesting: 1) a ':' must be present in the name being resolved (i.e. nsa:permissions) 2) The prefix before the ':' must be in the mappings (i.e. nsa) Only if both of those are present does anything special happen. A tarball containing "secure-linux/nsa/src/*.c" wouldn't break anything, and is so likely that no suggestion should risk breaking this case. However, a tarball containing "secure-linux/nsa:src/*.c" would indeed break my scheme. I'm suggesting this is an ignorably small likelyhood. Others are free to disagree with this of course. John Heintz ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-14 15:06 ` John D. Heintz @ 2004-04-14 23:39 ` Enrique Perez-Terron 0 siblings, 0 replies; 26+ messages in thread From: Enrique Perez-Terron @ 2004-04-14 23:39 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list On Wed, 2004-04-14 at 17:06, John D. Heintz wrote: > Enrique Perez-Terron wrote: > > On Tue, 2004-04-13 at 22:31, Valdis.Kletnieks@vt.edu wrote: > >>On Tue, 13 Apr 2004 13:47:12 CDT, "John D. Heintz" said: > >> > >>>foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions > >>> > >>>This assumes a mapping from "nsa" -> "nsa.gov/security/". > > > > > > Implementing a mapping "nsa" -> "nsa.gov/security/" does not remove the > > headache of what to do with a tarball containing a directory named > > "nsa". > > > A directory or file named "nsa" doesn't conflict with this scheme, look > more closely at the left hand side: foo/nsa:permissions You are right, thank you. > However, a tarball containing "secure-linux/nsa:src/*.c" would indeed > break my scheme. I'm suggesting this is an ignorably small likelyhood. > Others are free to disagree with this of course. I agree. Regards, Enrique ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-13 18:47 ` John D. Heintz 2004-04-13 20:31 ` Valdis.Kletnieks @ 2004-04-14 2:50 ` David Masover 2004-04-14 15:12 ` John D. Heintz 1 sibling, 1 reply; 26+ messages in thread From: David Masover @ 2004-04-14 2:50 UTC (permalink / raw) To: reiserfs-list -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 John D. Heintz wrote: | Hans Reiser wrote: | |> John D. Heintz wrote: |> |>> |>> Does some sort of syntactic shorthand actually break the set |>> theoretic naming system rules? Or is this just something you view as |>> needless complexity? |> |> |> |> precisely what syntactic shorthand? | | | | | foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions | | This assumes a mapping from "nsa" -> "nsa.gov/security/". | | The characters up to the ':' would be looked up in a namespaces map, and | if found the substituion would occur before further name-> object | resolution. I don't think this breaks the goals set out in the "Future | Vision" white paper, but I guess that is exactly what I am asking you ;-) Since we are allowed "views", how about this: make foo/nsa a symlink to foo/nsa.gov. Or, alternatively, make foo/nsa/permissions a symlink to foo/nsa.gov/secure-linux/permissions. These symlinks would only exist for either the process (and its children) which established them, or for all children of the file with that linkfarm, I'm not sure which. In the first example, you'd do something like this: ln -s /..some.pseudo.file/nsa.gov/secure-linux/permissions \ /..some.pseudo.file/nsa/permissions (hoping it handles directory creation here) The problem here is only children of 'ls' are affected, meaning shell scripts don't work unless shells are modified, which is why I like this better: ln -s foo/nsa.gov/secure-linux/permissions foo/nsa/permissions now we have foo/nsa/permissions -> foo/nsa.gov/secure-linux/permissions but now, if foo is a directory, we also have foo/bar/nsa/permissions -> foo/bar/nsa.gov/secure-linux/permissions The only thing here is, if foo is a directory, we probably want to hide the whole construct somehow anyway. I'll leave that to others -- I joined this discussion a little too late to _really_ know what I'm talking about. Either way, some sort of shortcut (and I'm suggesting symlinks to keep it Unix) controlled from user-space keeps the main advantage of XML namespaces -- you can have much more than just "nsa.gov/secure-linux", but any arbitrary length you want, and users handle the namespace collisions for you (that would result from creating something like foo/permissions) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iQIVAwUBQHynAHgHNmZLgCUhAQI+Aw/8Cb8ocN1T/M5SUGi8Qd/nqimmxnSpFryh QDOPTvlnqfco2kaQUagmhMAKS8xTqrGmQgIHJ/UZDAAW+fyhDgketYEd+KTiNZ5N Ccod3/Yk1JuW81UvSTcvcRwbqq71UVXbldo5URWZfRYi5diUhEriphtKDlDRSG7V 7Dicm2LwmhZq6je8wr/AZ0ywRBLjU+28oeSmiJXFe4xKxVftrH532RXg26e72aYZ c4f3zblv2+c6kDtGjf6XL0ABTM7RkD0MHCxEcq0FcXz0wp75cQtlL8n31eoiD7at SRLBeq2lp8h/lLxhcl67X+zQ/PgC4p/3ZrKLZ341beiHkL2rj4RjZFt9lf751Hfz xA3SSE7h6abg6VyJEilpvb9SNKTMGULC1MBXKwibHaDXgHo62pdMSrcz9Cw+ihaz zyENAUW0V3OWL5YSIPpl0BFy7XPnSuaE2Z3+N3Nej34fWmrh+HzHErRk0foqlmhu vmQ8Q4bbaakoe/uJDeMu2XTpoNChe7b6vxOwYxB9mxh4T2VOnli9YhpQm1ky7U1f BQTfIYok5+Az17O8tvlGC09DUfIslqLtpHVh9IyXOOfem6EEMIB/EJA3qv2us+IY si4M7TbeYVGaVLN+DACKL7gr5BKH0QWRRD+WFrn7Vig8IZSWrTGCEiTR8AWfpVR4 J8fcsxM53Cc= =XGmI -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-14 2:50 ` David Masover @ 2004-04-14 15:12 ` John D. Heintz 2004-04-15 0:28 ` David Masover 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-14 15:12 UTC (permalink / raw) To: David Masover; +Cc: reiserfs-list David, I think you might be onto something, but doing this manually for each file isn't viable (in my opinion). What I think might work is applying symlinks to all files hierarchically so that all "*/nsa/*" names resolve to "*/nsa.gov/security/*". Can you explain more how views would contribute to this? I've read the proposal but don't yet see how they would work in practice. Thanks for the reply. John David Masover wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > John D. Heintz wrote: > | Hans Reiser wrote: > | > |> John D. Heintz wrote: > |> > |>> > |>> Does some sort of syntactic shorthand actually break the set > |>> theoretic naming system rules? Or is this just something you view as > |>> needless complexity? > |> > |> > |> > |> precisely what syntactic shorthand? > | > | > | > | > | foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions > | > | This assumes a mapping from "nsa" -> "nsa.gov/security/". > | > | The characters up to the ':' would be looked up in a namespaces map, and > | if found the substituion would occur before further name-> object > | resolution. I don't think this breaks the goals set out in the "Future > | Vision" white paper, but I guess that is exactly what I am asking you ;-) > > Since we are allowed "views", how about this: make foo/nsa a symlink to > foo/nsa.gov. Or, alternatively, make foo/nsa/permissions a symlink to > foo/nsa.gov/secure-linux/permissions. These symlinks would only exist > for either the process (and its children) which established them, or for > all children of the file with that linkfarm, I'm not sure which. > > In the first example, you'd do something like this: > > ln -s /..some.pseudo.file/nsa.gov/secure-linux/permissions \ > /..some.pseudo.file/nsa/permissions > (hoping it handles directory creation here) > > The problem here is only children of 'ls' are affected, meaning shell > scripts don't work unless shells are modified, which is why I like this > better: > > ln -s foo/nsa.gov/secure-linux/permissions foo/nsa/permissions > > now we have > > foo/nsa/permissions -> foo/nsa.gov/secure-linux/permissions > > but now, if foo is a directory, we also have > > foo/bar/nsa/permissions -> foo/bar/nsa.gov/secure-linux/permissions > > The only thing here is, if foo is a directory, we probably want to hide > the whole construct somehow anyway. I'll leave that to others -- I > joined this discussion a little too late to _really_ know what I'm > talking about. > > Either way, some sort of shortcut (and I'm suggesting symlinks to keep > it Unix) controlled from user-space keeps the main advantage of XML > namespaces -- you can have much more than just "nsa.gov/secure-linux", > but any arbitrary length you want, and users handle the namespace > collisions for you (that would result from creating something like > foo/permissions) > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.4 (GNU/Linux) > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org > > iQIVAwUBQHynAHgHNmZLgCUhAQI+Aw/8Cb8ocN1T/M5SUGi8Qd/nqimmxnSpFryh > QDOPTvlnqfco2kaQUagmhMAKS8xTqrGmQgIHJ/UZDAAW+fyhDgketYEd+KTiNZ5N > Ccod3/Yk1JuW81UvSTcvcRwbqq71UVXbldo5URWZfRYi5diUhEriphtKDlDRSG7V > 7Dicm2LwmhZq6je8wr/AZ0ywRBLjU+28oeSmiJXFe4xKxVftrH532RXg26e72aYZ > c4f3zblv2+c6kDtGjf6XL0ABTM7RkD0MHCxEcq0FcXz0wp75cQtlL8n31eoiD7at > SRLBeq2lp8h/lLxhcl67X+zQ/PgC4p/3ZrKLZ341beiHkL2rj4RjZFt9lf751Hfz > xA3SSE7h6abg6VyJEilpvb9SNKTMGULC1MBXKwibHaDXgHo62pdMSrcz9Cw+ihaz > zyENAUW0V3OWL5YSIPpl0BFy7XPnSuaE2Z3+N3Nej34fWmrh+HzHErRk0foqlmhu > vmQ8Q4bbaakoe/uJDeMu2XTpoNChe7b6vxOwYxB9mxh4T2VOnli9YhpQm1ky7U1f > BQTfIYok5+Az17O8tvlGC09DUfIslqLtpHVh9IyXOOfem6EEMIB/EJA3qv2us+IY > si4M7TbeYVGaVLN+DACKL7gr5BKH0QWRRD+WFrn7Vig8IZSWrTGCEiTR8AWfpVR4 > J8fcsxM53Cc= > =XGmI > -----END PGP SIGNATURE----- > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-14 15:12 ` John D. Heintz @ 2004-04-15 0:28 ` David Masover 2004-04-15 15:15 ` John D. Heintz 0 siblings, 1 reply; 26+ messages in thread From: David Masover @ 2004-04-15 0:28 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 John D. Heintz wrote: | David, | | I think you might be onto something, but doing this manually for each | file isn't viable (in my opinion). It applies recursively. Let's assume for a moment that /..foo is a directory containing pseudo-files, metadata, or whatever the current term is, for the file '/'. By creating the file /..foo/something as a symlink to /..foo/<some long path>/something, you automatically create /bar/..foo/something, which is a link to /bar/..foo/<same long path>/something. | What I think might work is applying symlinks to all files hierarchically | so that all "*/nsa/*" names resolve to "*/nsa.gov/security/*". Just what I described above, only it is local to the tree I apply it to, and files deeper in the hierarchy take precedence. So, for example, if I create a link manually for /bar/..foo/something that points somewhere else, then /bar and all subdirs (and subfiles) of /bar contain that same link, instead of the one created for /. | Can you explain more how views would contribute to this? I've read the | proposal but don't yet see how they would work in practice. Views are an alternative proposal in which you create a mapping that looks, feels, and smells like the symlink idea proposed above, only it works for a single process. The advantage here is you avoid stepping on other people's toes, and it could be useful for programs. However, most users don't continue to use the same program every time to access the filesystem, and may want something persistant. I like the non-view solution best, but I think both are necessary -- the views are to prevent separate programs accessing similarly named plugins from stepping on each other's toes. Imagine we have nsa.gov and NoSlackingAcademy.com as two "namespaces", and two programs (or shell scripts) want to simultaneously abbreviate each one to "nsa", on the same file. However, the view solution is nice for when a user has some plugin, say from nsa.gov, that they use manually a lot ("echo 'bar' > baz/..foo/security") and on almost every file. It wouldn't affect any programs that used different concepts, because they would always create the links they needed first. I am not sure how views actually work under the hood, so I don't know how to implement it, but I would suggest that even when trying to make typing easier, we need to hide these shortcuts somewhere, because although it looks and acts like a symbolic link, this kind of shortcut behaves very differently. This '..metas' (among other suggestions) sounds like exactly the thing needed here -- symlinks created in there would be treated as namespace abbreviations and would be duplicated on all children that didn't already have such a link already. One more detail about "views" -- assuming we are using '..metas', on creating a view for this purpose, all symlinks in '..metas' should be removed, to avoid confusion. By now I'm sure I've abused several concepts before learning what they are. Time to go check the whitepaper for updates... | | Thanks for the reply. | | John | | | David Masover wrote: | | John D. Heintz wrote: | | Hans Reiser wrote: | | | |> John D. Heintz wrote: | |> | |>> | |>> Does some sort of syntactic shorthand actually break the set | |>> theoretic naming system rules? Or is this just something you view as | |>> needless complexity? | |> | |> | |> | |> precisely what syntactic shorthand? | | | | | | | | | | foo/nsa:permissions -> foo/nsa.gov/secure-linux/permissions | | | | This assumes a mapping from "nsa" -> "nsa.gov/security/". | | | | The characters up to the ':' would be looked up in a namespaces map, | and | | if found the substituion would occur before further name-> object | | resolution. I don't think this breaks the goals set out in the "Future | | Vision" white paper, but I guess that is exactly what I am asking | you ;-) | | Since we are allowed "views", how about this: make foo/nsa a symlink to | foo/nsa.gov. Or, alternatively, make foo/nsa/permissions a symlink to | foo/nsa.gov/secure-linux/permissions. These symlinks would only exist | for either the process (and its children) which established them, or for | all children of the file with that linkfarm, I'm not sure which. | | In the first example, you'd do something like this: | | ln -s /..some.pseudo.file/nsa.gov/secure-linux/permissions \ | /..some.pseudo.file/nsa/permissions | (hoping it handles directory creation here) | | The problem here is only children of 'ls' are affected, meaning shell | scripts don't work unless shells are modified, which is why I like this | better: | | ln -s foo/nsa.gov/secure-linux/permissions foo/nsa/permissions | | now we have | | foo/nsa/permissions -> foo/nsa.gov/secure-linux/permissions | | but now, if foo is a directory, we also have | | foo/bar/nsa/permissions -> foo/bar/nsa.gov/secure-linux/permissions | | The only thing here is, if foo is a directory, we probably want to hide | the whole construct somehow anyway. I'll leave that to others -- I | joined this discussion a little too late to _really_ know what I'm | talking about. | | Either way, some sort of shortcut (and I'm suggesting symlinks to keep | it Unix) controlled from user-space keeps the main advantage of XML | namespaces -- you can have much more than just "nsa.gov/secure-linux", | but any arbitrary length you want, and users handle the namespace | collisions for you (that would result from creating something like | foo/permissions) |> |> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iQIVAwUBQH3XHXgHNmZLgCUhAQJSJQ/+IZEMPe9d/zovn1JgRKhGe6cCNeX5c19D 2BDmYeCiXbmK+TtR9Q7KeS4nPE5RgvmEtkHZ00LoMTblxL9WNsRoQSCxJEEdTYGe ioFEKbPVNmmrd7RJsYSQVx7+Dx299JmCoOHmUuB45raATdV6yzKNVb3I819xFtrI cS4egyfMlIs4NQtq1GrrXMVXFCstiWuPsZcbbc78eTCIb0pTcs/mkWWcB9kl1VjQ kWIrHR6Qb0epLKSR0NrqikQK3rT3sqA5IZNYqgiVIu1tO+grkzEyUydcrZZTYV8f 9ZM3OIy5rbuMn/Ki+TnTQCN4nQ71o/JzhuAQq73EHYmTwot9IYhJGb74SWfD2Usg Tw9WvWzKaSo5ev261/6zQkIuvB0dvvt6FdbA2KR6ok1ckaJnVyeUjIqEAF42b5Dt JMkR3DGHE+CyzL2sjPxQA3nCK5JZ4Osq/N6yQXnD+8nfPjqlv6hy1fzjlDLAdWJC zGxBIpr7jKHfweE1zRCJlO+IpTokWibSw7E/oTSqZZKGGayXu/x+AFmQPY8N8cz/ PBkTgieqSKSUuIvNhetMvL8QPmqz3+eou9051aPSaf838NTTFA5D6JXkfAMhCaBb 9ji/QyQgp7QwrXX/yOB9h40zaSSIkm57IGo3LK74928wiLIkhhE9wh7aztgVQtcE j2nbiT/XRzU= =TEE5 -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-15 0:28 ` David Masover @ 2004-04-15 15:15 ` John D. Heintz 2004-04-16 1:04 ` David Masover 0 siblings, 1 reply; 26+ messages in thread From: John D. Heintz @ 2004-04-15 15:15 UTC (permalink / raw) To: David Masover; +Cc: reiserfs-list David Masover wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > John D. Heintz wrote: > | David, > | > | I think you might be onto something, but doing this manually for each > | file isn't viable (in my opinion). > > It applies recursively. Let's assume for a moment that /..foo is a > directory containing pseudo-files, metadata, or whatever the current > term is, for the file '/'. By creating the file /..foo/something as a > symlink to /..foo/<some long path>/something, you automatically create > /bar/..foo/something, which is a link to /bar/..foo/<same long > path>/something. > > | What I think might work is applying symlinks to all files hierarchically > | so that all "*/nsa/*" names resolve to "*/nsa.gov/security/*". > > Just what I described above, only it is local to the tree I apply it to, > and files deeper in the hierarchy take precedence. So, for example, if > I create a link manually for /bar/..foo/something that points somewhere > else, then /bar and all subdirs (and subfiles) of /bar contain that same > link, instead of the one created for /. > Thanks for the explanation and I like the idea. Being able to define a symlink and have it recursively apply might be exactly what is needed here. Is this behavior currently part of Reiser4? I don't remember seeing it anywhere, but I do remember reading something about inheritence being needed for various features. Is this the same as inheritence? Thanks, John Heintz ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: Do xml-like namespaces make sense for Reiser4? (re: metas thread) 2004-04-15 15:15 ` John D. Heintz @ 2004-04-16 1:04 ` David Masover 0 siblings, 0 replies; 26+ messages in thread From: David Masover @ 2004-04-16 1:04 UTC (permalink / raw) To: John D. Heintz; +Cc: reiserfs-list -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 John D. Heintz wrote: | [...] | Is this behavior currently part of Reiser4? I don't remember seeing it | anywhere, but I do remember reading something about inheritence being | needed for various features. Is this the same as inheritence? I don't know enough about how Reiser4 currently works. I last tried it a few months ago, although I might try it again soon. But in a few months, it becomes such a moving target that I think I'll have to read the whitepaper again. Just haven't gotten the time. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iQIVAwUBQH8xBngHNmZLgCUhAQKqfg//dpUOU53eoCQzseF1F2okf1BZRE42Ij37 n/e1T1HKg5llAo+IG8W8FZ25eEDzqM17Nt/ZuhdvjqMLYUp3kMBBLrZOpFhxmNNG boTnjDakjEu2BCm3xNYEGoURBqs0MNUz85h9inrYML694nL90OkzrVP0xQBhYKI6 EmmTXVsqk+IZZ52OworcqlqV60GjZUI7F3j6vTFyjQCWat8mEc8fbRqFgI2/NlDO U0W6GClZA3NAEInYdUS1iVjILlUKC68GhiCs8gdGMKDBYoiJuHus/kvwzNb7wMvC lkA/GvTDxT1ikzarL3XfCqRzzeKYcgSJw6a4N7tOptBt0p6bZa+YK5bE0/EXD5Yb /LVIQA6xG6MJxQZUgrt6UiNvbJEvr/N78oBrSdMfIY0mSIn+FZZmJqrTT67SjkF2 Rv5c5dxB9mItEJmC576cIQZ7FY+XSh3kjgkvQRYplwZeyFLeZU4thsiLBtn1ARi2 1jt0sNZzKiIYpqmTKDYXQJ0lfd/jRRWNNgQy0aGt4RaKT2T181TPKjlz92n2BbNQ +nf1nmMQ9rnw9VQ3HhiUrBAQS0ufAY33ztpD/2/OoNfwvOEAOnzjZJCY9+Nhlbxg mOQXr3aGrP1xm7wCYgTy7A1Q2z5U9AxV31/f8ELLwFxDlQrBIHYCr67W7WSIb4dH +a2HCw1q3Ls= =4vk3 -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2004-04-16 1:04 UTC | newest] Thread overview: 26+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-04-12 15:45 Do xml-like namespaces make sense for Reiser4? (re: metas thread) John D. Heintz 2004-04-12 16:00 ` Hubert Chan 2004-04-12 19:21 ` John D. Heintz 2004-04-12 21:28 ` Hubert Chan 2004-04-12 18:15 ` Hans Reiser 2004-04-12 18:59 ` Hubert Chan 2004-04-12 19:12 ` John D. Heintz 2004-04-13 14:40 ` John D. Heintz 2004-04-13 16:31 ` Hans Reiser 2004-04-13 16:57 ` John D. Heintz 2004-04-13 17:06 ` Grant Miner 2004-04-13 18:09 ` John D. Heintz 2004-04-13 18:36 ` Grant Miner 2004-04-13 17:47 ` Hans Reiser 2004-04-13 18:23 ` John D. Heintz 2004-04-13 18:28 ` Hans Reiser 2004-04-13 18:47 ` John D. Heintz 2004-04-13 20:31 ` Valdis.Kletnieks 2004-04-14 2:18 ` Enrique Perez-Terron 2004-04-14 15:06 ` John D. Heintz 2004-04-14 23:39 ` Enrique Perez-Terron 2004-04-14 2:50 ` David Masover 2004-04-14 15:12 ` John D. Heintz 2004-04-15 0:28 ` David Masover 2004-04-15 15:15 ` John D. Heintz 2004-04-16 1:04 ` David Masover
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.