WO2018091594A1 - Verfahren zur verarbeitung von daten zur dialoggeführten technischen unterstützung bei der erstellung oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen - Google Patents

Verfahren zur verarbeitung von daten zur dialoggeführten technischen unterstützung bei der erstellung oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen Download PDF

Info

Publication number
WO2018091594A1
WO2018091594A1 PCT/EP2017/079485 EP2017079485W WO2018091594A1 WO 2018091594 A1 WO2018091594 A1 WO 2018091594A1 EP 2017079485 W EP2017079485 W EP 2017079485W WO 2018091594 A1 WO2018091594 A1 WO 2018091594A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
input
meaning
extracted
domain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2017/079485
Other languages
English (en)
French (fr)
Inventor
Albert Kos
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aumovio Germany GmbH
Original Assignee
Continental Automotive Technologies GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Continental Automotive Technologies GmbH filed Critical Continental Automotive Technologies GmbH
Publication of WO2018091594A1 publication Critical patent/WO2018091594A1/de
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Definitions

  • the invention relates to a method for processing data for dialogue-based technical support in the creation or modification of data processing programs or database entries and a data processing system.
  • This object is achieved by a method for processing data for dialogue-based technical support in the creation or modification of data processing programs or database entries according to claim 1.
  • a data processing system according to claim 17 is proposed.
  • Disclosed is a method of processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries, and a data processing system, in particular for performing a method for processing data for dialog-driven technical support when creating or modifying data processing programs or database entries.
  • the method for processing data for dialog-driven technical support when creating or changing data processing programs or database entries is characterized in that it has at least the following work steps, namely: input of information, extraction of meaning from the input, alignment the meaning extracted from the input with a collection of Records for matches, wherein at least one record comprises at least portions of one or more domain-specific languages, and wherein the portions of the records that are in the form of domain-specific language are either already in a Notus of a Backus-Naur form or in a notation of one Backus-Naur-Form, a creation of one or more syntax trees based on the result of the matching, a generation of source code, which has the syntax of one or, subdivided, several programming languages, from the syntax trees and an output of the generated source code.
  • the data processing system in particular for carrying out a method for processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries, is characterized in that it comprises at least the following components, namely: A dialog system which processes at least inputs has a meaning from the respective one Extracts input, searches a data store for matches between extracted meanings and entries in the data store and outputs the respective result of the search, At least one data store or subarea of a data store which has a collection of data records which has at least one or more data sets which / r comprises at least parts of one or more domain-specific languages and one or more source ⁇ text generators, which receive data from the dialogue system and gene source therefrom erieren.
  • a dialog system which processes at least inputs has a meaning from the respective one Extracts input, searches a data store for matches between extracted meanings and entries in the data store and outputs the respective result of the search, At least one data store or subarea of a data store which has a collection of data records which has at least one or more data sets which
  • the result of a match to a collection of records for matches may include one or more metalinguistic syntaxes, or may be that there is no match. From the result of ⁇ equalization with a collection of records for matches but may also include, for example, the names of records that are occurrences of matches.
  • Metalinguistic in the context of this invention means that the syntax module is source code, which is not formulated in the form of a specific programming language. There is talk here of a building block, because it does not have to be a complete data processing program, but also to smaller units of source code. It can also be a complete program.
  • the metalinguistic syntax blocks contain a unique syntax, which can also be used to generate source code in a specific programming language.
  • a Backus-Naur form syntax of programming languages even of higher-level programming languages can be represented. It can also be quite generally context-free grammars represent it. Natural language is not only spoken language, but also written language and sign language.
  • Domain-specific languages are formal languages that have been conceived and conceived for a specific problem field, also called a problem domain. They are also called application-specific languages.
  • the inventive method can be seen in addition to the creation and or modification of data processing programs or database entries also for the creation and / or modification of data processing services or data itself.
  • the data sets in the data collection are in the form of an abstract syntax.
  • the records contain syntax that is not in the concrete linguistic form of a particular programming language is held.
  • the syntax may also be in the written form of natural language.
  • source code can be generated at one go, for example, one part having the syntax of Java and another part having the syntax of C ++, for example.
  • the method according to the invention is particularly advantageous for being able to work both with data sets already present in a notation of a Backus-Naur form in the data collection, as well as data records which are not in a notation of a Backus-Naur form in FIG the data collection, to convert it into a notation of a Backus-Naur form.
  • domain-specific language is found in a specific manner of the task determined from the input.
  • a method according to the invention is used to technically support creation or modification of data processing programs or database entries in a dialog-driven manner and also to generate source code in the course of the method which is to be used in an automotive context.
  • the product which is being developed comprising ver ⁇ different components on different platforms.
  • a component of a data processing product produced therewith can be executed on an in-vehicle infotainment system, while a further component can be implemented, for example, on a vehicle-mounted control unit or on a component of the instrument cluster.
  • Still other components may be implemented on mobile devices such as mobile phones, portable computers, or body-worn devices with computers (such as computerized watches, also called “smartwatches.")
  • a method according to the invention enables one or more developers , which produce such a data processing program, relief, by also comprehensive data collections, which also Problemfeidspezifische solutions - in the form of syntax - to match by means of a method according to the invention to match and subsequently create source code
  • Backus-Naur shapes Specify Backus-Naur shapes.
  • a selection of a Backus-Naur form is made depending on the technical background of the input of information, for example in the form of a technical field or a specific expertise.
  • Backus-Naur forms of the specific programming languages whose syntax is to have the source code to be generated dependent.
  • certain Backus-Naur forms are assigned to specific programming languages.
  • a method or system in accordance with the invention is part of a tooling a toolkit for developing data processing programs.
  • a method or system according to the invention is part of or is provided with a framework for the modular development of data processing programs.
  • an output of selectable additional options is performed, the options at least linking parts of the extracted meaning with each other or listing parameters with which the original input is specified in more detail can, includes. Depending on the option selected, it then decides how the process will continue.
  • the result of the comparison from ⁇ is added after the balance in an additional operation. This is particularly advantageous allows to grant un ⁇ indirect insight into the result of the operation before it is further processed in the following steps.
  • the result of the adjustment is output after the adjustment in an additional work step
  • the result of the adjustment is output in the linguistic form in which it is present in the data collection.
  • the input takes place in text form or as an acoustic voice input.
  • This particularly advantageous both familiar input devices such as keyboards can be used are processed and transmitted text and at the same time an acoustic input without further entranc ⁇ beologi is possible.
  • the input is in natural language, in colloquial language or in a formal notation. Special advantages are here at the flexibility of the Ver ⁇ proceedings to be able to process different forms of language. It makes it possible to incorporate inputs that already exist in formal notation, for example, from existing libraries or documentation, and at the same time, for example, to process short-term entries that are not available in formal notation but, for example, in colloquial language.
  • the input contains a question and / or a command. Such an embodiment allows particularly advantageous in an efficient manner, with the method for dialog guided technical support, for example, to edit in addition to the generation of source code further Prob ⁇ lem ein or link.
  • the meaning extracted from the input is output and the correctness of the extraction either confirmed or, in the case of lack of correctness, a loop for improving the match between input and Extracted meaning is executed or the execution of the method jumps back to the first step.
  • Such an embodiment in a particularly advantageous manner, allows additional control as to whether the input has been correctly recognized and possibilities of intervention to improve the correspondence between input and extracted meaning.
  • it is possible to work to extract the desired meaning.
  • the technical field is identified on the basis of predetermined criteria, which has the greatest agreement with the term spectrum extracted from the input from a predetermined set of technical fields.
  • the selection of the programming language or programming languages used to generate the source code takes place in dependence on the technical field with the greatest match. This advantageously allows without further speci fication ⁇ suitable programming languages to be selected.
  • the domain-specific languages and the parts of domain-specific languages are stored in the collection of data records in a form which enables a context-free and formally exact representation of the domain-specific languages.
  • This Sonder be ⁇ advantageous, for example, allows the expressions in domänenspe ⁇ zifischer language in the collection of data in a defined way to interpret.
  • the domain-specific languages, and the parts of domain-specific languages in the collection of data records are stored in a form that enables a context-free and formal exact representation of the domänenspezi ⁇ fishing languages, and either all records or at least all datasets containing one or more domain-specific languages in whole or in part have a unified form.
  • a method according to the invention can be designed particularly advantageously or it can be particularly fast.
  • the output comprises source text or models or instructions or hierarchically structured data in a format of the same language. Special advantages here are to create outputs that go beyond source code, which can also be models, for example.
  • a particularly advantageous embodiment of a data processing system, in particular for carrying out a procedure in accordance with Ver ⁇ of the invention is designed such that it additionally based on the concept of spectrum which is included in the extracted from input importance according to a predetermined evaluation scheme, one or more
  • Backus-Naur forms from the datastore for generating source code in the source code generator selects. This may provide that to fixed reports provide automated selection to be used Backus-Naur forms especially before ⁇ geous.
  • the dialog system is such that it can process acoustic voice inputs and textual voice input. This makes it particularly advantageous to use the most favorable input form.
  • the dialog system is such that it extracts the meaning from inputs in natural language, colloquial language and formal speech. This makes it particularly advantageous to be able to flexibly use speech inputs of various types with more or less strongly formalized speech. figure description
  • FIG. 1 shows a flow chart of a method for processing
  • FIG. 2 shows a flow chart of a method for processing
  • FIG. 3 shows a flow chart of a method for processing
  • FIG. 4 shows a flow chart of a method for processing
  • FIG. 1 shows, in a flowchart, an exemplary embodiment of a method for processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries.
  • the first step is the extraction of meaning from the input 120. This is followed by a comparison of the meaning extracted from the input with a collection of data records on matches 130, wherein at least one data record at least parts of one or more having a plurality of domain-specific languages, and the proportions of the records which are present in the form of Domae ⁇ nenspezifischer language, either already present in a notation of a Backus-Naur form or transferred to a notation of a Backus-Naur form is the 135th This is followed by the creation of one or more syntax trees based on the result of the matching 140. In the next step, the generation of source text 150, which has the syntax of one or, subdivided in sections, several programming languages, from the or the syntax trees and finally the generated source text is output 160.
  • FIG. 2 shows an exemplary embodiment in a flow chart a method for processing data for dialog-driven technical support when creating or modifying data processing programs or database entries, in which the result of the reconciliation is output after reconciliation in an additional work step.
  • the first step is the extraction of meaning from the input 120. This is followed by a comparison of the meaning extracted from the input with a collection of data records on matches 130, wherein at least one data record at least parts of one or more has multiple domain-specific languages, and wherein the portions of the data sets which are in the form of domain-specific language, either already in a notation of a
  • Backus-Naur form will be transferred 135.
  • the result of the adjustment is output in an additional step 132. This is followed by the creation of one or more syntax trees based on the result of the matching 140.
  • the generation of source text 150 which has the syntax of one or, subdivided sections, several programming languages, from the or the syntax trees and finally the generated source text is output 160.
  • Figure 3 shows in a flowchart an exemplary embodiment of a method for Processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries that outputs the meaning extracted from the input, and whether the correctness of the extraction is either confirmed or, in the case of lack of correctness, a loop to improve the match is executed between input and extracted meaning or the execution of the method jumps back to the first step.
  • the first step is the input of information 110.
  • the next step is the extraction of meaning from the input 120.
  • the meaning extracted from the input is output 121. Will if the extraction is confirmed to be correct 122, the method continues to match the meaning extracted from the input with a collection of records for matches 130.
  • the method branches again: either a loop is performed to improve the match 127 between input and extracted meaning or, alternatively, 125 to execute the loop for improvement, the method jumps back to the first step, the input of information 110 takes place and the process begins again, so to speak. Then the steps extraction of meaning 120, output of the extracted meaning 121 and checking the correctness 122 of the extraction are run through again. If the match enhancement loop 127 is executed, it will be repeated one or more times during its course
  • FIG. 4 shows in a flow chart an exemplary embodiment of a method for processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries in an additional method step, after the input, there is an output of selectable additional options, the options comprising at least the combination of parts of the extracted meaning with each other or the listing of parameters by means of which the original input can be specified more precisely.
  • a entering information 110 first a entering information 110.
  • the next step is the extraction of meaning from the input 120. It is then in an additional process step 128, an output of selectable additional Op ⁇ functions.
  • the options include at least the linking of parts of the extracted meaning with each other or the listing of parameters by means of which the original input can be specified more precisely.
  • This is followed by matching the meaning extracted from the input with a collection of records for matches 130, wherein at least one record comprises at least portions of one or more domain-specific languages, and wherein the portions of the records which are in the form of domain-specific language are either already in a notation of one
  • Backus-Naur form will be transferred 135. This is followed by the creation of one or more syntax trees based on the result of the matching 140. In the next step, the generation of source text 150, which has the syntax of one or, subdivided in sections, several programming languages, from the or the syntax trees and finally the generated source text is output 160.
  • a method for processing data for dialog-driven technical support in the creation or modification of data processing programs or database entries, as shown by way of example in FIG. 1, has at least the following work steps, namely
  • Source text 150 which has the syntax of one or, subdivided in sections, several programming languages, from the one or more syntax trees,
  • the result of the adjustment is output after adjustment 130 in an additional operation 132.
  • the result of the adjustment 130 is output in the linguistic form in which it is present in the data collection.
  • the result of the adjustment 130 is output in normal-language text form.
  • the input 110 takes place in text form or as an acoustic speech input.
  • the input 110 takes place in natural language, in colloquial language or in a formal notation.
  • the input 110 contains a question and / or a command.
  • the meaning extracted from the input is output 121 and the correctness of the extraction is either confirmed 122 or, in the case of lack of correctness, a loop for improving the Matching between input and extracted meaning 127 is performed or execution of the method returns to the first step 110.
  • the meaning extracted from the input has the form of keywords.
  • the technical field is identified on the basis of predetermined criteria, which has the greatest agreement with the term spectrum extracted from the input from a predetermined set of technical fields (not shown).
  • the selection of the Backus-Naur form is made for the notation in which the result of the comparison is present or in which the result is transferred (not shown).
  • the selection of the programming language or programming languages used to generate the source code depends on the technical field with the largest match (not shown).
  • an additional method step 1208 after the input 110, an output of selectable additional options takes place, the options at least linking parts of the extracted meaning with each other or List of parameters by which the original input can be specified more precisely.
  • the Domae ⁇ nenspezifischen languages and part of domain-specific languages in the collection of data records in a form are stored, a context-free and formal exact representation of the do ⁇ custom languages.
  • a variant of a method for processing data as is exemplarily shown in Figure 1, have either all records, or at least all the records that all or part of one or more domain-specific languages be ⁇ content, a unified shape.
  • the output has source text or models or instructions or hierarchically structured data in a format in a format of a display language.
  • a data processing system in particular for carrying out a method for processing data for dialog-driven technical support when creating or modifying data processing programs or database entries (not shown), has at least the following components, namely: G.
  • G A dialog system which processes at least inputs, extracts a meaning from the respective input, searches a data memory for matches between extracted meanings and entries in the data memory and outputs the respective result of the search,
  • H at least one data memory or partial area of a data memory which has a collection of data records which has at least one or more data records which at least comprise parts of one or more domain-specific languages, one or more source code generators which receive data from dialog system and generate source code from it.
  • a variant of a data processing system is designed in such a way that it additionally selects one or more Backus-Naur forms from the data memory for the generation of source text in the source code generator on the basis of the term spectrum contained in the meaning extracted from the input according to a predetermined evaluation scheme (not shown) .
  • the dialogue system is such that it can process acoustic speech inputs and textual speech input (not shown).
  • the dialog system is such that it extracts the meaning from inputs in natural language, colloquial language and formal language (not shown).

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

Die Erfindung betrifft eine Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen. Um ein verbessertes Verfahren zur technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen zu schaffen, wird vorgeschlagen, dass zunächst eine Eingabe von Informationen (110) erfolgt, dass darauf eine Extraktion von Bedeutung aus der Eingabe (120) anschließt, dass ein Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen (130) erfolgt, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domänenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt (135) werden, dass sich eine Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs (140) anschließt, dass dann eine Generierung von Quelltext (150), welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen, erfolgt, und dass sich dann eine Ausgabe des generierten Quelltextes (160) anschließt.

Description

Beschreibung
Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen
Die Erfindung betrifft ein Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Da- tenbankeinträgen und ein Datenverarbeitungssystem.
Es ist bekannt, mittels gesprochener Sprache Informationen in Datenverarbeitungssysteme einzugeben. Dabei ist auch bekannt, Bedeutung aus der Eingabe zu extrahieren. So gibt es bei- spielsweise Diktierprogramme, welche eine gesprochene Eingabe in eine Textform umwandeln. Weiterhin ist bekannt, Datenverarbeitungssysteme mittels Spracheingabe zu steuern. Dabei sind sowohl Varianten bekannt, die bestimmte Eingaben mit vorher abgelegten abgleichen und wiedererkennen, als auch solche, bei denen eine Bedeutung aus einer Eingabe extrahiert und in Ab¬ hängigkeit von der Bedeutung weitere Handlungen eingeleitet werden. So können beispielsweise Datenverarbeitungsprogramme auf in gesprochener Sprache eingegebene Fragen antworten liefern. Dabei sind Datenverarbeitungsprogramme bekannt, welche anhand von Daten aus einem lokalen Datenspeicher versuchen, eine zur Frage passende Antwort zu ermitteln. Es sind außerdem auch Datenverarbeitungsprogramme bekannt, welche auf nichtlokale Datenspeicher zurückgreifen, beispielsweise auf Datenbestände im öffentlichen Internet oder in privaten Serverbeständen, um eine Antwort zu ermitteln. Darüber hinaus sind auch Datenve¬ rarbeitungsprogramme bekannt, die auch Befehle in gesprochener Sprache erkennen können und, einem eingegebenen Befehl folgend, gewisse Operationen ausführen können. Mit der zunehmenden Digitalisierung und Verknüpfung verschiedener Teilbereiche und Felder von Computerarbeit und den zugehörigen Datenverarbeitungsprogrammen wächst auch die Vielfalt von Plattformen zur Entwicklung von Datenverarbeitungsprogrammen und die technische Dokumentation der Computersysteme und Datenverarbeitungsprogramme sowie deren cha¬ rakteristische Eigenschaften und Wechselwirkungen. Andererseits werden Datenverarbeitungsprogramme zunehmend so gestaltet, dass sie sich aus verschiedenen, wiederverwendbaren Modulen zusammensetzen .
Vor diesem Hintergrund ist es Aufgabe der Erfindung, ein verbessertes Verfahren zur technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen zu schaffen.
Diese Aufgabe wird durch ein Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen gemäß Anspruch 1 gelöst. Außerdem wird ein Datenverarbeitungssystem nach Anspruch 17 vorgeschlagen.
Ausgestaltungen und Weiterbildungen des Erfindungsgedankens sind Gegenstand von abhängigen Ansprüchen.
Es werden ein Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbank- einträgen und ein Datenverarbeitungssystem insbesondere zur Durchführung eines Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen offenbart.
Das Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen zeichnet sich dadurch aus, dass es mindestens folgende Ar- beitsschritte aufweist , nämlich: Eine Eingabe von Informationen, eine Extraktion von Bedeutung aus der Eingabe, einen Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domänenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt werden, eine Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs, eine Generierung von Quelltext, welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen und eine Ausgabe des generierten Quelltextes.
Das Datenverarbeitungssystem insbesondere zur Durchführung eines Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen ist dadurch gekennzeichnet, dass es zumindest folgende Bestandteile aufweist, nämlich: Ein Dialogsystem, welches zumindest Eingaben verarbeitet, eine Bedeutung aus der jeweiligen Eingabe ex- trahiert, einen Datenspeicher auf Übereinstimmungen zwischen extrahierten Bedeutungen und Einträgen im Datenspeicher durchsucht und das jeweilige Ergebnis der Durchsuchung ausgibt, Zumindest einen Datenspeicher oder Teilbereich eines Datenspeichers, welcher eine Sammlung von Datensätzen aufweist, welche zumindest einen oder mehrere Datensätze aufweist, welche/r zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist und ein oder mehrere Quell¬ text-Generatoren, welche von dem Dialogsystem Daten erhalten und daraus Quelltext generieren.
Besondere Ausführungsformen sind Gegenstand der Unteransprüche.
Das Ergebnis eines Abgleichs mit einer Sammlung von Datensätzen auf Übereinstimmungen kann beispielsweise einen oder mehrere metasprachlichen Syntaxbausteinen aufweisen oder auch lauten, dass keine Übereinstimmung bestehen. Das Ergebnis eines Ab¬ gleichs mit einer Sammlung von Datensätzen auf Übereinstimmungen kann aber auch beispielsweise die Bezeichnungen der Datensätze, welche Fundstellen von Übereinstimmungen sind, umfassen.
Metasprachlich bedeutet im Zusammenhang dieser Erfindung, dass es sich bei dem Syntaxbaustein um Quelltext handelt, welcher jedoch nicht in der Form einer konkreten Programmiersprache formuliert ist. Es ist hier von einem Baustein die Rede, weil es sich nicht um ein vollständiges Datenverarbeitungsprogramm handeln muss, sondern auch um kleinere Einheiten von Quelltext. Es kann sich aber auch um ein komplettes Programm handeln.
Jedenfalls enthalten die metasprachlichen Syntaxbausteine eine eindeutige Syntax, anhand derer auch Quelltext in einer konkreten Programmiersprache generiert werden kann. Mit einer Backus-Naur-Form lässt sich Syntax von Programmiersprachen, auch von höheren Programmiersprachen darstellen. Es lassen sich aber auch ganz generell kontextfreie Grammatiken damit darstellen. Unter natürlicher Sprache ist nicht nur gesprochene Sprache zu verstehen, sondern auch geschriebene Sprache und Gebärdensprache .
Domänenspezifische Sprachen sind formale Sprachen, welche für ein bestimmtes Problemfeld, auch Problemdomäne genannt, erdacht worden sind und erdacht werden. Man nennt Sie auch anwendungsspezifische Sprachen.
Das erfindungsgemäße Verfahren ist neben der Erstellung und oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen auch zur Erstellung und/oder Veränderung von Datenverarbeitungsdiensten oder Daten selbst zu sehen.
In einer beispielhaften Ausführungsform liegen die Datensätze in der Datensammlung in Form einer abstrakten Syntax vor. In diesem Fall enthalten die Datensätze also Syntax, welche nicht in der konkreten sprachlichen Form einer bestimmten Programmiersprache gehalten ist. Beispielsweise kann die Syntax auch in der Schriftform von natürlicher Sprache vorliegen.
Als abschnittsweise unterteilt ist im Kontext der Generierung von Quelltext mit einem erfindungsgemäßen Verfahren oder System zu verstehen, dass der ausgegebene Quelltext an jeder Stelle jeweils die Syntax von genau einer Programmiersprache aufweist, dass jedoch verschiedene Teilbereiche von Quelltext, welche im Zuge einer einzigen Generierung erzeugt werden, die Syntax von verschiedenen Programmiersprachen aufweisen können. Es kann also etwa beispielsweise in einem Zug Quelltext erzeugt werden, wobei ein Teil beispielsweis die Syntax von Java und ein anderer Teil beispielsweise die Syntax von C++ aufweist. Das erfindungsgemäße Verfahren ist besonders vorteilhaft dazu in der Lage, sowohl mit Datensätzen, welche bereits in einer Notation einer Backus-Naur-Form in der Datensammlung vorliegen, zu arbeiten, als auch Datensätze, welche nicht in einer Notation einer Backus-Naur-Form in der Datensammlung vorliegen, in eine Notation einer Backus-Naur-Form zu überführen.
Über den Abgleich erfolgt das Auffinden von domänenspezifischer Sprache in spezifischer Weise der aus der Eingabe ermittelten Aufgabenstellung .
In einer beispielhaften Ausführungsform wird ein erfindungsgemäßes Verfahren verwendet, um eine Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen dialoggeführt technisch zu unterstützen und im Verlauf des Verfahrens auch Quelltext zu generieren, welcher in einem automobilen Kontext eingesetzt werden soll. Dabei ist vor¬ stellbar, dass das Produkt, welches entwickelt wird, ver¬ schiedene Bestandteile auf verschiedenen Plattformen aufweist. So kann beispielsweise ein Bestandteil eines damit erstellten Datenverarbeitungsproduktes auf einem fahrzeugseitigen Info- tainment-System ausgeführt werden, während ein weiterer Bestandteil beispielsweise auf einem fahrzeugseitigen Steuergerät oder auf einer Komponente des Kombiinstrumentes ausgeführt werden. Wieder andere Bestandteile können auf mobilen Geräten wie etwa Mobiltelefonen, tragbaren Computern oder auch am Körper getragenen Geräten mit Computern (wie beispielsweise compu- terisierte Uhren, auch „Smartwatch" genannt) ausgeführt werden. In diesem beispielhaften Ausführungsbeispiel ermöglicht ein erfindungsgemäßes Verfahren einem oder mehreren Entwicklern, welche ein solches Datenverarbeitungsprogramm herstellen, Erleichterung, indem auch umfangreiche Datensammlungen, welche auch problemfeidspezifische Lösungen - etwa in Form von Syntax - enthalten, mittels eines erfindungsgemäßen Verfahrens auf Übereinstimmungen abzugleichen und im weiteren Verlauf Quelltext zu erstellen. Es gibt verschiedene, unterschiedliche Backus-Naur-Formen .
Somit ist es beispielsweise möglich, ein und dieselbe Syntax in unterschiedlichen Notationen von unterschiedlichen
Backus-Naur-Formen anzugeben. In einer beispielhaften Ausführungsform wird in Abhängigkeit von dem technischen Hin- tergrund der Eingabe von Informationen, beispielsweis in Form eines technischen Feldes oder einer bestimmten Expertise, eine Auswahl einer Backus-Naur-Form getroffen.
In einer weiteren beispielhaften Ausführungsform ist es auch möglich, zusätzlich zur Eingabe von Informationen auch ein technisches Feld oder ein Anwendungsfeld anzugeben. Es ist dann beispielsweise möglich, aus dem Ergebnis des Abgleichs nur passende Übereinstimmungen zur weiteren Verarbeitung auszuwählen . In einer beispielhaften Ausführungsform ist die Wahl der
Backus-Naur-Formen von den konkreten Programmiersprachen, deren Syntax der zu generierende Quelltext aufweisen soll, abhängig. In diesem Fall werden also bestimmte Backus-Naur-Formen bestimmten Programmiersprachen zugeordnet.
In einer beispielhaften Ausführungsform ist ein erfindungsgemäßes Verfahren oder System in der Art eines Werkzeuges Teil einer Werkzeugsammlung zur Entwicklung von Datenverarbeitungsprogrammen .
In einer beispielhaften Ausführungsform ist ein erfindungs- gemäßes Verfahren oder System Teil eines Rahmenwerks zur mo- dularen Entwicklung von Datenverarbeitungsprogrammen oder wird mit einem solchen zur Verfügung gestellt.
Bei einer beispielhaften Ausführungsform eines erfindungsge- mäßen Verfahrens erfolgt in einem zusätzlichen Verfahrensschritt nach der Eingabe eine Ausgabe von wählbaren zusätzlichen Optionen, wobei die Optionen zumindest die Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst. In Abhängigkeit von der ausgewählten Option entscheidet sich dann, wie das Verfahren weiter ausgeführt wird.
Bei einer besonders vorteilhaften Ausführungsform eines Ver- fahrens gemäß der Erfindung wird nach dem Abgleich in einem zusätzlichen Arbeitsschritt das Ergebnis des Abgleichs aus¬ gegeben. Dadurch wird besonders vorteilhaft ermöglicht, un¬ mittelbar Einsicht in das Ergebnis des Abgleichs zu gewähren, bevor es in folgenden Schritten weiterverarbeitet wird.
In einer besonders vorteilhaften Weiterbildung eines Verfahrens gemäß der Erfindung, bei dem nach dem Abgleich in einem zusätzlichen Arbeitsschritt das Ergebnis des Abgleichs ausgegeben wird, wird das Ergebnis des Abgleichs in der sprachlichen Form ausgegeben, in der es in der Datensammlung vorliegt. Eine derartige Weiterbildung des Verfahrens zur Verarbeitung von Daten ermöglicht besonders vorteilhaft direkten und ungefil¬ terten Einblick in das Ergebnis und gibt somit die relevanten Stellen in der Datensammlung weiter.
In einer besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung wird das Ergebnis des Abgleichs in normalsprachlicher Textform ausgegeben. Besondere Vorteile dieser Ausführungsform liegen sowohl in der unmittelbar hohen Lesbarkeit für Menschen als auch in einfacher Weitergabe an andere Datenverarbeitungsmittel.
Bei einer weiteren besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung erfolgt die Eingabe in Textform oder als akustische Spracheingabe. Dadurch können besonders vorteilhaft sowohl gewohnte Eingabegeräte wie Tastaturen verwendet werden als auch übermittelter Text verarbeitet werden und zugleich ist eine akustische Eingabe ohne weitere Einga¬ begeräte möglich.
Bei einer anderen besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung erfolgt die Eingabe in natürlicher Sprache, in Umgangssprache oder in einer formalen Notation. Besondere Vorteile liegen hier bei der Flexibilität des Ver¬ fahrens, verschiedene Sprachformen verarbeiten zu können. Es ermöglicht, bereits in formaler Notation vorliegende Eingaben, etwa aus bestehenden Bibliotheken oder Dokumentationen, einfließen zu lassen und zugleich beispielsweise kurzfristige Eingaben zu verarbeiten, welche nicht in formaler Notation sondern beispielsweise in Umgangssprache vorliegen. In einer besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung enthält die Eingabe eine Frage und/oder einen Befehl . Eine derartige Ausführungsform ermöglicht besonders vorteilhaft in effizienter Weise, mit dem Verfahren zur dialoggeführten technischen Unterstützung zusätzlich zu dem Generieren von Quelltext beispielsweise eine weitere Prob¬ lemstellung zu bearbeiten oder zu verknüpfen.
In einer besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung wird die aus der Eingabe extrahierte Bedeutung ausgegeben und die Korrektheit der Extraktion entweder bestätigt oder, im Fall von mangelnder Korrektheit, eine Schleife zur Verbesserung der Übereinstimmung zwischen Eingabe und extrahierter Bedeutung ausgeführt oder die Ausführung des Verfahrens springt zurück in den ersten Schritt. Eine derartige Ausführungsform ermöglicht in besonders vorteilhafter Weise eine zusätzliche Kontrolle, ob die Eingabe korrekt erkannt wurde, und Eingriffsmöglichkeiten, um die Übereinstimmung zwischen Eingabe und extrahierter Bedeutung zu verbessern. Somit wird beispielsweise ermöglicht, darauf hinzuwirken, dass die gewünschte Bedeutung extrahiert wird. In einer weiteren besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung weist die aus der Eingabe ex¬ trahierte Bedeutung die Form von Schlüsselwörtern auf. Hierdurch wird besonders vorteilhaft ein Abgleich anhand von Schlüs¬ selwörtern oder auch beispielsweise eine Klassifizierung von Datensätzen anhand von Schlüsselwörtern unterstützt.
Bei einer besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung wird anhand von vorbestimmten Kriterien das technische Feld identifiziert, welches aus einer vorbestimmten Menge technischer Felder die größte Übereinstimmung mit dem Begriffsspektrum, das aus der Eingabe extrahiert wurde, aufweist. Eine derartige Ausführungsform ermöglicht besonders vorteilhaft eine automatisierte Zuordnung von Eingaben zu bestimmten technischen Feldern und kann darüber hinaus beispielsweise zur Verbesserten Durchführung von Folgeprozessen herangezogen werden.
Bei einer weiteren besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung wird in Abhängigkeit von dem identifizierten technischen Feld die Auswahl der
Backus-Naur-Form für die Notation getroffen, in welcher das Ergebnis des Abgleichs vorliegt oder in welche das Ergebnis überführt wird. Eine derartige Ausführungsform ermöglicht in besonders vorteilhafter Weise das technische Feld, das die größte Übereinstimmung mit einer Eingabe aufweist, zu berücksichtigen. Darüber hinaus ermöglicht eine solche Ausführungsform auf besonders vorheilhafte Weise, ein erfindungsgemäßes Verfahren so zu gestalten, dass es zugleich den besonderen Anforderungen verschiedener technischer Felder und somit potentiell verschiedener Nutzer zugleich in einem gemeinsamen Verfahren verwirklicht .
Bei einer überdies weiteren besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung erfolgt die Auswahl der zur Generierung von Quelltext verwendete Programmiersprache oder Programmiersprachen in Abhängigkeit des technischen Feldes mit der größten Übereinstimmung. Dadurch wird vorteilhafterweise ermöglicht, dass ohne eine weitere Spezi¬ fizierung die passenden Programmiersprachen ausgewählt werden.
In einer besonders vorteilhaften Ausführungsform eines Ver- fahrens gemäß der Erfindung erfolgt in einem zusätzlichen Verfahrensschritt nach der Eingabe von Informationen eine Ausgabe von wählbaren zusätzlichen Optionen, wobei die Optionen zumindest die Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst. Damit wird vorteilhafterweise ermöglicht, auch kompliziertere Problemstellung mit einer Eingabe und den zusätzlichen Optionen zu adressieren. In einer weiteren besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung sind die domänenspezifischen Sprachen und die Teile domänenspezifischer Sprachen in der Sammlung von Datensätzen in einer Form abgelegt, die eine kontextfreie und formal exakte Darstellung der domänenspezi- fischen Sprachen ermöglicht. Dadurch wird beispielsweise be¬ sonders vorteilhaft ermöglicht, die Ausdrücke in domänenspe¬ zifischer Sprache in der Datensammlung auf definierte Weise zu Interpretieren. Darüber hinaus ermöglicht eine derartige Ausführungsform in besonders vorteilhafter Weise, in allen Fällen Syntaxbäume aus den Ausdrücken in domänenspezifischer Sprache in der Datensammlung zu erstellen. In einer weiteren besonders vorteilhaften Weiterbildung eines Verfahrens gemäß der Erfindung sind die domänenspezifischen Sprachen und die Teile domänenspezifischer Sprachen in der Sammlung von Datensätzen in einer Form abgelegt, die eine kontextfreie und formal exakte Darstellung der domänenspezi¬ fischen Sprachen ermöglicht, und entweder alle Datensätze oder zumindest alle Datensätze, die ganz oder teilweise eine oder mehrere domänenspezifische Sprachen beinhalten, weisen eine vereinheitlichte Form auf. Dadurch lässt sich besonders vor- teilhaft ein erfindungsgemäßes Verfahren effizient gestalten oder es kann besonders schnell ablaufen.
Bei einer besonders vorteilhaften Ausführungsform eines Verfahrens gemäß der Erfindung weist die Ausgabe Quelltext oder Modelle oder Anweisungen oder hierarchisch strukturierte Daten in einem auszeichnungssprachlichen Format auf. Besondere Vorteile liegen hierbei darin, über Quelltext hinaus gehende Ausgaben zu erzeugen, welche auch beispielsweise Modelle sein können .
Eine besonders vorteilhaften Ausführungsform eines Datenverarbeitungssystems insbesondere zur Durchführung eines Ver¬ fahrens gemäß der Erfindung ist derart ausgebildet, dass es zusätzlich anhand des Begriffsspektrums, welches in der aus Eingabe extrahierten Bedeutung enthalten ist, nach einem vorbestimmten Bewertungsschema eine oder mehrere
Backus-Naur-Formen aus dem Datenspeicher für die Generierung von Quelltext im Quelltext-Generator auswählt. Besonders vor¬ teilhaft ist dabei, dass auf festgelegte Weise eine automa- tisierte Auswahl der zu verwendenden Backus-Naur-Formen erfolgt.
Bei einer weiteren besonders vorteilhaften Ausführungsform eines Datenverarbeitungssystems insbesondere zur Durchführung eines Verfahrens gemäß der Erfindung ist das Dialogsystem so geartet, dass es akustische Spracheingaben und textuelle Spracheingabe verarbeiten kann. Dadurch wird besonders vorteilhaft ermöglicht, die jeweils günstigere Eingabeform zu verwenden. In einer weiteren besonders vorteilhaften Ausführungsform eines Datenverarbeitungssystems insbesondere zur Durchführung eines Verfahrens gemäß der Erfindung ist das Dialogsystem so geartet, dass es aus Eingaben in natürlicher Sprache, Umgangssprache und formaler Sprache die Bedeutung extrahiert. Damit wird besonders vorteilhaft ermöglicht, flexibel mit Spracheingaben ver- schiedentlicher Art mit stärker oder weniger stark formalisierter Sprache verwenden zu können. Figurenbeschreibung
Die Erfindung wird nachfolgend anhand der Figuren der Zeichnung näher erläutert, wobei gleiche oder ähnliche Elemente mit denselben Bezugszeichen versehen sind. Es zeigt:
Figur 1 ein AblaufSchema eines Verfahrens zur Verarbeitung von
Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen,
Figur 2 ein AblaufSchema eines Verfahrens zur Verarbeitung von
Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem nach dem Abgleich in einem zusätzlichen Arbeitsschritt das Ergebnis des Abgleichs ausgegeben wird,
Figur 3 ein AblaufSchema eines Verfahrens zur Verarbeitung von
Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem die aus der Eingabe extrahierte Bedeutung aus¬ gegeben wird und wobei die Korrektheit der Extraktion entweder bestätigt wird oder, im Fall von mangelnder
Korrektheit, eine Schleife zur Verbesserung der Übereinstimmung zwischen Eingabe und extrahierter Bedeutung ausgeführt wird oder die Ausführung des Verfahrens zurück in den ersten Schritt springt,
Figur 4 ein AblaufSchema eines Verfahrens zur Verarbeitung von
Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem in einem zusätzlichen Verfahrensschritt nach der Eingabe eine Ausgabe von wählbaren zusätzlichen Optionen erfolgt, wobei die Optionen zumindest die
Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst.
Figur 1 zeigt in einem AblaufSchema eine beispielhafte Ausführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen. Dabei erfolgt zunächst eine Eingabe von Informationen 110. Den nächsten Schritt bildet die Extraktion von Bedeutung aus der Eingabe 120. Darauf folgt ein Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domä¬ nenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt 135 werden. Daran schließt sich die Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs 140 an. Im nächsten Schritt erfolgt die Generierung von Quelltext 150, welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen und schließlich wird der generierte Quelltext ausgegeben 160.
Figur 2 zeigt in einem AblaufSchema eine beispielhafte Ausführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem bei nach dem Abgleich in einem zusätzlichen Arbeitsschritt das Ergebnis des Abgleichs ausgegeben wird. Dabei erfolgt zunächst eine Eingabe von Informationen 110. Den nächsten Schritt bildet die Extraktion von Bedeutung aus der Eingabe 120. Darauf folgt ein Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domänenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer
Backus-Naur-Form vorliegen oder in eine Notation einer
Backus-Naur-Form überführt 135 werden . Nach dem Abgleich 130 wird in einem zusätzlichen Arbeitsschritt 132 das Ergebnis des Abgleichs ausgegeben. Daran schließt sich die Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs 140 an. Im nächsten Schritt erfolgt die Generierung von Quelltext 150 , welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen und schließlich wird der generierte Quelltext ausgegeben 160. Figur 3 zeigt in einem AblaufSchema eine beispielhafte Ausführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem die aus der Eingabe extrahierte Bedeutung ausgegeben wird und wobei die Korrektheit der Extraktion entweder bestätigt wird oder, im Fall von mangelnder Korrektheit, eine Schleife zur Verbesserung der Übereinstimmung zwischen Eingabe und extrahierter Bedeutung ausgeführt wird oder die Ausführung des Verfahrens zurück in den ersten Schritt springt. Dabei erfolgt zunächst eine Eingabe von Informationen 110. Den nächsten Schritt bildet die Extraktion von Bedeutung aus der Eingabe 120. Hier wird die aus der Eingabe extrahierte Bedeutung ausgegeben 121. Wird die Korrektheit der Extraktion bestätigt 122, setzt sich das Verfahren mit dem Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130 fort. Im Fall von mangelnder Korrektheit 122 der Extraktion verzweigt sich das Verfahren wiederum: Entweder wird eine Schleife zur Verbesserung der Übereinstimmung 127 zwischen Eingabe und extrahierter Bedeutung ausgeführt oder, alternativ 125 zur Ausführung der Schleife zur Verbesserung, das Verfahren springt zurück in den ersten Schritt, in dem die Eingabe von Informationen 110 erfolgt und das Verfahren sozusagen von Neuem beginnt. Dann werden die Schritte Extraktion von Bedeutung 120, Ausgabe der extrahierten Bedeutung 121 und Überprüfung der Korrektheit 122 der Extraktion erneut durchlaufen. Wird die Schleife zur Verbesserung der Übereinstimmung 127 ausgeführt, so folgt in deren Verlauf einmal oder mehrmals das erneute
Durchlaufen der Schritte Extraktion von Bedeutung 120, Ausgabe der extrahierten Bedeutung 121 und Überprüfung der Korrektheit 122. In allen Fällen folgt auf die Bestätigung der Korrektheit 122 der Extraktion ein Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domä¬ nenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt 135 werden. Daran schließt sich die Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs 140 an. Im nächsten Schritt erfolgt die Generierung von Quelltext 150, welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen und schließlich wird der generierte Quelltext ausgegeben 160.
Figur 4 zeigt in einem AblaufSchema eine beispielhafte Ausführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, bei dem in einem zusätzlichen Verfahrensschritt nach der Eingabe eine Ausgabe von wählbaren zusätzlichen Optionen erfolgt, wobei die Optionen zumindest die Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst.
Dabei erfolgt zunächst eine Eingabe von Informationen 110. Den nächsten Schritt bildet die Extraktion von Bedeutung aus der Eingabe 120. Es erfolgt dann in einem zusätzlichen Verfahrensschritt 128 eine Ausgabe von wählbaren zusätzlichen Op¬ tionen. Die Optionen umfassen dabei zumindest die Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann. Darauf folgt ein Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, und wobei die Anteile der Datensätze, welche in Form von domänenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer
Backus-Naur-Form vorliegen oder in eine Notation einer
Backus-Naur-Form überführt 135 werden. Daran schließt sich die Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs 140 an. Im nächsten Schritt erfolgt die Generierung von Quelltext 150, welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen und schließlich wird der generierte Quelltext ausgegeben 160.
Ein Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, wie es beispielhaft in Figur 1 gezeigt ist, weist mindestens folgende Arbeitsschritte, nämlich
a. Eingabe von Informationen 110,
b. Extraktion von Bedeutung aus der Eingabe 120, c. Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen 130, wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspe¬ zifischen Sprachen aufweist,
1. und wobei die Anteile der Datensätze, welche in rm von domänenspezifischer Sprache vorliegen entweder bereits in einer Notation einer
Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt 135 werden,
Erstellung von einem oder mehreren Syntaxbäumen basierend auf dem Ergebnis des Abgleichs 140,
Generierung von Quelltext 150, welcher die Syntax einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen,
f. Ausgabe des generierten Quelltextes 160.
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 2 gezeigt ist, wird nach dem Abgleich 130 in einem zusätzlichen Arbeitsschritt 132 das Ergebnis des Abgleichs ausgegeben.
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 2 gezeigt ist, wird das Ergebnis des Abgleichs 130 in der sprachlichen Form ausgegeben, in der es in der Datensammlung vorliegt.
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 2 gezeigt ist, wird das Ergebnis des Abgleichs 130 in normalsprachlicher Textform ausgegeben.
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, erfolgt die Eingabe 110 in Textform oder als akustische Spracheingabe. In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, erfolgt die Eingabe 110 in natürlicher Sprache, in Umgangssprache oder in einer formalen Notation.
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, enthält die Eingabe 110 eine Frage und/oder einen Befehl. In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 3 gezeigt ist, wird die aus der Eingabe extrahierte Bedeutung ausgegeben 121 und die Korrektheit der Extraktion entweder bestätigt 122 wird oder, im Fall von mangelnder Korrektheit, eine Schleife zur Verbesserung der Übereinstimmung zwischen Eingabe und extrahierter Bedeutung 127 ausgeführt wird oder die Ausführung des Verfahrens springt zurück in den ersten Schritt 110.
Bei einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, weist die aus der Eingabe extrahierte Bedeutung die Form von Schlüsselwörtern auf.
Bei einer Variante eines Verfahrens zur Verarbeitung von Daten wird anhand von vorbestimmten Kriterien das technische Feld identifiziert, welches aus einer vorbestimmten Menge technischer Felder die größte Übereinstimmung mit dem Begriffsspektrum, das aus der Eingabe extrahiert wurde, aufweist (nicht dargestellt) .
Bei einer Variante eines Verfahrens zur Verarbeitung von Daten wird in Abhängigkeit von dem identifizierten technischen Feld die Auswahl der Backus-Naur-Form für die Notation getroffen, in welcher das Ergebnis des Abgleichs vorliegt oder in welche das Ergebnis überführt wird (nicht dargestellt) . Bei einer Variante eines Verfahrens zur Verarbeitung von Daten erfolgt die Auswahl der zur Generierung von Quelltext verwendete Programmiersprache oder Programmiersprachen in Abhängigkeit des technischen Feldes mit der größten Übereinstimmung (nicht dargestellt) .
In einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 4 gezeigt ist, erfolgt in einem zusätzlichen Verfahrensschritt 128 nach der Eingabe 110 eine Ausgabe von wählbaren zusätzlichen Optionen, wobei die Optionen zumindest die Verknüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst.
Bei einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, sind die domä¬ nenspezifischen Sprachen und die Teile domänenspezifischer Sprachen in der Sammlung von Datensätzen in einer Form abgelegt, die eine kontextfreie und formal exakte Darstellung der do¬ mänenspezifischen Sprachen ermöglicht.
Bei einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, weisen entweder alle Datensätze oder zumindest alle Datensätze, die ganz oder teilweise eine oder mehrere domänenspezifische Sprachen be¬ inhalten, eine vereinheitlichte Form auf. Bei einer Variante eines Verfahrens zur Verarbeitung von Daten, wie es beispielhaft in Figur 1 gezeigt ist, weist die Ausgabe Quelltext oder Modelle oder Anweisungen oder hierarchisch strukturierte Daten in einem auszeichnungssprachlichen Format auf .
Ein Datenverarbeitungssystem insbesondere zur Durchführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen (nicht dargestellt) , weist zumindest folgende Bestandteile auf, nämlich : g. Ein Dialogsystem, welches zumindest Eingaben ver- arbeitet, eine Bedeutung aus der jeweiligen Eingabe extrahiert, einen Datenspeicher auf Übereinstimmungen zwischen extrahierten Bedeutungen und Einträgen im Datenspeicher durchsucht und das jeweilige Ergebnis der Durchsuchung ausgibt,
h. zumindest einen Datenspeicher oder Teilbereich eines Datenspeichers, welcher eine Sammlung von Datensätzen aufweist, welche zumindest einen oder mehrere Da- tensätze aufweist, welche/r zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, ein oder mehrere Quelltext-Generatoren, welche von Dialogsystem Daten erhalten und daraus Quelltext generieren .
Eine Variante eines Datenverarbeitungssystems ist derart ausgebildet, dass es zusätzlich anhand des Begriffsspektrums, welches in der aus Eingabe extrahierten Bedeutung enthalten ist, nach einem vorbestimmten Bewertungsschema eine oder mehrere Backus-Naur-Formen aus dem Datenspeicher für die Generierung von Quelltext im Quelltext-Generator auswählt (nicht dargestellt) .
Bei einer Variante eines Datenverarbeitungssystems ist das Dialogsystem so geartet, dass es akustische Spracheingaben und textuelle Spracheingabe verarbeiten kann (nicht dargestellt) .
Bei einer Variante eines Datenverarbeitungssystems ist das Dialogsystem so geartet, dass es aus Eingaben in natürlicher Sprache, Umgangssprache und formaler Sprache die Bedeutung extrahiert (nicht dargestellt) .

Claims

Patentansprüche Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen aufweisend mindestens folgende Arbeits¬ schritte, nämlich: a. Eingabe von Informationen (110), b. Extraktion von Bedeutung aus der Eingabe (120), c. Abgleich der aus der Eingabe extrahierten Bedeutung mit einer Sammlung von Datensätzen auf Übereinstimmungen (130), wobei zumindest ein Datensatz zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist,
1. und wobei die Anteile der Datensätze, welche in Form von domänenspezifischer Sprache vorliegen, entweder bereits in einer Notation einer
Backus-Naur-Form vorliegen oder in eine Notation einer Backus-Naur-Form überführt (135) werden, d. Erstellung von einem oder mehreren Syntaxbäumen
basierend auf dem Ergebnis des Abgleichs (140), e. Generierung von Quelltext (150), welcher die Syntax von einer oder, abschnittsweise unterteilt, mehreren Programmiersprachen aufweist, aus dem oder den Syntaxbäumen,
f. Ausgabe des generierten Quelltextes (160) .
Verfahren nach Anspruch 1, wobei nach dem Abgleich (130) in einem zusätzlichen Arbeitsschritt (132) das Ergebnis des Abgleichs ausgegeben wird.
Verfahren nach Anspruch 2, wobei das Ergebnis des Abgleichs (130) in der sprachlichen Form ausgegeben wird, in der es in der Datensammlung vorliegt. Verfahren nach Anspruch 2 oder 3, wobei das Ergebnis des Abgleichs (130) in normalsprachlicher Textform ausgegeben wird .
Verfahren nach einem der vorangehenden Ansprüche, wobei die Eingabe (110) in Textform oder als akustische Spracheingabe erfolgt .
Verfahren nach einem der vorangehenden Ansprüche, wobei die Eingabe (110) in natürlicher Sprache, in Umgangssprache oder in einer formalen Notation erfolgt.
Verfahren nach einem der vorangehenden Ansprüche, wobei die Eingabe (110) eine Frage und/oder einen Befehl enthält.
Verfahren nach einem der vorangehenden Ansprüche, wobei die aus der Eingabe extrahierte Bedeutung ausgegeben (121) wird und wobei die Korrektheit der Extraktion entweder bestätigt (122) wird oder, im Fall von mangelnder Korrektheit, eine Schleife zur Verbesserung der Übereinstimmung zwischen Eingabe und extrahierter Bedeutung (127) ausgeführt wird oder die Ausführung des Verfahrens zurück in den ersten Schritt (110) springt.
Verfahren nach einem der vorangehenden Ansprüche, wobei die aus der Eingabe extrahierte Bedeutung die Form von Schlüsselwörtern aufweist.
Verfahren nach einem der vorangehenden Ansprüche, wobei anhand von vorbestimmten Kriterien das technische Feld identifiziert wird, welches aus einer vorbestimmten Menge technischer Felder die größte Übereinstimmung mit dem Begriffsspektrum, das aus der Eingabe extrahiert wurde, aufweist .
Verfahren nach Anspruch 10, wobei in Abhängigkeit von dem identifizierten technischen Feld die Auswahl der
Backus-Naur-Form für die Notation getroffen wird, in welcher das Ergebnis des Abgleichs vorliegt oder in welche das Ergebnis überführt wird.
Verfahren nach Anspruch 10, wobei die Auswahl der zur Generierung von Quelltext verwendete Programmiersprache oder Programmiersprachen in Abhängigkeit des technischen Feldes mit der größten Übereinstimmung erfolgt.
Verfahren nach einem der vorangehenden Ansprüche, wobei in einem zusätzlichen Verfahrensschritt (128) nach der Eingabe (110) eine Ausgabe von wählbaren zusätzlichen Optionen erfolgt, wobei die Optionen zumindest die Ver¬ knüpfung von Teilen der extrahierten Bedeutung miteinander oder die Auflistung von Parametern, anhand derer die ursprüngliche Eingabe genauer spezifiziert werden kann, umfasst .
Verfahren nach einem der vorangehenden Ansprüche, wobei die domänenspezifischen Sprachen und die Teile domänenspezifischer Sprachen in der Sammlung von Datensätzen in einer Form abgelegt sind, die eine kontextfreie und formal exakte Darstellung der domänenspezifischen Sprachen ermöglicht.
Verfahren nach Anspruch 14, wobei entweder alle Datensätze oder zumindest alle Datensätze, die ganz oder teilweise eine oder mehrere domänenspezifische Sprachen beinhalten, eine vereinheitlichte Form aufweisen.
Verfahren nach einem der vorangehenden Ansprüche, wobei die Ausgabe Quelltext oder Modelle oder Anweisungen oder hierarchisch strukturierte Daten in einem auszeichnungssprachlichen Format aufweist.
Datenverarbeitungssystem insbesondere zur Durchführung eines Verfahrens zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen, welches zumindest folgende Bestand¬ teile aufweist, nämlich:
a. Ein Dialogsystem, welches zumindest Eingaben verarbeitet, eine Bedeutung aus der jeweiligen Eingabe extrahiert, einen Datenspeicher auf Übereinstimmungen zwischen extrahierten Bedeutungen und Einträgen im Datenspeicher durchsucht und das jeweilige Ergebnis der Durchsuchung ausgibt,
b. zumindest einen Datenspeicher oder Teilbereich eines Datenspeichers, welcher eine Sammlung von Datensätzen aufweist, welche zumindest einen oder mehrere Da¬ tensätze aufweist, welche/r zumindest Teile von einer oder mehreren domänenspezifischen Sprachen aufweist, c. ein oder mehrere Quelltext-Generatoren, welche von dem Dialogsystem Daten erhalten und daraus Quelltext generieren .
Datenverarbeitungssystem nach dem vorigen Anspruch, wobei das Dialogsystem derart ausgebildet ist, dass es zusätzlich anhand des Begriffsspektrums, welches in der aus Eingabe extrahierten Bedeutung enthalten ist, nach einem vorbestimmten Bewertungsschema eine oder mehrere
Backus-Naur-Formen aus dem Datenspeicher für die Generierung von Quelltext im Quelltext-Generator auswählt.
Datenverarbeitungssystem nach Anspruch 17 oder 18, wobei das Dialogsystem so geartet ist, dass es akustische Spracheingaben und textuelle Spracheingabe verarbeiten kann .
Datenverarbeitungssystem nach einem Ansprüche 17 bis 19, wobei das Dialogsystem so geartet ist, dass es aus Eingaben in natürlicher Sprache, Umgangssprache und formaler Sprache die Bedeutung extrahiert.
PCT/EP2017/079485 2016-11-21 2017-11-16 Verfahren zur verarbeitung von daten zur dialoggeführten technischen unterstützung bei der erstellung oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen Ceased WO2018091594A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102016222953.2A DE102016222953A1 (de) 2016-11-21 2016-11-21 Verfahren zur Verarbeitung von Daten zur dialoggeführten technischen Unterstützung bei der Erstellung oder Veränderung von Datenverarbeitungsprogrammen oder Datenbankeinträgen
DE102016222953.2 2016-11-21

Publications (1)

Publication Number Publication Date
WO2018091594A1 true WO2018091594A1 (de) 2018-05-24

Family

ID=60484344

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2017/079485 Ceased WO2018091594A1 (de) 2016-11-21 2017-11-16 Verfahren zur verarbeitung von daten zur dialoggeführten technischen unterstützung bei der erstellung oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen

Country Status (2)

Country Link
DE (1) DE102016222953A1 (de)
WO (1) WO2018091594A1 (de)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7389234B2 (en) * 2000-07-20 2008-06-17 Microsoft Corporation Method and apparatus utilizing speech grammar rules written in a markup language

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAFIDHOH NISA'UL ET AL: "Source code generator for automating business rule implementation", 2015 INTERNATIONAL CONFERENCE ON DATA AND SOFTWARE ENGINEERING (ICODSE), IEEE, 25 November 2015 (2015-11-25), pages 219 - 224, XP032883765, ISBN: 978-1-4673-8428-5, [retrieved on 20160318], DOI: 10.1109/ICODSE.2015.7437001 *

Also Published As

Publication number Publication date
DE102016222953A1 (de) 2018-05-24

Similar Documents

Publication Publication Date Title
EP0802522B1 (de) Anordnung und Verfahren zur Aktionsermittlung, sowie Verwendung der Anordnung und des Verfahrens
EP1964110B1 (de) Verfahren zur ansteuerung von zumindest einer ersten und zweiten hintergrundapplikation über ein universelles sprachdialogsystem
DE69908047T2 (de) Verfahren und System zur automatischen Bestimmung von phonetischen Transkriptionen in Verbindung mit buchstabierten Wörtern
DE69814114T2 (de) Natürliche sprache verstehendes verfahren und verstehende vorrichung zur sprachsteuerung einer anwendung
DE202017106363U1 (de) Neuronale Antwort-auf-Frage-Netze
WO1998010413A1 (de) Sprachverarbeitungssystem und verfahren zur sprachverarbeitung
DE102018108947A1 (de) Vorrichtung zum Korrigieren eines Äußerungsfehlers eines Benutzers und Verfahren davon
DE112012001750T5 (de) Automatisierte Selbstbedienungs-Benutzerunterstützung auf der Grundlage der Ontologieanalyse
DE112014002819T5 (de) System und Verfahren zur Erkennung von Sprache
DE102007004684A1 (de) Verfahren und Datenverarbeitungssystem zum gesteuerten Abfragen strukturiert gespeicherter Informationen
EP3365891B1 (de) Sprachgesteuertes system
DE10110977C1 (de) Bereitstellen von Hilfe-Informationen in einem Sprachdialogsystem
EP3576084B1 (de) Effiziente dialoggestaltung
EP2815395A1 (de) Verfahren und einrichtung zur phonetisierung von textenthaltenden datensätzen
WO2018091662A1 (de) Verfahren zur erstellung und/oder veränderung einer sammlung von datensätzen für ein dialoggeführtes technisches hilfsmittel zur unterstützung bei der erstellung und/oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen
WO2018091594A1 (de) Verfahren zur verarbeitung von daten zur dialoggeführten technischen unterstützung bei der erstellung oder veränderung von datenverarbeitungsprogrammen oder datenbankeinträgen
DE112019005921T5 (de) Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
EP4040433B1 (de) Dynamische generierung einer kette von funktionsmodulen eines virtuellen assistenten
DE19930407A1 (de) Verfahren zur sprachbasierten Navigation in einem Kommunikationsnetzwerk und zur Implementierung einer Spracheingabemöglichkeit in private Informationseinheiten
WO2022179875A1 (de) Nlu-basierte systeme und verfahren zur erleichterten steuerung von industriellen assets
WO1989003083A1 (fr) Architecture de systemes pour systeme acoustique conversationnel homme/machine
DE102024130982B3 (de) Computerimplementiertes Verfahren zum Bereitstellen eines virtuellen Assistenten zum Steuern einer Fahrzeugfunktion und Fahrzeug
WO2020126217A1 (de) Verfahren, anordnung und verwendung zum erzeugen einer antwortausgabe in reaktion auf eine spracheingabeinformation
EP3665619B1 (de) Verfahren zum erzeugen einer sprachansage als rückmeldung zu einer handschriftlichen nutzereingabe sowie entsprechende bedienvorrichtung und kraftfahrzeug
EP1959430A2 (de) Verfahren zur automatischen Generierung von VoiceXML-sprachapplicationen aus Sprachdialogmodellen

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17805139

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17805139

Country of ref document: EP

Kind code of ref document: A1