throbber
US 9,088,868 B2
`
`173
`If block 4672 determines the user selected to exit block
`4510 processing, then block 4674 cleans up processing thus
`far accomplished(e.g. issue a stop using database command),
`and block 4676 completes block 4510 processing. If block
`4672 determines the user did not selectto exit, then process-
`ing continues to block 4678 where all other user actions
`detected at block 4616 are appropriately handled, and pro-
`cessing continues back to block 4616 by wayoff off-page
`connector 4696.
`
`FIGS. 47A through 47B depict flowcharts for describing a
`preferred embodiment of MS userinterface processing for
`actions configuration of block 4514. With reference now to
`FIG. 47A,processingstarts at block 4702, continues to block
`4704 for initialization(e.g. a start using database command),
`and then to block 4706 where groupsthe user is a memberof
`are accessed. Block 4706 retrieves all GRPDRs 3540 joined
`to GADRs3520 suchthat the descendanttype field 3520c and
`descendant ID field 3520d match the user information, and
`the ascendanttypefield 3520ais set to Group and the ascen-
`dant ID field 3520 matches the group ID field 3540a. While
`there may bedifferent types of groups as defined for the BNF
`grammar,
`the GRPDR 3540 is a derivative embodiment
`which happens to not distinguish. Alternate embodiments
`may carry a group typefield to select appropriate records by
`group type. Yet another embodiment may not have a block
`4706 with processing at block 4708 for gathering data addi-
`tionally by groups the user is a member of. Block 4706
`continues to block 4708.
`
`Block 4708 accesses all ADRs(e.g. all rows from aADR
`SQL table) for the user of FIG. 47A matching the owner
`information of the ADRs(e.g. user information matchesfield
`37505) to the user and to groups the user is a memberof(e.g.
`group information matches
`field 37505 (e.g. owner
`type=group, owner id=group ID field 3540a from block
`4706). The ADRsare additionally joined (e.g. SQL join) with
`DDRs 3600 and TDRs 3640 (e.g.
`fields 36005 and
`36405=Action and by matching ID fields 3600a and 3640a
`with field 3750a). Description field 3600c can provide a use-
`ful description last saved by theuserforthe action data. Block
`4708 mayalsoretrieve system predefined data records for use
`and/or management. Thereafter, eachjoined entry returned at
`block 4708 is associated at block 4710 with the correspond-
`ing data IDs(at least fields 3750a and 3540a) for easy unique
`record accesses when the user acts on the data. Block 4710
`also initializes a list cursor to pointto the first action item to
`be presented to the user in the list. Thereafter, block 4712 sets
`user interface indication for wherethe list cursor is currently
`set (e.g. set to highlight the entry) and any list scrolling
`settingsare set(thelist is initially not set for being scrolled on
`first FIG. 47A processing encounterto block 4712 from block
`4710. Block 4712 continues to block 4714 wherethe entry list
`is presented to the user in accordance with thelist cursor and
`list scroll settings managed for presentation at block 4712.
`Thereafter, block 4716 waits for user action to the presented
`list of action data and will continue to block 4718 when a user
`action has been detected. Presentation of the scrollable list
`
`preferably presents in an entry format reference-able by the
`list cursor. An action entry presented preferably contains
`ADRfields including owner information; GRPDR owner
`information and group nameif applicable; TDR time spec
`information; and DDR information. Alternate embodiments
`will present less information, or more information(e.g. join
`ADR(s) to PARMDR(s) viafield(s) 3750g).
`If block 4718 determines the user selected to set the list
`
`cursorto a different action entry, then block 4720 sets the list
`cursor accordingly and processing continues back to block
`4712. Block 4712 alwayssets for indicating where the list
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`174
`cursor is currently pointed andsets for appropriately scrolling
`the list if necessary when subsequently presenting the list at
`block 4714. Ifblock 4718 determinesthe user did notselect to
`
`set the list cursor, then processing continues to block 4722. If
`block 4722 determinesthe user selected to add an action, then
`block 4724 accesses a maximum numberofactions allowed
`(perhaps multiple maximum values accessed), and block
`4726 checks the maximum(s) with the number of current
`actions defined. There are many embodiments for what
`deems a maximum(for this user, fora group, for this MS, etc).
`If block 4726 determines a maximum number of actions
`allowed already exists, then block 4728 provides an error to
`the user and processing continues back to block 4712. Block
`4728 preferably requires the user to acknowledge the error
`before continuing back to block 4712. If block 4726 deter-
`mines a maximum wasnot exceeded, then block 4730 inter-
`faces with the user for entering validated action data and
`block 4732 addsthe data record, appropriately updates thelist
`with the new entry, andsets the list cursor appropriately for
`the next list presentation refresh, before continuing back to
`block 4712. If block 4722 determines the user did not wantto
`
`add an action, processing continues to block 4734. Block
`4732 will add anADR, HDR3620(to set creator information)
`and TDR 3640. The DDR and TDRare optionally added by
`the user. Additionally, at block 4730 the user may add new
`PARMDR(s)for theaction.
`If block 4734 determines the user selected to modify an
`action, then block 4736 interfaces with the user to modify
`action data of the entry pointed to by the list cursor. The user
`may change information of the ADR and any associated
`records (e.g. DDR, TDR). The user mayalso add the associ-
`ated records at block 4736. Block 4736 waits for a user action
`indicating completion. Block 4736 will continue to block
`4738 whenthe action is detected at block 4736. If block 4738
`determinesthe user exited, then processing continues back to
`block 4712. Ifblock 4738 determinesthe user selected to save
`
`changes madeat block 4736, then block 4740 updatesthe data
`and the list is appropriately updated before continuing back to
`block 4712. Block 4740 may update the ADR and/or any
`associated records (e.g. DDR and/or TDR)using the action id
`field 3750a (associated to the action item at block 4710).
`Block 4740 will update an associated HDR as well. Block
`4736 may add a new a DDRand/or TDRaspart of the action
`change. If block 4734 determines the user did not select to
`modify an action, then processing continues to block 4752 by
`way of off-page connector 4750.
`With reference now to FIG. 47B, if block 4752 determines
`the user selected to get more details ofthe action (e.g. show all
`joinable data to the ADRthatis not alreadypresented with the
`entry), then block 4754 gets additional details (may involve
`database queries in an SQL embodiment) for the action
`pointed to by the list cursor, and block 4756 appropriately
`presents the informationto the user. Block 4756 then waits for
`a user action that the user is complete reviewing details, in
`which case processing continues back to block 4712 by way
`ofoff-page connector 4798. Ifblock 4752 determinesthe user
`did notselect to get more detail, then processing continues to
`block 4758.
`If block 4758 determines the user selected to delete an
`
`action, then block 4760 determines any data records (e.g.
`CDR(s)) that reference the action data record to be deleted.
`Preferably, no referencing data records (e.g. CDRs) are join-
`able (e.g. field 37004) to the action data record being deleted,
`otherwise the user may improperly delete an action from a
`configured charter. The user should remove ascending refer-
`ences to an action for deletion first. Block 4760 continues to
`block 4762. If block 4762 determines there wasat least one
`
`APPLE
`APPLE
`EXHIBIT 1001 - PAGE 0351
`EXHIBIT 1001 - PAGE 0351
`
`

`

`US 9,088,868 B2
`
`175
`CDR reference, block 4764 provides an appropriate error
`with the reference(s) found so the user can subsequently
`reconcile. Block 4764 preferably requires the user to
`acknowledgethe error before continuing back to block 4712.
`If no references were found as determined by block 4762,
`then processing continues to block 4766 for deleting the data
`record currently pointed to by the list cursor. Block 4766 also
`modifiesthe list for the discarded entry, and sets the list cursor
`appropriately for the next list presentation refresh, before
`continuing back to block 4712. Block 4766 will usethe action
`ID field 3750a (associated with the entry at block 4710) to
`delete an action. Associated records (e.g. DDR 3600, HDR
`3620, and TDR 3640)are also deleted (e.g. preferably with a
`cascade delete in a SQL embodiment). If block 4758 deter-
`minesthe user did not select to delete an action, then process-
`ing continues to block 4768.
`If block 4768 determines the user selected to exit block
`
`4514 processing, then block 4770 cleans up processing thus
`far accomplished(e.g. issue a stop using database command),
`and block 4772 completes block 4514 processing. If block
`4768 determines the user did not select to exit, then process-
`ing continues to block 4774 where all other user actions
`detected at block 4716 are appropriately handled, and pro-
`cessing continues back to block 4716 by wayoff off-page
`connector 4796.
`
`FIGS. 48A through 48B depict flowcharts for describing a
`preferred embodiment of MSuser interface processing for
`parameter information configuration ofblock 4518. Withref-
`erence now to FIG. 48A, processing starts at block 4802,
`continues to block 4804 for initialization (e.g. a start using
`database command), and then to block 4806 where groups the
`user is a memberof are accessed. Block 4806 retrieves all
`GRPDRs3540 joined to GADRs 3520 such that the descen-
`dant type field 3520c and descendant ID field 3520d match
`the user information, and the ascendanttypefield 3520ais set
`to Group andthe ascendantID field 3520 matches the group
`ID field 3540a. While there maybe different types of groups
`as defined for the BNF grammar, the GRPDR 3540 is a
`derivative embodiment which happens to not distinguish.
`Alternate embodiments may carry a group typefield to select
`appropriate records by group type. Yet another embodiment
`may not have a block 4806 with processing at block 4808 for
`gathering data additionally by groups the user is amemberof.
`Block 4806 continues to block 4808.
`Block 4808 accesses all PARMDRs(e.g. all rows from a
`PARMDRSQLtable) for the user of FIG. 48A matching the
`owner information of the PARMDRs(e.g. user information
`matches field 37755) to the user and to groups the useris a
`memberof(e.g. group information matchesfield 3775(e.g.
`owner type=group, owner id=group ID field 3540a@ from
`block 4806). The PARMDRsare additionally joined (e.g.
`SQLjoin) with DDRs 3600 (e.g. field 36005=Parameter and
`by matching ID field 3600a with field 3775a). Description
`field 3600c can provide a useful description last saved by the
`user for the parameter data. Block 4808 mayalso retrieve
`system predefined data records for use and/or management.
`Thereafter, each joined entry returned at block 4808 is asso-
`ciated at block 4810 with the correspondingdata IDs(at least
`fields 3775a and 3540a) for easy unique record accesses
`whenthe user acts on the data. Block 4810 also initializes a
`list cursorto point to the first parameter entry to be presented
`to the user in the list. Thereafter, block 4812 sets user inter-
`face indication for where the list cursor is currently set (e.g.
`set to highlight the entry) and anylist scrolling settingsare set
`(the list is initially not set for being scrolled onfirst FIG. 48A
`processing encounter to block 4812 from block 4810). Block
`4812 continues to block 4814 wheretheentry list is presented
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`176
`to the user in accordance with the list cursor and list scroll
`settings managed for presentation at block 4812. ‘Thereafter,
`block 4816 waits for user action to the presented list ofparam-
`eter data and will continue to block 4818 whena useraction
`has been detected. Presentation of the scrollable list prefer-
`ably presents in an entry format reference-able by the list
`cursor. A parameter entry presented preferably containsfields
`for: PARMDRficld 3775c; GRPDR ownerinformation; own-
`ing GRPDRownerinformation and group nameifapplicable;
`and DDR information. Alternate embodiments will present
`less information, or more information (e.g. commands and
`operands parameters may be used with, parameter descrip-
`tions, etc).
`If block 4818 determines the user selected to set the list
`cursorto a different parameterentry, then block 4820 sets the
`list cursor accordingly and processing continues back to
`block 4812. Block 4812 alwayssets for indicating where the
`list cursor is currently pointed and sets for appropriately
`scrolling the list if necessary when subsequently presenting
`the list at block 4814. If block 4818 determines the user did
`not select to set the list cursor, then processing continues to
`block 4822. If block 4822 determinesthe user selected to add
`a parameter, then block 4824 accesses a maximum numberof
`parameter entries allowed (perhaps multiple maximum val-
`ues accessed), and block 4826 checks the maximum(s) with
`the number of current parameter entries defined. There are
`many embodiments for what deems a maximum(forthis user,
`for a group, for this MS, etc). If block 4826 determines a
`maximum number of parameter entries allowed already
`exists, then block 4828 provides an error to the user and
`processing continues back to block 4812. Block 4828prefer-
`ably requires the user to acknowledgethe error before con-
`tinuing back to block 4812. Ifblock 4826 determines a maxi-
`mum was not exceeded, then block 4830 interfaces with the
`user for entering validated parameter data, and block 4832
`adds the data record, appropriately updates the list with the
`new entry, and sets the list cursor appropriately for the next
`list presentation refresh, before continuing back to block
`4812. If block 4822 determinesthe user did not wantto adda
`parameter entry, processing continues to block 4834. Block
`4832 will add a PARMDR, DDR 3600 and HDR3620 (to set
`creator information). The DDR is optionally added by the
`user.
`
`If block 4834 determines the user selected to modify a
`parameter entry, then block 4836 interfaces with the user to
`modify parameter data of the entry pointed to by the list
`cursor. The user may change information of the PARMDR
`and anyassociated records (e.g. DDR). The user may also add
`the associated records at block 4836. Block 4836 waits fora
`
`user action indicating completion. Block 4836 will continue
`to block 4838 when the complete action is detected at block
`4836. If block 4838 determinesthe user exited, then process-
`ing continues back to block 4812. If block 4838 determines
`the user selected to save changes made at block 4836, then
`block 4840 updates the data and the list is appropriately
`updated before continuing back to block 4812. Block 4840
`may update the PARMDRand/or any associated DDR using
`the parameter id field 3775a (associated to the parameter
`entry at block 4810). Block 4840 will update an associated
`HDRaswell. Block 4836 may add a new DDRaspart of the
`parameter entry change. Ifblock 4834 determinesthe user did
`not select to modify a parameter, then processing continues to
`block 4852 by wayof off-page connector 4850.
`With reference now to FIG. 48B, if block 4852 determines
`the user selected to get more details of the parameter entry,
`then block 4854 gets additional details (may involve database
`queries in an SQL embodiment) for the parameter entry
`
`APPLE
`APPLE
`EXHIBIT 1001 - PAGE 0352
`EXHIBIT 1001 - PAGE 0352
`
`

`

`US 9,088,868 B2
`
`177
`pointed to by the list cursor, and block 4856 appropriately
`presents the information to the user. Block 4856 then waits for
`a user action that the user is complete reviewing details, in
`which case processing continues back to block 4812 by way
`ofoff-page connector 4898. Ifblock 4852 determinesthe user
`did not select to get more detail, then processing continues to
`block 4858.
`If block 4858 determines the user selected to delete a
`
`parameter entry, then block 4860 determines any data records
`(e.g. ADR(s)) that reference the parameter data record to be
`deleted. Preferably, no referencing data records (e.g. ADRs)
`are joinable (e.g. field 3750g) to the parameter data record
`being deleted, otherwise the user may improperly delete a
`parameter from a configured action. The user should remove
`references to a parameter entry for deletionfirst. Block 4860
`continues to block 4862. If block 4862 determines there was
`
`at least one reference, block 4864 provides an appropriate
`error with the reference(s) foundso the user can subsequently
`reconcile. Block 4864 preferably requires the user to
`acknowledgethe error before continuing back to block 4812.
`If no references were found as determined by block 4862,
`then processing continues to block 4866 for deleting the data
`record currently pointed to bythe list cursor, along with any
`other related records that can be deleted. Block 4866 also
`
`modifies the list for the discarded entry(s), and sets the list
`cursor appropriately for the next list presentation refresh,
`before continuing back to block 4812. Block 4866 will use the
`parameter ID field 3775a (associated with the entry at block
`4810) to delete the parameter entry. Associated records(e.g.
`DDR 3600, and HDR 3620) are also deleted (e.g. preferably
`with a cascade delete in a SQL embodiment). If block 4858
`determinesthe userdid not select to delete a parameter entry,
`then processing continues to block 4868.
`If block 4868 determines the user selected to exit block
`4518 processing, then block 4870 cleans up processing thus
`far accomplished(e.g. issue a stop using database command),
`and block 4872 completes block 4518 processing. If block
`4868 determines the user did not selectto exit, then process-
`ing continues to block 4874 where all other user actions
`detected at block 4816 are appropriately handled, and pro-
`cessing continues back to block 4816 by wayoff off-page
`connector 4896.
`FIGS. 39A, 40A, 41A, 46A, 47A and 48A assume a known
`identity of the user for retrieving data records. Alternate
`embodiments may provide a user interface option (e.g. at
`block 3904/4004/41 04/4604/4704/4804) for whether the user
`wants to use his own identity, or a different identity (e.g.
`impersonate anotheruser, a group, etc). In this embodiment,
`processing (e.g. block 3904/4004/4104/4604/4704/4804)
`would check permissions/privileges for the user (of FIGS.
`39A, 40A, 41A,46A, 47A and/or 48A) for whetheror not an
`impersonation privilege was granted by the identity the user
`wants to act on behalfof. Ifno such privilege was granted, an
`error would be presented to the user. If an impersonation
`privilege was granted to the user, then applicable processing
`(FIGS. 39A&B, FIGS. 40A&B, FIGS. 41A&B, FIGS.
`46A&B, FIGS. 47A&B and/or FIGS. 48A&B) would con-
`tinue in context of the permitted impersonated identity. In
`another embodiment, an impersonation privilege could exist
`from a group to anotheridentity for enforcing who manages
`grants for the group (e.g. 3904/4004/4104/4604/4704/4804
`considers this privilege for which group identity data can, and
`cannot, be managedbythe user). One privilege could govern
`who can manageparticular record data for the group. Another
`privilege can manage who can be maintainedto a particular
`group. Yet another embodiment could have a specific imper-
`sonation privilege for each of FIGS. 39A&B, FIGS. 40A&B,
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`ana
`
`178
`FIGS. 41A&B, FIGS. 46A&B, FIGS. 47A&B and/or FIGS.
`48A&B. Yet another embodiment uses Grantorfield informa-
`
`tion (e.g. fields 3500c and 3500¢) for matching to the user’s
`identity(s) (user and/or group(s)) for processing when the
`choice is available (e.g. in a GDR for permissions and/or
`charters).
`FIGS. 39A, 40A, 414A, 46A, 47A and 48A mayalsoutilize
`VDRs3660 if referenced in any data recordfields ofprocess-
`ing for elaboration to constructs or values that are required at
`a processing block. Appropriate variable name referencing
`syntax, or variable namesreferenced in data record fields, will
`be used to access VDR information for elaboration to the
`
`value(s) that are actually needed in data record information
`when accessed.
`FIG. 49A depicts an illustration for preferred permission
`data 10 processing in the present disclosure LBX architec-
`ture, for example when WDRsare in-process of being main-
`tained to queue 22, or being inbound to a MS(referred to
`generally as “incoming” in FIG. 49A). Table 4920 depicts
`considerations for privilege data (i.e. permission data 10)
`resident at the MSofa first identity ID, (grammar ID/ID-
`Type), depending on privileges granted in the following sce-
`narios:
`
`1) Thefirst identity ID, (Grantor) granting a privilege to a
`second identity ID, (Grantee; grammar ID/IDType), as
`shownin cell 4924: Privilege data is maintained by ID,
`at the ID, MSasis used to govern actions, functionality,
`features, and/or behavior for the benefit of ID,, by a)
`processing ID, WDRinformation at the ID, MS(pref-
`erably, privileges are communicated to ID, MS for
`enforcing and/or cloningthere), b) processing ID, WDR
`information at the ID, MS(privileges locally maintained
`to ID,), and c) processing ID, WDRinformation at the
`ID, MS(privileges locally maintained to ID, );
`2) The first identity ID, (Grantor) granting a privilege to
`himself (Grantee), as shown in cell 4922: Preferably,
`privilege data in this case is not necessary, no configu-
`ration interface is required for this scenario, and an iden-
`tity implicitly has all conceivable privileges assigned to
`himself by default; however, alternatively privileges
`may be appropriate for activating/deactivating function-
`ality;
`3) The secondidentity ID, (Grantor) granting a privilege to
`the first identity (Grantee), as shown in cell 4926: Privi-
`lege data is used for informing ID, (or enabling ID, to
`clone pera privilege) and to govern actions, functional-
`ity, features, and/or behavior for the benefit of ID,, by a)
`processing ID, WDRinformation at the ID, MS (pref-
`erably, privileges are communicated to ID, MS for
`enforcing and/or cloningthere), b) processing ID, WDR
`information at the ID, MS(privileges locally maintained
`to ID,); and c) processing ID, WDRinformation at the
`ID, MS(privileges locally maintained to ID,); and/or
`4) The secondidentity granting a privilege to himself, as
`shownin cell 4928: Preferably,privilege data in this case
`is not necessary, no communications
`interface is
`required for this scenario, and an identity implicitly has
`all conceivable privileges assigned to himselfby default;
`however, alternatively privileges may be appropriate for
`activating/deactivating functionality.
`Table 4940 depicts considerations for privilege data (i.e.
`permission data 10) resident at the MS ofa secondidentity
`ID, (grammar ID/IDType), depending on privileges granted
`in the following scenarios:
`5) A first identity ID, (Grantor) granting a privilege to the
`second identity ID, (Grantee; grammar ID/IDType), as
`shownin cell 4944: Privilege data is used for informing
`
`APPLE
`APPLE
`EXHIBIT 1001 - PAGE 0353
`EXHIBIT 1001 - PAGE 0353
`
`

`

`US 9,088,868 B2
`
`179
`ID, (or enabling ID, to clone per a privilege) and to
`govern actions, functionality, features, and/or behavior
`for the benefit of ID,, by a) processing ID, WDRinfor-
`mation at the ID, MS(preferably, privileges are com-
`municated to ID, MS for enforcing and/or cloning
`there), b) processing ID, WDR information at the ID,
`MS(privileges locally maintained to ID,), and c) pro-
`cessing ID, WDRinformationat the ID, MS (privileges
`locally maintained to ID,);
`6) Thefirst identity ID, (Grantor) granting a privilege to
`himself (Grantee), as shown in cell 4942: Preferably,
`privilege data in this case is not necessary, no commu-
`nications interface is required for this scenario, and an
`identity implicitly has
`all
`conceivable privileges
`assigned to himself by default; however, alternatively
`privileges may be appropriate for activating/deactivat-
`ing functionality;
`7) The secondidentity ID, (Grantor) granting a privilege to
`the first identity (Grantee), as shown in cell 4946: Privi-
`lege data is maintained by ID, at the ID, MSasis used to
`govern actions, functionality, features, and/or behavior
`for the benefit of ID,, by a) processing ID, WDRinfor-
`mation at the ID, MS(preferably, privileges are com-
`municated to ID, MS for enforcing and/or cloning
`there), b) processing ID, WDR information at the ID,
`MS(privileges locally maintained to ID,) and c) pro-
`cessing ID, WDRinformationat the ID, MS(privileges
`locally maintained to ID,); and/or
`8) The second identity granting a privilege to himself, as
`shownin cell 4948: Preferably, privilege data in this case
`is not necessary, no configuration interface is required
`for this scenario, and an identity implicitly has all con-
`ceivable privileges assigned to himself by default; how-
`ever, alternatively privileges may be appropriate foracti-
`vating/deactivating functionality.
`FIG. 49B depicts an illustration for preferred charter data
`12 processing in the present disclosure LBX architecture, for
`example when WDRsare in-process of being maintained to
`queue 22, or being inboundto a MS(referred to generally as
`“incoming” in FIG. 49B). Table 4960 depicts considerations
`for charter data resident at the MS ofa first identity ID,
`(grammar ID/IDType), depending on privileges granted in
`the following scenarios:
`1) Thefirst identity ID, (Grantee) owning a charter for use
`at the MSof a second identity ID, (Grantor; grammar
`ID/IDType), as shownin cell 4964: Charter data is main-
`tained by ID, atthe ID, MSfor being candidate use at the
`ID, MSto causeactions, functionality, features, and/or
`behavior, in accordance with configured permission data
`10, for the benefit of either ID, or ID, by a) processing
`ID, WDRinformation at the ID, MS (preferably, char-
`ters are communicated to ID, MSfor use there), and b)
`processing ID, WDRinformation at the ID, MS(pref-
`erably, charters are communicated to ID, MS for use
`there);
`2) The first identity ID, (Grantee) owning a charter for use
`at his own MS, as shown in cell 4962: Charter data is
`maintained locally for local use to cause actions, func-
`tionality, features, and/or behavior, in accordance with
`configured permission data 10, for the benefit of either
`ID, or ID, by a) processing ID, WDRinformation atthe
`ID, MS, and b) processing ID, WDRinformation at the
`ID, MS;
`3) The second identity ID, (Grantee) owning a charter for
`use at the MSofthe first identity ID, (Grantor; grammar
`ID/IDType), as shownin cell 4966: Charter data is used
`at the ID, MSfor informing ID, and enforcing cause of
`
`20
`
`35
`
`40
`
`45
`
`50
`
`55
`
`180
`in
`features, and/or behavior,
`functionality,
`actions,
`accordance with configured permission data 10, for the
`benefit of either ID, or ID, by a) processing ID, WDR
`information at the ID, MS(preferably, charters are com-
`municated to ID, MSfor use there), and b) processing
`ID, WDRinformation at the ID, MS (preferably, char-
`ters are communicated to ID, MSforuse there); and/or
`4) The second identity ID, (Grantee) owning a charter at
`his own MS, as shownin cell 4968: Charter data may be
`communicated to the ID, MSfor informing ID,, allow-
`ing ID, to browse, or allowing ID, to use as a template
`for cloning and then making/maintaining into ID,’s own
`charter, wherein each reason for communicating to the
`ID, MS(orprocessing at the ID, MS) has a privilege
`grantable from ID, to ID,.
`Table 4980 depicts considerations for charter data residentat
`the MS of a second identity ID, (grammar ID/IDType),
`depending on privileges granted in the following scenarios:
`5) Thefirst identity ID, (Grantee) owning a charter for use
`at the MS ofthe secondidentity ID, (Grantor), as shown
`in cell 4984: Charter data is used at the ID, MS for
`informing ID, and enforcing causeofactions, function-
`ality, features, and/or behavior, in accordance with con-
`figured permission data 10, for the benefit of either ID,
`or ID, by a) processing ID, WDRinformationat the ID,
`MS(preferably, charters are communicated to ID, MS
`for use there), and b) processing ID, WDRinformation
`at the ID, MS(preferably, charters are communicatedto
`ID, MSforuse there);
`6) Thefirst identity ID, (Grantee) owning a charter for use
`at his own MS, as shownin cell 4982: Charter data may
`be communicated to the ID, MS for informing ID,,
`allowing ID, to browse, or allowing ID, to use as a
`template for cloning and then making into ID,’s own
`charter, wherein each reason for communicating to the
`ID, MS (or processing at the ID, MS) has a privilege
`grantable from ID, to ID,.
`7) The secondidentity ID, (Grantee) owning a charter for
`use at the MSofthefirst identity ID, (Grantor; grammar
`ID/IDType), as shownin cell 4986: Charterdata is main-
`tained by ID,at the ID, MSfor being candidate useat the
`ID, MSto causeactions, functionality, features, and/or
`behavior, in accordance with configured permission data
`10, for the benefit of either ID, or ID, by a) processing
`ID, WDRinformation at the ID, MS(preferably, char-
`ters are communicated to ID, MSfor use there), and b)
`processing ID, WDRinformation at the ID, MS (pref-
`erably, charters are communicated to ID, MSfor use
`there); and/or
`8) The second identity ID, (Grantee) owning a charter at
`his own MS, as shown in cell 4988: Charter data is
`maintained locally for local use to cause actions, func-
`tionality, features, and/or behavior, in accordance with
`configured permission data 10, for the benefit of either
`ID, or ID, by a) processing ID, WDR informationat the
`ID, MS, and b) processing ID, WDR informationat the
`ID, MS.
`Various embodiments will implement any reasonable sub-
`set of the considerations of FIGS. 49A and 49B, for example
`to minimize or eliminate communicating auser’s permissions
`10 and/or charters 12 to another MS, orto prevent storing the
`same permissions and/or charters data at more than one MS.
`FIGS. 49A and 49B are intended to highlight feasible
`embodiments wherein FIG. 49B terminology “incoming”is
`used generally for referring to WDRsin-process whichare a)
`being maintained (e.g. “incoming” as being maintained to
`
`APPLE
`APPLE
`EXHIBIT 1001 - PAGE 0354
`EXHIBIT 1001 - PAGE 0354
`
`

`

`US 9,088,868 B2
`
`181
`queue 22); and b) incoming to a particular MS(e.g. “incom-
`ing” as being communicated to the MS).
`In one subset embodiment, privileges and charters are only
`maintained at the MS where they are configured for driving
`LBX features and functionality. In another embodiment,
`privileges are maintained at the MS where they were config-
`ured as well as any MSs whicharerelevant for those configu-
`rations, yet charters are only maintained at the MS where they
`are configured. In yet another embodiment, privileges and
`charters are maintained at the MS where they were config-
`ured, as well as any MSs whichare relevant for those con-
`figurations. In another embodiment, a MS maynothaveall
`privileges assigned to itself (said to be assignedto the user of
`the MS) by default. Privileges may require being enabled as
`needed for any users to have the benefits of the associated
`LBX features and functionality. Thus,
`the considerations
`highlighted by FIGS. 49A and 49Bareto “cover many bases”
`with any subset embodiment within the scopeofthe present
`disclosure.
`
`Preferably, statistics are maintained by WITSfor counting
`occurrences of each variety of the FIGS. 49A and 49B pro-
`cessing scenarios. WITS processing should also keepstatis-
`tics for the count by privilege, and by charter, of each appli-
`cable WITS processing event which was affected. Other
`embodiments will maintain more detailed statistics by MS
`ID, Group ID, or other “labels” for categories of statistics.
`Still other embodiments will categorize and maintain statis-
`tics by locations, time, applications in use at time of process-
`ing scenarios, etc. Applicable statistical data can be initialized
`at internalization time to prepare for proper gathering of
`useful statistics during WITSprocessing.
`FIGS. 50A through 50C depict an illustration of data pro-
`cessing system wireless data transmissions over some wave
`spectrum for further explaining FIGS. 13A through 13C,
`respectively. Discussions above for FIGS. 13A through 13C
`are expanded in explanation for FIGS. 50A through 50C,
`respectively. It is well understood that the DLM 200a (FIGS.
`13A and 50A),
`ILM 1000k (FIGS. 13B and 50B) and
`service(s) (FIGS. 13C and 50C) can be capable of communi-
`cating bidirectionally. Nevertheless, FIGS. 50A through 50C
`clarify FIGS. 13A through 13C,respectively, with a bidirec-
`tional arrow showing data flow “in the vicinity” of the DLM
`200a, ILM 10004, and ser

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket